Helpdesk migration
Field-level mapping, validation, and rollback between Freshservice and HubSpot Service Hub. We move data and schema; workflows are rebuilt natively in HubSpot Service Hub.
Freshservice
Source
HubSpot Service Hub
Destination
Compatibility
9 of 14
objects map 1:1 between Freshservice and HubSpot Service Hub.
Complexity
BStandard
Timeline
4-8 weeks
Overview
Moving from Freshservice to HubSpot Service Hub is a shift from an ITIL-aligned ITSM platform to a CRM-embedded service hub. Freshservice structures work around Tickets, Agents, Requesters, Assets, Changes, Problems, and Releases with agent-based licensing. HubSpot Service Hub uses Contacts, Tickets, and Pipelines on a per-seat model with Breeze AI built into Professional and Enterprise. We migrate Tickets, Agents, Requesters, and Assets 1:1 through HubSpot's REST API. We flag Changes and Problems as objects without native HubSpot equivalents and document them as Custom Objects or text-archived records for your admin to rebuild. Freshservice's Service Catalog items and SLA Policies are documented for rebuild in HubSpot's Help Desk and SLA configuration. We do not migrate Automations, Workflows, or SLA Policy logic as code.
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
Freshservice platform overview
Scorecard, SWOT, gotchas, and pricing for Freshservice.
Destination platform
HubSpot Service Hub platform overview
Scorecard, SWOT, gotchas, and pricing for HubSpot Service Hub.
Data migration guide
The complete HubSpot Service Hub migration guide
Data model, import mechanisms, field mapping strategy, pitfalls, and cutover — by the engineers running it.
Destination checklist
HubSpot Service Hub migration checklist
Pre- and post-cutover tasks for moving onto HubSpot Service Hub.
Why teams make this switch
Leaving
What's pushing teams away
Choosing
What's pulling them in
Object mapping
Each row shows how a Freshservice 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.
Freshservice
Ticket
HubSpot Service Hub
Ticket
1:1Freshservice Tickets migrate to HubSpot Tickets via the HubSpot Tickets API. Subject, description, status, priority, type, group, and agent assignments map directly. Custom ticket fields migrate as HubSpot custom ticket properties. Freshservice's requester_id maps to HubSpot's contact_id through a pre-resolved contact lookup table. Ticket attachments migrate as HubSpot file attachments linked to the ticket.
Freshservice
Agent
HubSpot Service Hub
User
1:1Freshservice Agents (licensed users) map to HubSpot Users. We resolve by email address as the dedupe and match key. Role, group membership, and skill assignments are documented for rebuild in HubSpot's User roles and team structure. If a Freshservice Agent has no HubSpot User counterpart, they go to a provisioning queue for the admin to address before the user migration phase begins.
Freshservice
Requester
HubSpot Service Hub
Contact
1:1Freshservice Requesters (end users who submit tickets) map to HubSpot Contacts. We preserve first name, last name, email, phone, organization, and location. Freshservice's organization_id maps to HubSpot's company_id through a pre-built company lookup table. Requesters are free in Freshservice licensing but are counted as contacts in HubSpot's CRM.
Freshservice
Asset
HubSpot Service Hub
Custom Object: IT Asset
1:1Freshservice Assets (hardware, software, network items in the CMDB) map to a HubSpot Custom Object named IT Asset. All standard Freshservice asset fields (name, type, state, serial number, vendor, purchase date, cost) migrate as Custom Object properties. We pre-create the Custom Object schema in HubSpot before migration. Asset-to-Ticket associations are stored as a text property containing the related HubSpot ticket ID rather than a native association, because HubSpot does not support bi-directional lookups from Custom Objects to standard Tickets by default.
Freshservice
Change
HubSpot Service Hub
Custom Object: Change Request
lossyFreshservice Changes have no native HubSpot equivalent. We map Changes to a HubSpot Custom Object (Change Request) with fields for change type, risk level, impact, approvers, planned start/end dates, and associated CI. The approval workflow logic is documented for rebuild in HubSpot's Workflows (Automation) or a separate approval tool post-migration. This is a documented gap, not a code migration.
Freshservice
Problem
HubSpot Service Hub
Custom Object: Problem Record
lossyFreshservice Problems (root-cause tracking behind incidents) map to a HubSpot Custom Object (Problem Record). Problem description, status, priority, and linked incident ticket IDs migrate as custom properties. The Problem-to-Incident relationship is stored as a text field with comma-separated ticket IDs, as HubSpot does not support native many-to-many ticket linking. The customer's admin rebuilds this relationship logic in HubSpot's Workflows or a custom app post-migration.
Freshservice
Release
HubSpot Service Hub
Custom Object: Release Record
lossyFreshservice Releases group Changes and Assets into deployable units with scheduled dates and approval workflows. We map Releases to a HubSpot Custom Object (Release Record) with fields for planned date, status, associated Change Request IDs (text), and associated IT Asset IDs (text). The release approval workflow is documented for rebuild. Release-to-Change associations are preserved as text lookups rather than native relationships.
Freshservice
Service Catalog Item
HubSpot Service Hub
Help Desk (mapped to Knowledge Base + Tickets)
lossyFreshservice Service Catalog items with multi-step request forms and approval chains have no direct HubSpot equivalent. We document the full catalog item structure (form fields, approval rules, associated SLA policy) in a written catalog. The customer's admin rebuilds this as HubSpot Forms with Workflow approval chains. Request items submitted before migration are migrated as Tickets with the original catalog item name stored as a custom property.
Freshservice
SLA Policy
HubSpot Service Hub
SLA Configuration (documented)
lossyFreshservice SLA Policies define response and resolution time targets tied to ticket priority or type. We document SLA Policy assignments per ticket and deliver a written inventory mapping each Freshservice SLA Policy to a HubSpot SLA configuration for the admin to rebuild. SLA enforcement logic (automatic escalation, reminder actions) is not migrated as code; we describe the Freshservice SLA rules in detail for HubSpot recreation.
Freshservice
Solution (Knowledge Base)
HubSpot Service Hub
Knowledge Base Article
1:1Freshservice Solutions (knowledge base articles) migrate to HubSpot Knowledge Base articles. Article title, body content, categories, and status migrate. Article-to-ticket associations are stored as a custom property on the HubSpot article containing the related ticket IDs. Published status maps directly; draft articles migrate as drafts for review before publishing.
Freshservice
Survey
HubSpot Service Hub
Customer Feedback Survey
1:1Freshservice CSAT and CES surveys attached to tickets migrate to HubSpot Customer Feedback Surveys. Survey responses link to the migrated ticket via a custom property storing the original Freshservice ticket ID. Survey configuration (question text, response scale) migrates as HubSpot survey properties.
Freshservice
Location
HubSpot Service Hub
Location (HubSpot native)
1:1Freshservice Locations migrate as HubSpot Locations, used for routing and organizational context. Location-to-ticket assignments migrate as a custom ticket property rather than a native HubSpot association.
Freshservice
Department
HubSpot Service Hub
Team
1:1Freshservice Departments map to HubSpot Teams. We use department names as team names during migration. Agent-group assignments that used Freshservice department scoping are documented for rebuild in HubSpot's team-based routing configuration.
Freshservice
Custom Object
HubSpot Service Hub
Custom Object
1:1Freshservice Custom Object records (Forest and Enterprise plans) migrate to HubSpot Custom Objects of matching name. We pre-create the destination schema in HubSpot (including all custom properties and lookup fields to other Custom Objects). Note that Freshservice does not support Custom Object-to-native object associations; if the Freshservice custom object references a ticket or asset, we store the related record ID as a text field. HubSpot's lookup fields from Custom Objects to standard objects are supported on Professional and Enterprise.
| Freshservice | HubSpot Service Hub | Compatibility | |
|---|---|---|---|
| Ticket | Ticket1:1 | Fully supported | |
| Agent | User1:1 | Fully supported | |
| Requester | Contact1:1 | Fully supported | |
| Asset | Custom Object: IT Asset1:1 | Fully supported | |
| Change | Custom Object: Change Requestlossy | Fully supported | |
| Problem | Custom Object: Problem Recordlossy | Fully supported | |
| Release | Custom Object: Release Recordlossy | Fully supported | |
| Service Catalog Item | Help Desk (mapped to Knowledge Base + Tickets)lossy | Fully supported | |
| SLA Policy | SLA Configuration (documented)lossy | Fully supported | |
| Solution (Knowledge Base) | Knowledge Base Article1:1 | Fully supported | |
| Survey | Customer Feedback Survey1:1 | Fully supported | |
| Location | Location (HubSpot native)1:1 | Fully supported | |
| Department | Team1:1 | Fully supported | |
| Custom Object | Custom Object1:1 | Fully 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.
Freshservice gotchas
API rate limits vary by plan and must be accounted for during migration scoping
Agent-based vs requester-based licensing affects migration sizing
Custom Objects cannot define associations to native Freshservice objects
Child ticket reporting is limited in native Freshservice dashboards
HubSpot Service Hub gotchas
Rate limits throttle large migration API calls
Side conversations and Zendesk macros have no HubSpot equivalent
HubSpot stores ticket history as fragmented engagement objects
Custom Objects require Enterprise tier in HubSpot
Ticket pipeline stage probability values do not export cleanly
Pair-specific challenges
Migration approach
Discovery and plan scoping
We audit the Freshservice portal across plan tier, active agent count, requester volume, asset inventory size, and active ITIL records (Changes, Problems, Releases). We identify every Custom Object, Service Catalog item, SLA Policy, and survey configuration. We document the portal structure if multiple portals are in use. We pair this with a HubSpot Service Hub edition assessment (Starter $15/seat, Professional $100/seat, Enterprise $150/seat) based on the feature requirements uncovered. The discovery output is a written migration scope with record counts per object and a HubSpot edition recommendation.
Schema pre-build in HubSpot
We pre-create the destination schema in HubSpot before any data moves. This includes provisioning Custom Objects (IT Asset, Change Request, Problem Record, Release Record) with all required properties, provisioning Custom Objects for any Freshservice Custom Objects, creating HubSpot Teams mapped from Freshservice Departments, and documenting SLA Policy targets and escalation rules for rebuild. Schema is validated in HubSpot's sandbox or test account before production migration begins.
Requester and Agent provisioning
We extract every distinct Freshservice Requester (contact records) and Agent (user records) and map them to HubSpot Contacts and Users. Requesters resolve by email to HubSpot Contacts; Agents resolve by email to HubSpot Users. Freshservice Organizations map to HubSpot Companies for contact association. Any Agent without a matching HubSpot User goes to a provisioning queue for the admin to address. Agent-group and department assignments are documented for rebuild in HubSpot's User roles and team structure.
Production migration in dependency order
We run production migration in record-dependency order: Companies (from Freshservice Organizations), Contacts (with company_id resolved), Users (validated against HubSpot User table), Custom Objects (IT Assets, Change Requests, Problem Records, Release Records, Freshservice Custom Objects), Tickets (with contact_id, assigned_agent_id, and group_id resolved), Knowledge Base articles (Solutions), and Surveys. Each phase emits a row-count reconciliation report before the next phase begins. Attachments migrate during the ticket phase with file references preserved.
ITIL object documentation and SLA handoff
We deliver a written inventory of every Freshservice Change, Problem, and Release with its full configuration (type, risk level, approvers, associated records, approval workflow logic). We deliver a separate SLA Policy inventory with response and resolution targets per priority level, associated escalation rules, and recommended HubSpot SLA configuration equivalents. These documents are the handoff for your admin to rebuild ITSM logic and SLA enforcement in HubSpot Workflows. We do not rebuild them as part of the migration scope.
Cutover, delta migration, and automation rebuild handoff
We freeze Freshservice writes during cutover, run a final delta migration of any records created or modified during the migration window, then enable HubSpot as the system of record. We deliver the Automation and Workflow rebuild inventory (documented Freshservice automations, SLA escalation logic, and Service Catalog approval rules) for your admin to reconstruct in HubSpot Workflows. We support a one-week post-go-live window to resolve any data reconciliation issues raised by your team.
Platform deep dives
Freshservice
Source
Strengths
Weaknesses
HubSpot Service Hub
Destination
Strengths
Weaknesses
Complexity grading
Standard Helpdesk migration. 2 of 7 objects need a mapping; the rest are 1:1.
Overall complexity
Standard migration
Derived from compatibility, mapping clarity, API constraints, and data volume across Freshservice and HubSpot Service Hub.
Object compatibility
2 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
Freshservice: 200 calls/min (Growth) to 700 calls/min (Enterprise) depending on plan tier; limits are per-account, not per-agent.
Data volume sensitivity
Freshservice 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 Freshservice to HubSpot Service Hub migration scoping. Not seeing yours? Book a call.
Walk through your Freshservice to HubSpot Service Hub migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave Freshservice
Other ways to arrive at HubSpot Service Hub
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.