Helpdesk migration

Migrate from Kayako to HubSpot Service Hub

Field-level mapping, validation, and rollback between Kayako and HubSpot Service Hub. We move data and schema; workflows are rebuilt natively in HubSpot Service Hub.

Kayako logo

Kayako

Source

HubSpot Service Hub

Destination

HubSpot Service Hub logo

Compatibility

67%

8 of 12

objects map 1:1 between Kayako and HubSpot Service Hub.

Complexity

CModerate

Timeline

3-5 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Moving from Kayako to HubSpot Service Hub consolidates customer support into the same platform as sales and marketing for teams already running HubSpot CRM. Kayako's data model centers on Conversations linked to Users and Organizations with unique API field keys for custom fields; HubSpot Service Hub uses Tickets linked to Contacts and Companies with HubSpot Properties that have display names rather than system-generated keys. We handle the field key discovery phase during scoping, map Kayako Organizations to HubSpot Companies, and map Kayako conversations to HubSpot Tickets with the agent-assignment and priority fields preserved. Knowledge Base articles migrate via the HubSpot Knowledge Base import API, and SLA metadata is captured and delivered as a written configuration map. Kayako automations, macros, and Harvey AI settings do not migrate as configuration; we deliver a written inventory for the customer's admin to rebuild in HubSpot Workflows. HubSpot's free tier covers basic ticketing, but SLA management, custom ticket pipelines, and shared inboxes require Service Hub Starter ($15/month per seat) or above.

Field-level fidelity

Every standard and custom field arrives verified.

Schema-aware mapping

AI proposes the map; you confirm before any record moves.

Relationships preserved

Parent–child, lookups, and ownership stay linked.

Full activity history

Calls, emails, meetings — with original timestamps.

Attachments & notes

Documents, uploads, and inline notes move with the record.

Why teams make this switch

Two sides of the same decision

Leaving

Kayako logo

Kayako

What's pushing teams away

  • High per-agent cost at $79/user/month on the Elite tier, with additional $1/AI-resolved-ticket charges making costs unpredictable as volume scales
  • Search functionality across tickets is described as primitive and insufficient for teams with large conversation histories
  • Onboarding ramp-up is longer than expected, with some teams reporting weeks before full productivity
  • Analytics dashboard lacks depth and intuitiveness compared to dedicated BI tools or competitors
  • Transition confusion between Kayako Classic and the new cloud product creates uncertainty for long-standing customers

Choosing

HubSpot Service Hub logo

HubSpot Service Hub

What's pulling them in

  • Unified CRM context means every support ticket links directly to the Contact and Company record without a separate integration
  • Free tier provides unlimited support seat access with basic ticketing and a shared inbox for small teams to validate fit before committing
  • Omnichannel routing consolidates email, live chat, Facebook Messenger, WhatsApp, and Instagram DM into one queue
  • Built-in customer success workspace gives health scores and portfolio views that other standalone helpdesks cannot match
  • AI-powered Breeze agent automates common resolutions and surfaces knowledge base articles without agent intervention

Object mapping

How Kayako objects map to HubSpot Service Hub

Each row shows how a Kayako object lands in HubSpot Service Hub, including any object-level transformations, lookup resolution, or schema-design dependencies.

Typical mapping — final map is confirmed during the sample migration step.

Kayako

Conversation

maps to

HubSpot Service Hub

Ticket

1:1
Fully supported

Kayako Conversations migrate to HubSpot Tickets as the primary ticket object. We map status (open/pending/resolved/closed) to HubSpot Ticket status, priority (low/normal/high/urgent) to HubSpot Ticket priority, and channel (email/chat/voice) to a custom HubSpot property for source channel preservation. Agent assignment migrates by resolving Kayako user email to HubSpot User. Customer association links to the HubSpot Contact resolved from Kayako User email.

Kayako

User

maps to

HubSpot Service Hub

Contact

1:1
Fully supported

Kayako Users with customer role map to HubSpot Contacts. We resolve by email as the dedupe key. Active and inactive status is preserved. Users with agent role map to HubSpot Users (agents) for ticket assignment rather than Contact records. If a customer email matches an existing HubSpot Contact, we merge rather than duplicate.

Kayako

User (agent role)

maps to

HubSpot Service Hub

User

1:1
Fully supported

