Helpdesk migration
Field-level mapping, validation, and rollback between Kayako and Gorgias. We move data and schema; workflows are rebuilt natively in Gorgias.
Kayako
Source
Gorgias
Destination
Compatibility
9 of 12
objects map 1:1 between Kayako and Gorgias.
Complexity
CModerate
Timeline
2-4 weeks
Overview
Moving from Kayako to Gorgias is a migration from a general-purpose help desk into an e-commerce-native support platform. Kayako's Conversations map to Gorgias Tickets, Users to Agents, and Organizations to Customers, with each Organization preserving its link to the primary Customer record. The highest-signal difference between these two platforms is the data model assumption: Kayako is channel-agnostic, while Gorgias is purpose-built for Shopify and direct-to-consumer brands with order data, refunds, and cancellations surfaced directly inside the ticket. We flag which Kayako Automations and SLA policies require rebuild documentation, migrate the Knowledge Base with category hierarchy intact, and handle Kayako's API field-key discovery for all custom fields before any write occurs. Gorgias's ticket-based pricing means we model your expected monthly ticket volume against the plan tiers before migration, so the team is not surprised by seasonal cost spikes.
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.
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 Gorgias, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
Kayako
Conversations
Gorgias
Tickets
1:1Kayako Conversations map 1:1 to Gorgias Tickets. The Conversation status (open, pending, resolved, closed) maps to Gorgias Ticket status values. The assignee (User) resolves to a Gorgias Agent by email match. Channel metadata (email, chat, WhatsApp, voice) maps to Gorgias channel. We preserve the full message thread including internal notes as Ticket comments, with public/private visibility flags set appropriately. If the Kayako instance is using Kayako Classic, the conversation schema uses a different primary key format that we normalize before writing to Gorgias.
Kayako
Users
Gorgias
Agents
1:1Kayako Users (agents and admins with roles and team assignments) map to Gorgias Agents. We resolve by email match. If a Kayako User is inactive, we create the Gorgias Agent as inactive so that ticket attribution is preserved but the agent account is not live. Agent role mapping (admin vs agent) is documented during scoping and applied as Gorgias permission settings.
Kayako
Organizations
Gorgias
Customers
1:manyKayako Organizations (company-level records linking multiple Users and Conversations) map to Gorgias Customers. In Kayako, an Organization has multiple linked Users and multiple Conversations; in Gorgias, the primary Customer record holds the company-level data and additional linked users appear as Customer users under the same parent. We compute the primary Customer from the Organization record and create linked Customer users for the associated Kayako Users, preserving the Organization-to-User linkage for context.
Kayako
Custom Fields
Gorgias
Custom Fields
1:1Kayako custom fields exist on Conversations, Users, and Organizations. Each has a system-generated API field key distinct from the display name, and API writes that use the display name silently fail. We discover all custom field keys during scoping via the Kayako API, then create equivalent custom fields in Gorgias (which uses display-name keys with data types boolean, number, or text per the Gorgias developer API). We validate the data type mapping between platforms before writing any field values. Custom fields created after initial setup are re-verified before migration runs.
Kayako
Knowledge Base Articles
Gorgias
Help Center Articles
1:1Kayako KB Articles migrate to Gorgias Help Center articles with article content, author, status (published, draft), and timestamps preserved. Article attachments may require separate file handling and re-upload. The Gorgias Help Center uses a single-level category hierarchy; Kayako Articles with deep nested category paths are flattened to the nearest parent category with a note in the article body describing the original path.
Kayako
KB Categories
Gorgias
Help Center Categories
1:1Kayako hierarchical KB Categories migrate to Gorgias Help Center categories. Kayako supports multi-level category nesting (Category > Section > Article); Gorgias uses a single category level. We map the top-level Kayako category to a Gorgias category and preserve the section name as a prefix in the article title or as a tag. Naming conflicts (if the destination already has categories with the same name) are resolved by appending a numeric suffix.
Kayako
Tags
Gorgias
Tags
1:1Kayako Tags are string labels applied to Conversations. Gorgias uses string Tags on Tickets. We migrate Tags as plain string values, mapping directly without transformation. If Tags are used for categorization that might map to Gorgias Tags or to a multi-select custom property, the customer chooses the strategy during scoping.
Kayako
Attachments
Gorgias
Attachments
1:1Kayako Conversation attachments (files in messages) migrate to Gorgias Ticket attachments. The Kayako API requires separate per-conversation calls to retrieve attachments and may have size restrictions. We export attachments to temporary cloud storage, then attach them to the corresponding Gorgias Ticket message. Large file attachments may require the customer to re-upload or configure a cloud storage integration at the destination.
Kayako
SLA Policies
Gorgias
SLA Policies
lossyKayako SLA definitions (response time, resolution time, business hours) are configuration objects. We capture SLA metadata during discovery and deliver a written mapping document to the customer, which maps Kayako SLA tiers to Gorgias SLA policies. Each platform defines SLA tiers differently and there is no direct export mechanism; the customer's admin applies the mapping in Gorgias settings post-migration.
Kayako
Teams
Gorgias
Teams
1:1Kayako Teams (groupings of Users for routing) map to Gorgias Teams. We preserve the team name and the list of agents assigned to each team. Team-based routing rules that exist in Kayako are documented and delivered as a routing configuration plan for the customer to apply in Gorgias.
Kayako
Notes
Gorgias
Notes
1:1Kayako Notes attached to Conversations or Users migrate to Gorgias private Notes on the corresponding Ticket or Customer. Note authorship and timestamps are preserved.
Kayako
Automations
Gorgias
Macros (rebuild required)
lossyKayako Automations (trigger-based rules with conditions and multi-step actions) do not export as portable code. We do not migrate Automations as functional records. We deliver a written inventory of every active Kayako Automation with its trigger event, conditions, actions, and a recommended Gorgias Macro equivalent, so the customer's admin can rebuild them. The inventory includes the automation name, type (trigger, condition, action), and any delay or escalation logic.
| Kayako | Gorgias | Compatibility | |
|---|---|---|---|
| Conversations | Tickets1:1 | Fully supported | |
| Users | Agents1:1 | Fully supported | |
| Organizations | Customers1:many | Fully supported | |
| Custom Fields | Custom Fields1:1 | Mapping required | |
| Knowledge Base Articles | Help Center Articles1:1 | Fully supported | |
| KB Categories | Help Center Categories1:1 | Fully supported | |
| Tags | Tags1:1 | Mapping required | |
| Attachments | Attachments1:1 | Mapping required | |
| SLA Policies | SLA Policieslossy | Mapping required | |
| Teams | Teams1:1 | Fully supported | |
| Notes | Notes1:1 | Fully supported | |
| Automations | Macros (rebuild required)lossy | 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
Gorgias gotchas
AI Agent adds outcome-based fees on top of billable ticket costs
Overage billing for tickets scales nonlinearly
API rate limits restrict bulk export throughput
Agent data visibility cannot be restricted by role for GDPR use cases
Knowledge Base translations require separate API calls per locale
Pair-specific challenges
Migration approach
Version confirmation and discovery
We confirm whether the customer is on Kayako Classic or the new Kayako cloud product and apply the appropriate extraction strategy. We audit the source Kayako portal: conversation count, user count, organization count, custom field list with API field keys, Knowledge Base article count and category structure, active Tags, SLA policy definitions, and active Automations. We also capture the Gorgias account setup state, existing custom fields, and current plan tier so we can map the Kayako data into the correct destination schema.
Custom field key discovery and destination schema setup
We query the Kayako Custom Fields API to retrieve every custom field's system-generated API key alongside its display name and data type. We create equivalent custom fields in Gorgias for each Kayako custom field, using the appropriate Gorgias data type (boolean, number, or text). We verify the mapping between Kayako API field keys and Gorgias custom field keys before any record migration begins. This step is the most common source of silent data loss in Kayako migrations and we treat it as a prerequisite phase.
Organization-to-customer linkage design
We analyze the Kayako Organization records and their linked Users. We design the Gorgias customer structure: which Kayako Organization becomes the primary Customer record, which Kayako Users become linked Customer users under that primary, and which field holds the original Organization name for reference. We run this design by the customer's admin for validation before migration begins. This step prevents orphaned users and broken conversation attribution in Gorgias.
Test migration and reconciliation
We run a sample migration with a representative subset of data (typically 50-100 records per object type) into a test or staging Gorgias environment. The customer reconciles record counts, spot-checks field values, and validates that custom field data populated correctly. We correct any mapping errors identified during this phase before running the full production migration. This step typically takes one to three days and is included in all standard scopes.
Full production migration in dependency order
We run the production migration in dependency order: Gorgias custom fields (already created), Agents (resolved by email), Knowledge Base Categories, Knowledge Base Articles, Customers (primary records from Kayako Organizations), Customer Users (linked from Kayako Users), Tickets (Conversations with assignee resolved and custom fields populated via API keys), Tags, Attachments, and Notes. Each phase emits a row-count reconciliation report before the next phase begins. We use Kayako's API with adaptive polling and exponential backoff to avoid triggering throttling, since Kayako does not publish explicit rate limit thresholds.
Automation inventory and SLA mapping handoff
We deliver the written Automation inventory documenting every active Kayako Automation with its trigger, conditions, actions, and a recommended Gorgias Macro equivalent. We deliver the SLA mapping document that maps Kayako SLA tiers to Gorgias SLA policy settings. We do not rebuild Automations or SLA policies inside the migration scope; these are documented for the customer's admin to apply post-migration. We offer a separate scope for Macro creation if the customer wants FlitStack AI to build the replacement Macros in Gorgias.
Cutover, validation, and delta sync
We freeze Kayako writes during the cutover window, run a final delta migration to capture any records created or updated since the main migration phase, then redirect support channels to Gorgias. We validate record counts and spot-check field data in Gorgias against the source. We support a one-week hypercare window where we resolve any data quality issues identified by the customer's support team. We do not provide ongoing admin support or Gorgias training as part of the standard migration scope.
Platform deep dives
Kayako
Source
Strengths
Weaknesses
Gorgias
Destination
Strengths
Weaknesses
Complexity grading
Moderate Helpdesk migration. 3 of 7 objects need a mapping; the rest are 1:1.
Overall complexity
Moderate migration
Derived from compatibility, mapping clarity, API constraints, and data volume across Kayako and Gorgias.
Object compatibility
3 of 7 objects need a mapping; the rest are 1:1.
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 Gorgias migration scoping. Not seeing yours? Book a call.
Walk through your Kayako to Gorgias 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 Gorgias
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.