Helpdesk migration

Migrate from Freshdesk to HubSpot Service Hub

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

Freshdesk logo

Freshdesk

Source

HubSpot Service Hub

Destination

HubSpot Service Hub logo

Compatibility

67%

8 of 12

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

Complexity

BStandard

Timeline

3-5 weeks

Rollback included Accuracy guarantee Field-level validation

Try the reverse

HubSpot Service Hub
Freshdesk

Overview

What this migration involves

Moving from Freshdesk to HubSpot Service Hub is a cross-platform migration that requires careful sequencing across two API rate-limit regimes and a fundamentally different object model. Freshdesk organizes support around tickets linked to requesters and companies; HubSpot Service Hub attaches tickets directly to CRM contacts and companies, giving agents full lifecycle context without switching tabs. We extract Freshdesk Tickets, Conversations, Contacts, Companies, Agents, SLA Policies, Products, Tags, Time Entries, and Satisfaction Ratings in dependency order, resolving the Freshdesk-to-HubSpot agent match and the contact-to-company lookup before any record lands in HubSpot. Freshdesk automations, macros, and SLA policies do not migrate as code; we deliver written inventories for the customer's admin to rebuild in HubSpot's workflow builder and SLA configuration. The Freshdesk free plan blocks API access entirely, so we require at least the Growth plan before scoping begins.

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

Freshdesk logo

Freshdesk

What's pushing teams away

  • AI features are priced per-session separately from the base plan, creating unpredictable monthly costs that catch teams off guard.
  • Performance degrades during high-volume periods with delayed ticket loading and occasional dropped chats or calls, per customer reports.
  • Duplicate tickets are a recurring complaint; teams with high volume find the deduplication logic insufficient.
  • Customization is limited compared to Zendesk and Salesforce Service Cloud, frustrating teams with complex workflow requirements.
  • Add-ons for features like live chat, advanced routing, and custom reporting stack up, making the true cost significantly higher than the base per-agent price.

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 Freshdesk objects map to HubSpot Service Hub

Each row shows how a Freshdesk 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.

Freshdesk

Ticket

maps to

HubSpot Service Hub

Ticket

1:1
Fully supported

Freshdesk Tickets map directly to HubSpot Tickets. Subject, status, priority, type, source/channel, and requester link migrate. Freshdesk's channel field (email, phone, chat, portal, tweet, Facebook, survey, forwarded email) is normalized to HubSpot channel values; non-standard Freshdesk channels default to 'custom' and the original channel name is preserved in a metadata field. Freshdesk ticket ID is stored in a custom HubSpot field for cross-reference.

Freshdesk

Contact (Requester)

maps to

HubSpot Service Hub

Contact

1:1
Fully supported

Freshdesk Contacts (requesters) map to HubSpot Contacts. Name, email, phone, job title, language, and company association migrate. Custom contact fields require pre-creation in HubSpot before migration; we create all custom field definitions in HubSpot during the schema phase and map values during transform. Freshdesk contact ID is preserved in a custom HubSpot field for audit. Contact import requires at least 10 existing tickets in Freshdesk for CSV method; we use the API to bypass this gate.

Freshdesk

Company

maps to

HubSpot Service Hub

Company

1:1
Fully supported

Freshdesk Companies map to HubSpot Companies. Company name, domain, industry, and custom fields migrate. The Freshdesk contact-company relationship is preserved as the HubSpot Contact-Company association at migration time. If a Freshdesk contact has no company, we create a stub Company record and link it. Companies are migrated before Contacts to satisfy the lookup dependency on insert.

Freshdesk

Agent

maps to

HubSpot Service Hub

User

1:1
Fully supported

Freshdesk Agents map to HubSpot User records. We match Freshdesk agents by email against existing HubSpot Users in the destination portal. Agents who are also ticket requesters are flagged during scoping to prevent circular references. Any Freshdesk agent without a matching HubSpot User is held in a reconciliation queue; the customer's HubSpot admin provisions missing Users before record migration resumes. Agent groups and roles are documented in the migration inventory for rebuild in HubSpot Teams and permission sets.