Kayako agent and admin Users map to HubSpot User records by email match. We reconcile owner assignment in Kayako Conversations against the User table. Any Kayako agent without a matching HubSpot User is held in a reconciliation queue for the customer's admin to provision before Conversation import begins.

Kayako

Organization

maps to

HubSpot Service Hub

Company

1:1
Fully supported

Kayako Organizations map to HubSpot Companies. The Organization name becomes the Company name, and domain fields map to Company domain. We preserve the Organization-to-User linkage so that the migrated HubSpot Contact is associated with the correct Company via the Company association.

Kayako

Custom Field (Conversation)

maps to

HubSpot Service Hub

Custom Property (Ticket)

lossy
Fully supported

Kayako custom fields on Conversations require discovery of their system-generated API field keys during scoping. These keys are distinct from display names and must be used in API reads. We map each discovered key to a HubSpot Ticket custom property of equivalent type (text, number, date, dropdown). If a custom field was created after initial setup, we re-verify its key before migration.

Kayako

Custom Field (User)

maps to

HubSpot Service Hub

Custom Property (Contact)

lossy
Fully supported

Kayako custom fields on Users (customer properties beyond name and email) map to HubSpot Contact custom properties. We discover all User-level custom field keys during scoping and match them to HubSpot property types. Phone number formatting, country codes, and other locale-specific fields are standardized to HubSpot's expected format before import.

Kayako

Custom Field (Organization)

maps to

HubSpot Service Hub

Custom Property (Company)

lossy
Fully supported

Kayako Organization custom fields map to HubSpot Company custom properties. If the same custom field concept appears on both Organization and User in Kayako, we configure it separately on Company and Contact in HubSpot. The customer chooses whether to link them via HubSpot Company association or keep them independent.

Kayako

Knowledge Base Article

maps to

HubSpot Service Hub

Knowledge Base Article

1:1
Fully supported

Kayako KB articles migrate to HubSpot Knowledge Base using HubSpot's Knowledge Base import API. We preserve article content, category assignments, and publish status. Article attachments migrate as linked files; inline images require separate URL handling depending on whether they are hosted in Kayako or external URLs. View counts migrate as a custom HubSpot property for historical reference.

Kayako

KB Category

maps to

HubSpot Service Hub

Knowledge Base Category

1:1
Fully supported

Kayako KB categories migrate to HubSpot Knowledge Base categories with hierarchical structure preserved. If HubSpot already has categories with conflicting names, we apply a naming convention prefix to avoid collisions. Article-to-category assignments migrate as part of the article migration step.

Kayako

Tag

maps to

HubSpot Service Hub

Tag or Topic

lossy
Fully supported

Kayako Tags on Conversations migrate as HubSpot Ticket tags. We map them as label strings that agents can filter by in HubSpot. If the customer also uses HubSpot for marketing and wants tag-based segmentation, we map them to HubSpot Topics with TopicAssignment records. The customer chooses the tag strategy during scoping.

Kayako

Attachment (Conversation)

maps to

HubSpot Service Hub

File

1:1
Fully supported

Kayako conversation attachments require separate API calls per conversation for export. We handle file export by conversation ID, map to HubSpot File records linked to the corresponding Ticket via ContentDocumentLink. Size restrictions on Kayako API file retrieval are scoped during discovery; files exceeding limits are flagged for manual handling or alternative transfer.

Kayako

SLA Policy

maps to

HubSpot Service Hub

SLA Policy

1:1
Fully supported

Kayako SLA definitions (response time, resolution time, business hours, violation actions) are configuration objects we capture during discovery and deliver as a written SLA configuration map. HubSpot SLA policies are configured separately in Service Hub settings; the map documents the translation from Kayako SLA tier names and thresholds to HubSpot SLA policy values so the customer's admin can configure them post-migration.

Gotchas + challenges

What specifically takes care here

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 logo

Kayako gotchas

High

AI-per-resolution billing can multiply costs silently

Medium

Custom fields require API field keys, not field names

Medium

Kayako Classic and new Kayako use different export mechanisms

Medium

Outbound migration support is limited to export

Low

API rate limits are not publicly documented

HubSpot Service Hub logo

HubSpot Service Hub gotchas

High

Rate limits throttle large migration API calls

High

Side conversations and Zendesk macros have no HubSpot equivalent

High

HubSpot stores ticket history as fragmented engagement objects

Medium

Custom Objects require Enterprise tier in HubSpot

