Helpdesk migration
Field-level mapping, validation, and rollback between OneDesk and HubSpot Service Hub. We move data and schema; workflows are rebuilt natively in HubSpot Service Hub.
OneDesk
Source
HubSpot Service Hub
Destination
Compatibility
11 of 12
objects map 1:1 between OneDesk and HubSpot Service Hub.
Complexity
CModerate
Timeline
3-5 weeks
Overview
Moving from OneDesk to HubSpot Service Hub is a migration between different data philosophies. OneDesk stores Tickets and Tasks as variants of a single Item object with shared custom fields, while HubSpot Service Hub separates Cases (tickets), Conversations, Knowledge Base Articles, and Customer records into distinct CRM objects with per-object property sets. We extract the full active custom field schema from OneDesk before migration, map it to HubSpot's ticket properties and custom fields, and separate Tickets from Tasks into their appropriate destination types. Conversation threads on Tickets migrate as HubSpot Conversations tied to the parent Case. Knowledge Base Articles export with category assignments and publish status. We do not migrate OneDesk Workflow Automations, Invoices, or Project container hierarchies as code; we deliver a written inventory of every active automation and project structure for your admin to configure post-import. Time entries on Items migrate as HubSpot engagements.
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
OneDesk platform overview
Scorecard, SWOT, gotchas, and pricing for OneDesk.
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 OneDesk 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.
OneDesk
Ticket
HubSpot Service Hub
Case
1:1OneDesk Tickets map to HubSpot Service Hub Cases. Subject maps to Case Subject, description maps to Case Description, status maps to Case Status, priority maps to Case Priority, and the assigned User maps to Case OwnerId resolved via User email lookup. OneDesk SLA timers do not have a native HubSpot equivalent; we document active SLA policies in the migration package so the customer's admin can configure SLA boundaries in HubSpot's SLA configuration post-import. Ticket custom fields extract from the global OneDesk schema and map to HubSpot Case custom properties.
OneDesk
Task
HubSpot Service Hub
Task
1:1OneDesk Tasks map to HubSpot Tasks. Both share the same Item schema with a type discriminator. We filter by Item type during extraction and import Task records into HubSpot as Task objects. Assignee resolves via email to HubSpot User. Task status, due date, and description migrate directly. Time entries on Tasks migrate as HubSpot engagements linked to the Task.
OneDesk
Customer
HubSpot Service Hub
Contact
1:1OneDesk Customer records (external contacts, non-billable) map to HubSpot Contacts. Name, email, phone, company name, and address fields migrate directly. Customer-level custom properties map to HubSpot Contact custom properties. The distinction between Customer (external) and User (agent) is critical: only Customer records migrate to Contact; User records migrate separately to HubSpot Users. This affects destination licensing.
OneDesk
User
HubSpot Service Hub
User (HubSpot Agent)
1:1OneDesk Users (billable agents) map to HubSpot Users. We extract User profiles including name, email, role, and active status. OneDesk role assignments (Admin, Agent) map to HubSpot User permissions. Any User without a matching HubSpot User email is held in a reconciliation queue for the customer's admin to provision before record migration continues. User seat count in HubSpot Service Hub is billable; we flag the count before migration so the customer does not over- or under-provision.
OneDesk
Conversation
HubSpot Service Hub
Conversation (on Case)
1:1OneDesk conversation messages on Tickets export with author, timestamp, body content, and internal/external flag. We migrate the full thread in chronological order to HubSpot Conversations linked to the parent Case. Author references resolve via User email lookup to the HubSpot User. Internal notes migrate with the internal/external flag preserved. Ticket body text migration requires confirming OneDesk export coverage before migration begins, as some OneDesk configurations restrict full ticket body export.
OneDesk
Custom Fields
HubSpot Service Hub
Case Custom Properties / Contact Custom Properties
lossyOneDesk custom fields are shared across all Item types (Ticket and Task) and stored at the Item level. We extract the complete active custom field schema during scoping via the OneDesk field definition API, then map each field to either a Case custom property (if used on Tickets) or a Contact custom property (if used on Customers). Fields that appear on both Tickets and Tasks are mapped twice with the appropriate destination object. Multi-select and date fields use HubSpot's corresponding typed properties.
OneDesk
Knowledge Base Article
HubSpot Service Hub
Knowledge Base Article
1:1OneDesk KB Articles export with title, body content, category assignments, and publish status. We map each article to a HubSpot Knowledge Base article, preserving the article-to-category relationship. Publish status migrates so that draft articles remain draft in HubSpot. Article attachments migrate as HubSpot file attachments linked to the article. HubSpot's knowledge base article AI features (content gap analysis, article generation) are available at the Pro tier and above; these require post-migration activation rather than migration of existing content.
OneDesk
Project
HubSpot Service Hub
Custom Object or linked Cases
1:1OneDesk Projects serve as container objects grouping related Tickets and Tasks. HubSpot Service Hub does not have a native Project object. We offer two strategies: map Projects to a custom Project object pre-created in the destination HubSpot account, with Tickets linked via a lookup relationship; or flatten the hierarchy by importing Tickets without parent-project linkage and documenting the project groupings in the migration package for the customer to rebuild using HubSpot's custom objects or a linked PM tool. The choice is made during scoping based on the customer's operational reliance on project grouping.
OneDesk
Attachment
HubSpot Service Hub
File (on Case or Contact)
1:1File attachments on OneDesk Items are downloaded from OneDesk storage and uploaded to HubSpot Files. We map each file to the corresponding migrated Case or Contact record, preserving the original filename and file type. Large attachment sets are chunked to avoid timeout. We do not migrate OneDesk attachment permissions or access control lists; these require post-migration review in HubSpot.
OneDesk
Time Entry
HubSpot Service Hub
Engagement or Custom Property
1:1Time tracked against OneDesk Tickets and Tasks exports with hours, user, date, and optional description. We map time entries to HubSpot engagements (Tasks with time-tracking metadata) or store the total hours on the parent Case as a custom numeric property, depending on the customer's reporting needs identified during scoping. Billable hour flags migrate to a custom property in HubSpot.
OneDesk
Workflow Automation
HubSpot Service Hub
Written inventory (no code migration)
1:1OneDesk Workflow Automations trigger on Item state changes, assignments, or SLA conditions and may reference specific Item or User IDs. These IDs change after migration, breaking the automation logic. We export every active automation definition and deliver a written inventory documenting the trigger type, conditions, actions, and any record ID references. The customer's admin rebuilds these in HubSpot Workflows post-migration. We do not rewrite automation ID references automatically because the logic is opaque without full workflow auditing.
OneDesk
Invoice
HubSpot Service Hub
Written inventory (no data migration)
1:1OneDesk Professional Services Invoice records export with line items, amounts, status, and customer reference. HubSpot Service Hub does not have a native Invoice object. We export the invoice data as a structured CSV and deliver it as a reference document. The customer can import the CSV into a billing tool or HubSpot's custom objects if invoice history is operationally required. This is a manual post-migration step outside the automated migration scope.
| OneDesk | HubSpot Service Hub | Compatibility | |
|---|---|---|---|
| Ticket | Case1:1 | Fully supported | |
| Task | Task1:1 | Fully supported | |
| Customer | Contact1:1 | Fully supported | |
| User | User (HubSpot Agent)1:1 | Fully supported | |
| Conversation | Conversation (on Case)1:1 | Fully supported | |
| Custom Fields | Case Custom Properties / Contact Custom Propertieslossy | Mapping required | |
| Knowledge Base Article | Knowledge Base Article1:1 | Fully supported | |
| Project | Custom Object or linked Cases1:1 | Fully supported | |
| Attachment | File (on Case or Contact)1:1 | Fully supported | |
| Time Entry | Engagement or Custom Property1:1 | Fully supported | |
| Workflow Automation | Written inventory (no code migration)1:1 | Fully supported | |
| Invoice | Written inventory (no data migration)1: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.
OneDesk gotchas
User vs Customer billing model is migration-critical
Custom fields shared across all ticket types require schema discovery
Workflow automations reference migrated record IDs
Export via data view CSV may hit pagination limits on large datasets
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 scoping audit
We audit the source OneDesk tenant to establish the full migration scope. This includes counting Tickets, Tasks, Customers, Users, KB Articles, attachments, and time entries; extracting the active custom field schema; identifying Projects and their item membership; and exporting active Workflow Automation definitions. We also confirm the OneDesk subscription tier and API access level, and we confirm the destination HubSpot Service Hub tier to ensure the required API, custom property, and workflow capabilities are available. The discovery output is a written migration scope document with record counts and a destination tier recommendation.
Schema design and custom property provisioning
We design the destination schema in HubSpot based on the discovered OneDesk custom field set. Custom fields from OneDesk are provisioned as Case custom properties, Contact custom properties, or both depending on which Item types use each field. If the customer chooses to preserve Project hierarchy, we pre-create a custom Project object in HubSpot with the necessary lookup relationships. Custom properties are deployed to the destination HubSpot account before any record migration begins. The customer validates the property names and types before we proceed to extraction.
Pre-migration validation export
We run a validation export of a representative sample of 20-50 Tickets to confirm body text completeness, conversation thread integrity, and attachment accessibility. This step identifies any OneDesk export restrictions that would affect data completeness. If gaps are found, we document them and confirm with the customer before committing to the full migration. We also validate that the User-to-HubSpot-User email matching will resolve for all agent records.
User provisioning reconciliation
We extract every distinct OneDesk User referenced on Tickets, Tasks, and conversation records and match by email against the destination HubSpot account's User table. Users without a matching HubSpot User go to a reconciliation queue. The customer's HubSpot admin provisions any missing Users (active or inactive based on whether the original OneDesk agent is still employed). Migration cannot proceed past this step because Case OwnerId references require a valid HubSpot User ID.
Production migration in dependency order
We run production migration in record-dependency order: HubSpot Users (validated, not migrated), Contacts (from OneDesk Customers), Cases (from OneDesk Tickets with conversation threads attached), Tasks (from OneDesk Tasks with time entries), KB Articles with category assignments, and Files attached to the relevant parent records. Custom fields populate per-object during each phase. Project containers migrate last if the customer has chosen the custom object approach. We use HubSpot's REST API for individual record inserts and the Bulk API for large batch operations, with chunking and exponential backoff on rate limit responses.
Cutover, delta sync, and workflow rebuild handoff
We freeze OneDesk ticket writes during cutover and run a final delta migration of any records modified during the migration window. We deliver the Workflow Automation inventory document to the customer's admin team, documenting every active OneDesk automation with its trigger, conditions, actions, and recommended HubSpot Workflow equivalent. We support a one-week hypercare window where we resolve any record reconciliation issues. We do not rebuild OneDesk Workflows as HubSpot Workflows inside the migration scope; that is a separate engagement or an admin task.
Platform deep dives
OneDesk
Source
Strengths
Weaknesses
HubSpot Service Hub
Destination
Strengths
Weaknesses
Complexity grading
Moderate Helpdesk migration. 4 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 OneDesk and HubSpot Service Hub.
Object compatibility
4 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
OneDesk: Not publicly documented.
Data volume sensitivity
OneDesk 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 OneDesk to HubSpot Service Hub migration scoping. Not seeing yours? Book a call.
Walk through your OneDesk 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 OneDesk
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.