Freshdesk

Conversation (Ticket Replies and Notes)

maps to

HubSpot Service Hub

Conversation (Ticket Conversations)

1:1
Fully supported

Freshdesk Conversations (public replies, private notes, and incoming emails) map to HubSpot Ticket conversation records. Each conversation has author, timestamp, body text, and attachments. We preserve the full conversation thread ordering by timestamp. Private notes from Freshdesk migrate as internal ticket notes in HubSpot. Attachments migrate as HubSpot file attachments linked to the conversation record. HTML content is preserved and rendered in HubSpot's conversation view.

Freshdesk

SLA Policy

maps to

HubSpot Service Hub

SLA Configuration

lossy
Fully supported

Freshdesk SLA Policies (available on Pro and Enterprise) define response and resolution deadlines. We audit every SLA policy definition during scoping and deliver a written mapping to HubSpot's SLA configuration. HubSpot SLAs are set at the ticket pipeline level and reference business hours. SLA policy names and definitions are preserved in a migration inventory document; the customer's admin configures the equivalents in HubSpot after migration.

Freshdesk

Product

maps to

HubSpot Service Hub

Association to Contact or Custom Object

lossy
Fully supported

Freshdesk Products are items associated with tickets for asset tracking. HubSpot Service Hub does not have a native Product object for support use cases; we map Freshdesk product associations to a custom multi-select picklist on the Contact record or to a custom object depending on the customer's asset management requirements. Product name and description are preserved. The customer selects the mapping strategy during scoping.

Freshdesk

Tag

maps to

HubSpot Service Hub

Tag

1:1
Fully supported

Freshdesk tags are flat cross-object labels applied to tickets, contacts, and companies. Tags migrate as HubSpot Tags and are associated with the relevant Ticket, Contact, and Company records. Tag spelling and case are preserved exactly. If the tag count exceeds HubSpot's practical limit, we consolidate low-frequency tags into an 'other' catch-all tag and note the full list in the migration inventory.

Freshdesk

Time Entry

maps to

HubSpot Service Hub

Custom fields or Engagement records

lossy
Fully supported

Freshdesk time entries (billable or non-billable, with duration and notes) migrate as custom time-tracking fields on the HubSpot Ticket record or as line items in a custom object depending on whether the customer needs reporting on agent time. Billable flag migrates as a boolean custom field. We confirm the time-tracking strategy during scoping based on reporting requirements.

Freshdesk

Satisfaction Rating (CSAT)

maps to

HubSpot Service Hub

Custom fields or Survey response

1:1
Fully supported

Freshdesk CSAT surveys generate satisfaction ratings attached to tickets (satisfied/dissatisfied score plus comment). Ratings migrate as custom fields on the HubSpot Ticket record: csat_rating (number) and csat_comment (text). If the customer uses HubSpot's native surveys in Professional or Enterprise, we document the mapping as a reference for post-migration survey configuration.

Freshdesk

Collaborator

maps to

HubSpot Service Hub

Contact (view-only role)

1:1
Fully supported

Freshdesk Collaborators are view-only users added to tickets for context. Up to 5,000 are included in paid plans. Collaborators migrate as HubSpot Contacts with a collaborator flag custom field. We note the view-only nature in the migration inventory; HubSpot's permission model handles access via Teams and permission sets rather than a separate collaborator role.

Freshdesk

Custom Field (Ticket and Contact)

maps to

HubSpot Service Hub

Custom Property

lossy
Fully supported

Freshdesk custom ticket fields and custom contact fields require pre-creation in HubSpot Service Hub before any data import. We extract the full custom field definition (field name, type, options, required flag) during scoping and create matching HubSpot custom properties during the schema phase. Custom field API names are preserved where possible; HubSpot naming conventions are applied where they conflict. Custom field ordering in HubSpot ticket forms requires manual configuration by the customer's admin 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.