Medium

Ticket pipeline stage probability values do not export cleanly

Pair-specific challenges

  • Kayako custom fields use API field keys, not display names

    Kayako custom fields have system-generated API field keys that are distinct from their admin display names. API calls referencing the display name will silently fail to populate the field. We discover all custom field keys during the migration discovery phase and use them in all Kayako API reads. We then map each key to the corresponding HubSpot Ticket or Contact property. If custom fields were created after initial Kayako setup, we re-verify their keys before running any migration pass. This is the most common source of silent data loss in Kayako migrations.

  • HubSpot does not support CC in tickets natively

    HubSpot Service Hub does not include a CC function for tickets as a native feature. Kayako Conversations with multiple CC'd contacts require a workaround: we map CC'd contacts to a HubSpot Ticket custom property storing the CC email list, and the customer's admin decides whether to add them as secondary Contact associations or handle them via a shared inbox rule. This is a known HubSpot Service Hub limitation documented in migration checklists.

  • HubSpot Knowledge Base import requires pre-configuration

    HubSpot's Knowledge Base import API requires the Knowledge Base to be enabled and the category structure to exist in HubSpot before articles can be imported. We create the category hierarchy in HubSpot first using the Knowledge Base API, then import articles with their category assignments. If HubSpot already has KB articles or categories, naming conflicts require a resolution strategy before migration begins.

  • Inline images in Kayako conversations do not migrate cleanly

    Kayako inline images embedded in conversation messages are stored with Kayako-hosted URLs or as base64-encoded content. HubSpot tickets support file attachments but do not preserve inline image positioning in the same way. We extract inline images as separate file attachments linked to the ticket, and note that message formatting may require review in HubSpot after migration. A demo migration pass identifies which conversations have inline images before the full migration.

  • Kayako automations and Harvey AI settings do not migrate

    Kayako automation rules (triggers, conditions, routing actions) and Harvey AI configuration (self-learning mode, suggested response training, $1/AI-resolved-ticket settings) are configuration objects with no export mechanism. HubSpot has no equivalent per-resolution billing model. We deliver a written inventory of every active Kayako automation and AI setting with the nearest HubSpot Workflow equivalent documented so the customer's admin can rebuild post-migration.

Migration approach

Six steps for a successful Kayako to HubSpot Service Hub data migration

  1. Discovery and Kayako version confirmation

    We confirm whether the customer is running the current Kayako cloud platform or Kayako Classic, as these have different database schemas and different export mechanisms. We audit the Kayako portal for conversation count, user count, organization count, active custom fields (with API field keys discovered), KB article count and category structure, active SLA policies, and any attachment volume estimates. This output is a written migration scope document.

  2. HubSpot Service Hub configuration

    We configure the HubSpot Service Hub destination before migration begins. This includes enabling the Knowledge Base, creating the category hierarchy matching Kayako's structure, configuring ticket pipelines (with one pipeline per Kayako channel or SLA tier), setting up ticket status values mapped from Kayako conversation statuses, and creating custom properties for any Kayako custom fields that have no HubSpot standard equivalent.

  3. Field key discovery and custom property mapping

    We run a Kayako API discovery pass to retrieve all active custom field keys for Conversations, Users, and Organizations. We cross-reference each key against its display name and data type, then map it to a corresponding HubSpot property. Any custom fields created after initial setup are re-verified. The mapping document is reviewed by the customer's admin before migration begins.

  4. Demo migration and reconciliation

    We run a demo migration of a representative sample (typically 200-500 records per object type) into a HubSpot Sandbox or a non-production test workspace. The customer reconciles record counts, spot-checks field mapping for 25-50 conversations, and reviews KB article rendering. Any mapping corrections, custom field additions, or naming conflict resolutions happen at this stage. We do not proceed to full migration without sign-off on demo results.

  5. Full migration in dependency order

    We run production migration in record-dependency order: Organizations (to HubSpot Companies), Users as Contacts (with email dedupe), Users as agents (to HubSpot Users for assignment), Conversations (to Tickets with Company and Contact associations resolved, and agent assignment mapped via User email match), Knowledge Base categories (created first so articles can reference them), Knowledge Base articles, Tags (mapped to HubSpot Ticket tags), Attachments (as HubSpot Files linked to Tickets), and SLA metadata (delivered as configuration map). Each phase emits a row-count reconciliation report.

  6. Cutover, delta sync, and automation handoff

    We freeze Kayako writes during cutover, run a final delta migration of any conversations created or modified during the migration window, then hand over HubSpot Service Hub as the system of record. We deliver the automation inventory document covering Kayako automations and Harvey AI settings, with recommended HubSpot Workflow equivalents. We provide a one-week hypercare window for reconciliation issues raised during the first ticket handling cycle.

