Helpdesk migration
Field-level mapping, validation, and rollback between Kayako and Salesforce Service Cloud. We move data and schema; workflows are rebuilt natively in Salesforce Service Cloud.
Kayako
Source
Salesforce Service Cloud
Destination
Compatibility
6 of 10
objects map 1:1 between Kayako and Salesforce Service Cloud.
Complexity
CModerate
Timeline
3-5 weeks
Overview
Moving from Kayako to Salesforce Service Cloud is a platform migration, not a record copy. Kayako uses a unified Conversation object that handles tickets, email threads, live chat, and voice in one stream; Salesforce Service Cloud separates Cases (the ticket equivalent) from Leads and wraps everything in the Salesforce CRM data model with Account-Contact relationships and Opportunity links. We resolve that structural difference at migration design time, splitting Kayako Conversations into typed Salesforce Cases with the original channel metadata preserved in custom fields. Custom fields on Kayako require their API field keys rather than display names for API writes, so we discover and map every custom field key during scoping. Knowledge Base articles migrate to Salesforce Knowledge with category hierarchy preserved. Automations, SLA policies, saved reports, Slack and WhatsApp integrations, and voice channel configurations do not migrate; we deliver a written inventory of these for the customer's admin to rebuild in Salesforce Flow and Entitlement Settings post-migration.
Every standard and custom field arrives verified.
AI proposes the map; you confirm before any record moves.
Parent–child, lookups, and ownership stay linked.
Calls, emails, meetings — with original timestamps.
Documents, uploads, and inline notes move with the record.
Source platform
Kayako platform overview
Scorecard, SWOT, gotchas, and pricing for Kayako.
Destination platform
Salesforce Service Cloud platform overview
Scorecard, SWOT, gotchas, and pricing for Salesforce Service Cloud.
Data migration guide
The complete Salesforce Service Cloud migration guide
Data model, import mechanisms, field mapping strategy, pitfalls, and cutover — by the engineers running it.
Destination checklist
Salesforce Service Cloud migration checklist
Pre- and post-cutover tasks for moving onto Salesforce Service Cloud.
Why teams make this switch
Leaving
What's pushing teams away
Choosing
What's pulling them in
Object mapping
Each row shows how a Kayako object lands in Salesforce Service Cloud, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
Kayako
Conversation
Salesforce Service Cloud
Case
1:1Kayako Conversations map 1:1 to Salesforce Case records. The Conversation status (open, pending, resolved, closed) maps to Salesforce Case Status with the mapping defined per status value during scoping. The original channel type (email, live chat, WhatsApp, voice) is preserved in a custom field conversation_channel__c (Text) because Salesforce's channel integration is configured separately via Omni-Channel after migration. We preserve message thread order by setting Case.CreatedDate to the first Kayako message timestamp and by inserting the full message history as EmailMessage records (for email channel) or CaseComment records (for other channels). All attachments on Conversation messages migrate as ContentDocument records linked via ContentDocumentLink to the parent Case.
Kayako
User
Salesforce Service Cloud
User
1:1Kayako Agents and Admins map directly to Salesforce User records by email match. We resolve Kayako user_role and team_assignment to Salesforce Role hierarchy and Queue membership. Any Kayako User referenced as a Conversation assignee without a matching Salesforce User goes to a reconciliation queue for the customer's admin to provision before Case import resumes.
Kayako
Organization
Salesforce Service Cloud
Account
1:1Kayako Organizations map to Salesforce Account records. The Organization domain field becomes the Account Website field. Account is created before any Case import so that the AccountId lookup on Case is satisfied at the moment of insert. If Kayako Organizations have multiple associated Users, those Users (mapped as Contacts) are attached to the Account post-creation.
Kayako
Custom Fields (Conversations, Users, Organizations)
Salesforce Service Cloud
Custom Fields (Case, User, Account)
lossyKayako custom fields carry a system-generated API field key distinct from the display name. API calls referencing the display name will silently fail to populate the field. We discover all custom field keys during the discovery phase, validate each key against the current Kayako API response schema, and map them to Salesforce custom fields (with __c suffix) of equivalent type (Text, Number, Picklist, Date, Checkbox). Custom fields are pre-created in Salesforce before any record migration begins. Any custom fields created after initial scoping are re-verified before production migration.
Kayako
Knowledge Base Article
Salesforce Service Cloud
KnowledgeArticleVersion
1:1Kayako KB articles map to Salesforce Knowledge with the article body, summary, and category assignments preserved. Articles are migrated in published status by default; draft articles migrate as Draft Salesforce Knowledge versions pending review. Article attachments require a separate pass through the Kayako file API and are uploaded as Salesforce Files attached to the article version.
Kayako
KB Category
Salesforce Service Cloud
Topic (or custom hierarchy object)
lossyKayako hierarchical KB categories are mapped to Salesforce Topics with parent-child relationships preserved via TopicAssignment records. If the destination org uses a custom KB category object (via Salesforce Knowledge advanced data category groups), we configure the mapping during scoping. Naming conflicts with existing Topics in the destination are resolved by appending a suffix or by using the KB article ID as a disambiguation key.
Kayako
Tag
Salesforce Service Cloud
Label or Multi-Select Picklist
lossyKayako tags (string labels applied to Conversations) migrate to Salesforce Labels (Text field) or to a Multi-Select Picklist depending on the tag volume and the customer's intended use. Tags used for routing and filtering are mapped to Multi-Select Picklist on Case. Tags used for reporting labels are mapped to a Text field. The customer chooses the tag strategy during scoping.
Kayako
Attachment (Conversation messages)
Salesforce Service Cloud
ContentDocument + ContentVersion + ContentDocumentLink
1:1Kayako file attachments on Conversation messages require per-conversation API calls to export. We download each attachment, upload it to Salesforce as ContentVersion linked to a ContentDocument record, and attach it to the parent Case via ContentDocumentLink. File size is validated against Salesforce limits (25 MB per file for standard attachments, 2 GB for Salesforce Files). Any attachments exceeding the limit are flagged for the customer's admin with a recommended alternative storage approach.
Kayako
SLA Policy
Salesforce Service Cloud
Entitlement Process + Milestone
lossyKayako SLA definitions (First Response Time, Resolution Time, Business Hours) are configuration objects captured as metadata. We map them to Salesforce Entitlement Processes and Milestones. Each Kayako SLA tier becomes an Entitlement Process in Salesforce with First Response and Resolution Time milestones. Note that Entitlement Processes in Salesforce require the Service Cloud Entitlement feature to be enabled in the destination org.
Kayako
Automations
Salesforce Service Cloud
Not migratable
1:1Kayako automation rules (triggers, conditions, and actions defined in the Kayako automations builder) do not export as structured code via API. We do not migrate them. We deliver a written inventory of every active Kayako automation with its trigger type, conditions, actions, and a recommended Salesforce Flow equivalent. The customer's Salesforce admin or a certified implementation partner rebuilds them post-migration.
| Kayako | Salesforce Service Cloud | Compatibility | |
|---|---|---|---|
| Conversation | Case1:1 | Fully supported | |
| User | User1:1 | Fully supported | |
| Organization | Account1:1 | Fully supported | |
| Custom Fields (Conversations, Users, Organizations) | Custom Fields (Case, User, Account)lossy | Fully supported | |
| Knowledge Base Article | KnowledgeArticleVersion1:1 | Fully supported | |
| KB Category | Topic (or custom hierarchy object)lossy | Fully supported | |
| Tag | Label or Multi-Select Picklistlossy | Fully supported | |
| Attachment (Conversation messages) | ContentDocument + ContentVersion + ContentDocumentLink1:1 | Fully supported | |
| SLA Policy | Entitlement Process + Milestonelossy | Fully supported | |
| Automations | Not migratable1:1 | Not supported |
Gotchas + challenges
Platform-specific issues from each side, plus the pair-specific challenges that don't show up on either platform's page on its own.
Kayako gotchas
AI-per-resolution billing can multiply costs silently
Custom fields require API field keys, not field names
Kayako Classic and new Kayako use different export mechanisms
Outbound migration support is limited to export
API rate limits are not publicly documented
Salesforce Service Cloud gotchas
Data Export 512MB file size cap breaks large org exports
API Daily Request Limits vary by license edition
No automatic data backup in base Salesforce
Picklist dependencies silently break records when unmapped
Workflow rules fire unexpectedly during data load
Pair-specific challenges
Migration approach
Discovery and version confirmation
We audit the source Kayako instance across plan tier (Lite/Pro/Elite/Enterprise), total Conversation count, message thread depth, User count, Organization count, custom field inventory with API keys, KB article count and category hierarchy, SLA policy definitions, and active automation rules. We also confirm whether the instance is Kayako Classic or the current cloud platform because the two have different extraction paths. The discovery output is a written migration scope document including the Conversation-to-Case mapping matrix, custom field key inventory, and SLA-to-Entitlement mapping plan.
Schema design and Salesforce feature enablement
We design the destination schema in Salesforce Service Cloud. This includes enabling Salesforce Knowledge (required for KB article migration), configuring Entitlement Processes for SLA mapping, creating custom fields on Case, Account, and Contact (with __c API names matched to Kayako custom field keys), creating Case Record Types if multiple Conversation types exist (e.g., support, billing, technical), and designing the Label or Multi-Select Picklist approach for Kayako tag migration. Schema is deployed via Salesforce metadata API into a Sandbox org first for validation before production migration.
Sandbox migration and reconciliation
We run a full migration into a Salesforce Sandbox using a representative data volume. The customer's support operations lead reconciles record counts (Cases in, Accounts in, Contacts in, KB articles in), spot-checks 25-50 random Cases against the source Kayako instance for field-level accuracy, and validates the SLA milestone calculations. Any mapping corrections and Salesforce validation rule blocks are resolved here before production migration begins.
Owner and user reconciliation
We extract every distinct Kayako User referenced as a Conversation assignee and match by email against the Salesforce destination org's User table. Any Kayako User without a matching Salesforce User goes to a reconciliation queue. The customer's Salesforce admin provisions missing Users before record migration resumes. Salesforce Service Cloud requires that Cases have an OwnerId set to a valid active or inactive User, so this step gates the Case import phase.
Production migration in dependency order
We run production migration in dependency order: Users (validated from Step 4), Accounts (from Kayako Organizations), Contacts (with AccountId resolved), Salesforce Knowledge Categories (for KB hierarchy), Salesforce Knowledge Articles, Case Record Types and Entitlement Processes, Cases (with AccountId and ContactId resolved, channel type preserved in custom fields), message threads and attachments (via per-Conversation API calls for attachments), SLA milestones, and Tags/Labels. Each phase emits a row-count reconciliation report before the next phase begins.
Cutover, delta capture, and automation rebuild handoff
We freeze Kayako writes during the cutover window, run a final delta migration of any Cases modified during migration, then enable Salesforce as the system of record. We deliver the Automation and SLA Inventory document to the customer's admin team with a Salesforce Flow rebuild recommendation for each automation rule and an Entitlement Process configuration guide for each SLA tier. We support a one-week hypercare window for reconciliation issues. We do not rebuild Kayako automations as Salesforce Flow inside the migration scope; that is a separate engagement.
Platform deep dives
Kayako
Source
Strengths
Weaknesses
Salesforce Service Cloud
Destination
Strengths
Weaknesses
Complexity grading
Moderate Helpdesk migration. 1 of 7 objects need a manual workaround.
Overall complexity
Moderate migration
Derived from compatibility, mapping clarity, API constraints, and data volume across Kayako and Salesforce Service Cloud.
Object compatibility
1 of 7 objects need a manual workaround.
Field mapping clarity
Field mapping is derived from defaults — final spec confirmed during the sample migration.
Timeline complexity
7-object category — typical timelines run 2–7 days end-to-end.
API constraints
Kayako: Not publicly documented — API returns HTTP 429 when exceeded.
Data volume sensitivity
Kayako doesn't expose a bulk API — REST + parallelization used for high-volume runs.
Estimator
Rule-based pricing — no per-record fees, no manual quotes. Migrations over 2M records are scoped individually.
Step 1
Pick a category, then your source and destination platforms.
Category
FAQ
Answers to the questions buyers ask most during Kayako to Salesforce Service Cloud migration scoping. Not seeing yours? Book a call.
Walk through your Kayako to Salesforce Service Cloud migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave Kayako
Other ways to arrive at Salesforce Service Cloud
Same-Helpdesk migrations
Ready when you are
Tell us record counts and timeline. We'll come back with a written quote inside 1 business day — no commitment, no sales pitch.