Freshdesk logo

Freshdesk gotchas

High

API access is blocked on the free plan

High

Per-minute rate limits are account-wide and endpoint-specific

Medium

Multi-channel source types do not map 1:1 to all destinations

Medium

Custom objects created in-product cannot be accessed by other apps

Low

Contact import requires at least 10 existing tickets in the account

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

  • Freshdesk free plan blocks all API access

    Freshdesk's free plan has 0 API calls per minute and no API access whatsoever. Any migration tooling that relies on the Freshdesk REST API will fail immediately on free-plan accounts. We require customers to upgrade to at least the Growth plan ($15/agent/month) before we can begin any programmatic export. We flag this during scoping and advise customers to upgrade early to avoid timeline delays. If the customer has existing paid plan contacts or companies with no paid agent seats, they may need to add at least one Growth agent seat for API access.

  • Freshdesk endpoint-specific rate limits require query-level throttling

    Freshdesk enforces rate limits account-wide with sub-limits per endpoint. The Growth plan allows 200 calls/min total but the Tickets List endpoint is limited to 20 calls/min. We throttle our export queries to the tightest sub-limit per plan tier and implement exponential backoff on 429 responses. We pre-map each migration to the customer's plan tier rate limits before starting any data pull. Pro plan allows 400 calls/min with 100 list/min; Enterprise allows 700 calls/min with 200 list/min. Migrations with high ticket volumes on Growth plan require more migration windows than Pro or Enterprise.

  • Multi-channel source types require normalization to HubSpot equivalents

    Freshdesk tickets can originate from phone, forwarded email, tweet, survey feedback, Facebook, portal, chat, and standard email. HubSpot Service Hub accepts email, chat, Facebook, Instagram, and phone via the Conversations Inbox. Non-standard Freshdesk channels (tweet, survey, forwarded email, portal) are normalized to 'custom' with the original channel name preserved in a metadata field. If the customer relies on channel routing rules based on these channel types, they must be rebuilt as HubSpot workflow conditions post-migration.

  • In-product Freshdesk custom objects cannot be accessed programmatically

    Freshdesk's custom objects created via the in-product experience (as opposed to the Custom Objects API) are isolated and cannot be accessed by external apps. We confirm during scoping whether any custom objects were created in-product or via API. In-product custom objects require manual CSV export by the customer and manual entry into HubSpot. API-created custom objects migrate using Freshdesk's custom objects REST endpoints with schema pre-creation in HubSpot's custom objects API.

  • Automations, macros, and SLA policies do not migrate as code

    Freshdesk automations (triggers, workflows, supervisor alerts), macros, and SLA policies are configuration-as-code that does not transfer to HubSpot's different automation model. HubSpot Service Hub uses its own workflow builder with property-triggered automations and SLA configuration. We deliver a written inventory of every Freshdesk automation and SLA policy with its trigger, conditions, actions, and a recommended HubSpot equivalent. The customer's admin rebuilds these in HubSpot post-migration. This rebuild work is outside standard migration scope.