Platform deep dives

Context on both ends of the pair

Kayako logo

Kayako

Source

Strengths

  • AI summaries and suggested responses trained on the team's own ticket history for consistent tone
  • Multichannel inbox unifying email, live chat, WhatsApp, and voice under one agent interface
  • White-glove deployment model with dedicated implementation engineers and success managers
  • Self-learning mode continuously improves AI responses based on resolved tickets
  • Self-service Knowledge Base reduces inbound ticket volume when properly maintained

Weaknesses

  • Per-agent pricing plus $1/AI-resolved-ticket charge creates unpredictable total cost at scale
  • Search functionality across conversations is widely described as insufficient for large knowledge bases
  • Onboarding requires significant time investment before the team reaches full productivity
  • Legacy Kayako Classic exists as a separate product, creating confusion for long-standing customers
  • Analytics and reporting lack the depth and flexibility of dedicated BI or competitive help desk platforms
HubSpot Service Hub logo

HubSpot Service Hub

Destination

Strengths

  • Unified CRM object model means support context is always linked to sales and marketing data
  • Generous free tier with unlimited tickets and a shared inbox for small teams
  • Omnichannel inbox consolidates email, live chat, and major messaging platforms natively
  • Customer Success Workspace provides portfolio-level health scores without a separate tool
  • AI agent (Breeze) handles Tier-1 resolutions and knowledge base deflection automatically

Weaknesses

  • Per-seat pricing with mandatory onboarding fees inflates year-one cost significantly
  • Ticket history stored as fragmented engagement objects across APIs complicates export and migration
  • Custom Objects locked behind Enterprise tier limits portability for mid-market teams
  • Help desk depth—routing rules, SLA management, advanced reporting—trails dedicated tools like Zendesk
  • Setup and configuration requires real time investment; out-of-box defaults rarely fit existing workflows

Complexity grading

How hard is this migration?

Moderate Helpdesk migration. 3 of 7 objects need a mapping; the rest are 1:1.

C

Overall complexity

Moderate migration

Derived from compatibility, mapping clarity, API constraints, and data volume across Kayako and HubSpot Service Hub.

  • Object compatibility

    C

    3 of 7 objects need a mapping; the rest are 1:1.

  • Field mapping clarity

    C

    Field mapping is derived from defaults — final spec confirmed during the sample migration.

  • Timeline complexity

    B

    7-object category — typical timelines run 2–7 days end-to-end.

  • API constraints

    B

    Kayako: Not publicly documented — API returns HTTP 429 when exceeded.

  • Data volume sensitivity

    B

    Kayako doesn't expose a bulk API — REST + parallelization used for high-volume runs.

Estimator

Estimate your Kayako to HubSpot Service Hub migration cost

Rule-based pricing — no per-record fees, no manual quotes. Migrations over 2M records are scoped individually.

Step 1

What are you migrating?

Pick a category, then your source and destination platforms.

Category

FAQ

Frequently asked questions about Kayako to HubSpot Service Hub data migrations

Answers to the questions buyers ask most during Kayako to HubSpot Service Hub migration scoping. Not seeing yours? Book a call.

Can't find your answer?

Walk through your Kayako to HubSpot Service Hub migration with a real engineer — 30 minutes, free, written quote within 24 hours.

Book a free 30 minute consultation

Most migrations land between three and five weeks for accounts under 15,000 conversations, 5,000 organizations, and 500 KB articles with no complex custom field schemas. Migrations exceeding 50,000 conversations, multi-object custom field configurations, large KB archives, or organizations requiring SLA policy configuration mapping move to seven to twelve weeks because of Kayako API pagination, field key discovery across multiple object types, and HubSpot Knowledge Base import validation.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Kayako.
Land in HubSpot Service Hub, intact.

Tell us record counts and timeline. We'll come back with a written quote inside 1 business day — no commitment, no sales pitch.

Accuracy guarantee Rollback included Quote in 1 business day