Migration approach

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

  1. Discovery and plan tier verification

    We audit the source Freshdesk portal across plan tier (Free/Growth/Pro/Enterprise), active agents, ticket volume, conversation history, custom fields, SLA policies, Products, and any custom objects. We verify that the customer is on at least the Growth plan (required for API access). We confirm whether custom objects were created via API or in-product and adjust the extraction strategy accordingly. The discovery output is a written migration scope document listing all objects to migrate, their estimated counts, and the Freshdesk API credentials with plan-tier rate limit confirmation.

  2. Schema pre-creation in HubSpot Service Hub

    Before any data moves, we create all required HubSpot objects and properties: custom contact fields, custom ticket fields, custom objects (if applicable), and tag configurations. We also pre-map Freshdesk agents to HubSpot Users by email and flag any agent without a matching HubSpot User in a reconciliation queue for the customer's admin to provision. This step ensures that every insert during migration resolves its lookup dependencies without rejection.

  3. Demo migration and reconciliation

    We run a representative migration of up to 100 random tickets with associated contacts, companies, conversations, and attachments into a HubSpot Sandbox or the production portal (depending on customer preference). The customer's support manager reconciles the migrated sample against the Freshdesk source: record counts, conversation thread ordering, attachment presence, and field value accuracy. Any mapping corrections are documented and applied to the full migration configuration before the production migration begins.

  4. Production migration in dependency order

    We run production migration in strict dependency order: Companies (from Freshdesk) first, then Contacts (with company lookup resolved), then Agents (matched to HubSpot Users), then Tickets (with requester and company lookup resolved), then Conversations (linked to tickets), then Tags, Time Entries, and Satisfaction Ratings. Each phase emits a row-count reconciliation report before the next phase begins. We throttle export queries to Freshdesk's endpoint-specific rate limits with exponential backoff on 429 responses.

  5. Cutover and delta sync

    We freeze Freshdesk writes during cutover, run a final delta migration of any tickets, contacts, or conversations modified during the migration window, and enable HubSpot Service Hub as the system of record. The customer deactivates Freshdesk (or sets it to read-only if they are running in parallel during a transition period). We deliver the automation and SLA inventory document to the customer's admin team for post-migration rebuild in HubSpot's workflow builder.

  6. Post-migration support and handoff

    We support a one-week hypercare window where we resolve any data quality issues raised by the customer's support team: missing conversations, duplicate records, incorrect contact associations. We do not rebuild Freshdesk automations, macros, or SLA policies as HubSpot workflows inside the migration scope; that work is handled by the customer's admin or a HubSpot implementation partner. We provide a written handoff document summarizing the migration decisions, the object mapping summary, and the open items list.

Platform deep dives

Context on both ends of the pair

Freshdesk logo

Freshdesk

Source

Strengths

  • Generous free tier with no credit card required for 1-2 agents for 6 months.
  • Per-agent pricing model is transparent and scales linearly with team growth.
  • Freddy AI Copilot integrates assistance directly into the agent workspace without requiring separate tooling.
  • Multilingual help desk and customer portal serve global teams on Pro and Enterprise plans.
  • Shared inbox, threads, and tasks keep ticket context unified across multi-channel conversations.

Weaknesses

  • Freddy AI is a separate paid add-on charged per session, making AI costs unpredictable and hard to budget.
  • Performance issues including delayed loading and duplicate tickets are recurring user complaints during high-volume periods.
  • Customization is more limited than Zendesk, with fewer workflow options and reporting flexibility.
  • Add-ons for chat, advanced routing, and custom reporting are gated behind higher tiers or separate module purchases.
  • API access is completely disabled on the free plan, blocking any programmatic data export or migration tooling.
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?

Standard Helpdesk migration. 2 of 7 objects need a mapping; the rest are 1:1.

B

Overall complexity

Standard migration

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

  • Object compatibility

    B

    2 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

    Freshdesk: Account-wide per-minute limits: Free=0, Growth=200, Pro=400, Enterprise=700. Each endpoint has sub-limits (e.g., Tickets List capped at 20-200/min depending on plan)..

  • Data volume sensitivity

    B

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

Estimator

Estimate your Freshdesk 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 Freshdesk to HubSpot Service Hub data migrations

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

Can't find your answer?

Walk through your Freshdesk 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 tickets and 5,000 contacts with no custom objects or SLA policies. Migrations with custom objects, multiple Freshdesk portals, large conversation histories, SLA policy inventories, or Products-to-asset associations move to eight to twelve weeks because of Freshdesk API sub-limit throttling, parent-record resolution across linked objects, and the SLA and automation rebuild documentation scope.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Freshdesk.
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