Helpdesk migration
Field-level mapping, validation, and rollback between Desk365 and HubSpot Service Hub. We move data and schema; workflows are rebuilt natively in HubSpot Service Hub.
Desk365
Source
HubSpot Service Hub
Destination
Compatibility
10 of 12
objects map 1:1 between Desk365 and HubSpot Service Hub.
Complexity
CModerate
Timeline
3-5 weeks
Overview
Moving from Desk365 to HubSpot Service Hub is a structural migration that goes beyond a simple record copy. Desk365 organizes support around Tickets with Agents, Departments, and SLA Policies, while HubSpot Service Hub maps these into a unified CRM-native model with Tickets, Contacts, Companies, and Teams. The most significant gap is Desk365's Agent-only knowledge base visibility — HubSpot Service Hub uses a Published/Draft model only, so internal training articles land as Draft and require a manual review step before portal exposure. We extract SLA Policy time thresholds and recreate them as HubSpot SLA policies, preserving First Response and Resolution targets by Priority. Automation macros document as structured JSON for the customer's admin to rebuild in HubSpot; they do not execute in the destination. Conversation threads migrate in chronological order with internal notes flagged so that HubSpot's public reply / private note split is honored.
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
Desk365 platform overview
Scorecard, SWOT, gotchas, and pricing for Desk365.
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 Desk365 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.
Desk365
Ticket
HubSpot Service Hub
Ticket
1:1Desk365 Tickets map directly to HubSpot Service Hub Tickets. The source Status (Open, Pending, Resolved, Closed), Priority (Low, Medium, High, Urgent), and Created/Updated timestamps preserve. Assignee resolves via email match to HubSpot User; Requester resolves to a HubSpot Contact. We migrate both open and closed historical tickets in date order. If the customer specifies a cutover date, tickets created after that date remain in Desk365 for delta migration.
Desk365
Customer
HubSpot Service Hub
Contact
1:1Desk365 Customer records (name, email, company association, portal access status) map 1:1 to HubSpot Contact. The source Customer type (End User vs. External) influences the Contact's HubSpot lifecycle stage default. Any Desk365 Customer without an email address is flagged for the customer's admin to review because HubSpot requires an email for Contact creation.
Desk365
Agent
HubSpot Service Hub
User
1:1Desk365 Agent records (display name, email, department membership, Admin/Agent role) map to HubSpot Users. Active/inactive status preserves as HubSpot User active flag. We match Agents by email to resolve HubSpot User IDs for ticket assignment. Agents without a matching HubSpot User land in a reconciliation queue for the admin to provision before ticket migration proceeds.
Desk365
Department
HubSpot Service Hub
Team
lossyDesk365 Departments with access-level controls (global, department-only, agent-only) map to HubSpot Teams. Multi-level department hierarchies flatten into HubSpot Teams with naming conventions that preserve the hierarchy path. Department-level email routing addresses require the customer to configure HubSpot Inboxes post-migration; routing rules are documented for the admin to rebuild.
Desk365
Knowledge Base Article
HubSpot Service Hub
Knowledge Base Article
1:1Articles migrate with publish status and content preserved. Desk365's Agent-only visibility flag has no direct HubSpot equivalent — Agent-only articles land as Draft in HubSpot and require a manual review before publishing. Folder structures in Desk365 map to HubSpot knowledge base categories. Inline images extract and re-upload to HubSpot's file hosting.
Desk365
SLA Policy
HubSpot Service Hub
SLA Policy
lossyDesk365 SLA Policies with First Response and Resolution time targets by Priority level and Business Hours schedule map to HubSpot SLA Policies. We extract the policy name, time thresholds, business hours definition, and priority associations, then recreate them in HubSpot's SLA configuration UI. Desk365's Priority-to-SLA mapping matrix becomes the HubSpot SLA policy conditions.
Desk365
Automation Macro
HubSpot Service Hub
Macro (documented)
1:1Desk365 macros trigger on Ticket create/update events with conditions (field values, customer events) and fire actions (reply templates, field updates, assignments). We export macro definitions as structured JSON including trigger logic, conditions, and action sequences. Macros do not execute in HubSpot — they document for the customer's admin to rebuild as HubSpot Workflows and macros post-migration.
Desk365
Tag
HubSpot Service Hub
Tag
1:1Desk365 flat string tags on Tickets migrate to HubSpot Ticket Tags. No hierarchical or color metadata carries over since neither platform stores that on the tag itself. Tags are re-applied during ticket import using HubSpot's tag association API.
Desk365
Conversation Thread
HubSpot Service Hub
Ticket Conversation
1:1Each Desk365 Ticket's Conversation records (public replies, internal notes, system-generated status changes) migrate in chronological order. Public replies land as HubSpot Ticket Replies; internal notes land as HubSpot Ticket Internal Notes. The original author resolves to the matching HubSpot User or Contact. System-generated status-change entries from Desk365 are skipped as HubSpot generates its own status log.
Desk365
Ticket Attachment
HubSpot Service Hub
Ticket Attachment
1:1File attachments on Desk365 Tickets and inline in conversations are stored at URLs pointing to Desk365 blob storage. We download each attachment and re-upload to HubSpot's file manager, then attach to the corresponding HubSpot Ticket record. Attachments without a valid source URL are flagged for manual re-upload by the customer.
Desk365
Custom Field
HubSpot Service Hub
Custom Property
1:1Desk365 custom fields (text, number, dropdown, date, boolean) on Tickets extract with their definitions and values. We map field types to HubSpot ticket property types during scoping. If the destination HubSpot portal already has custom properties with matching names and types, values map directly. New custom properties are created in HubSpot before ticket import. Any Desk365 custom field with no HubSpot equivalent goes to a field reconciliation list for the customer to decide on type and placement.
Desk365
IT Asset (Premium)
HubSpot Service Hub
Custom Object
1:1Desk365 Premium IT Asset Management records (hardware/software assets linked to Tickets) extract as a separate dataset. Assets and their Ticket associations migrate to a HubSpot Custom Object with a lookup relationship back to the parent Ticket. Asset-to-asset relationships and dependency trees are documented as a separate data map for the customer to rebuild in HubSpot's Custom Object schema or a dedicated ITSM tool if asset dependency tracking is a compliance requirement.
| Desk365 | HubSpot Service Hub | Compatibility | |
|---|---|---|---|
| Ticket | Ticket1:1 | Fully supported | |
| Customer | Contact1:1 | Fully supported | |
| Agent | User1:1 | Fully supported | |
| Department | Teamlossy | Fully supported | |
| Knowledge Base Article | Knowledge Base Article1:1 | Fully supported | |
| SLA Policy | SLA Policylossy | Fully supported | |
| Automation Macro | Macro (documented)1:1 | Fully supported | |
| Tag | Tag1:1 | Fully supported | |
| Conversation Thread | Ticket Conversation1:1 | Fully supported | |
| Ticket Attachment | Ticket Attachment1:1 | Fully supported | |
| Custom Field | Custom Property1:1 | Fully supported | |
| IT Asset (Premium) | 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.
Desk365 gotchas
AI credit-based billing can spike post-migration
Free tier 50-ticket monthly cap catches heavy import volumes
API rate limits are not publicly documented
Knowledge base Agent-only visibility may not survive migration
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
We audit the Desk365 portal across tier (Free/Standard/Plus/Premium), ticket volume (open and historical), agent count, department structure, knowledge base article count and visibility distribution, active SLA policies, macro inventory, and any custom field definitions. We also review the destination HubSpot portal for existing custom properties, ticket pipelines, and user accounts. The discovery output is a written migration scope including record counts per object, a preliminary field mapping table, and a go/no-go decision on each object in scope.
Knowledge base visibility audit and HubSpot schema preparation
We extract every knowledge base article from Desk365 with its visibility flag. Agent-only articles are flagged for the customer to classify: publish immediately (move to Published), archive (keep as Draft with no public access), or reclassify by topic. Simultaneously, we create any missing HubSpot custom properties, ticket pipelines, Teams (mapped from Desk365 Departments), SLA policies (recreated from Desk365 thresholds), and custom objects for IT Asset Management in the destination portal.
Sandbox migration and reconciliation
We run a full migration into the customer's HubSpot Sandbox environment using a representative sample of production data (typically 10-15 percent of total ticket volume). The customer's support operations lead reviews record counts, spot-checks 25-50 tickets against Desk365 source data, validates knowledge base article formatting, confirms SLA policy time thresholds, and signs off the mapping before production migration begins. Any mapping corrections happen here.
Agent and department reconciliation
We extract every distinct Desk365 Agent and Department, then match Agents by email against the HubSpot portal's User table. Departments map to HubSpot Teams with naming conventions that preserve hierarchy paths. Agents without matching HubSpot Users go to a reconciliation queue; the customer provisions missing Users before the production ticket migration phase starts because OwnerId and TeamId references are required for ticket assignment.
Production migration in dependency order
We run production migration in record-dependency order: Users (manually provisioned and validated), Teams (from Desk365 Departments), Contacts (from Desk365 Customers), Knowledge Base Articles (with visibility flags applied), SLA Policies (recreated from Desk365 thresholds), then Tickets (with assignee resolved to HubSpot User, requester resolved to Contact, and conversation threads imported in chronological order). Each phase emits a row-count reconciliation report before the next phase begins. Attachments and IT Assets (Premium) migrate last as separate phases.
Cutover, delta migration, and macro handoff
We freeze Desk365 writes during the final cutover window, run a delta migration of any records created or modified during the migration window, then enable HubSpot Service Hub as the system of record. Knowledge base articles with Agent-only visibility are flagged with a custom property and a review reminder. We deliver the macro inventory document (structured JSON for each Desk365 macro with a HubSpot Workflow rebuild recommendation) to the customer's admin team. We support a one-week hypercare window for reconciliation issues. We do not rebuild Desk365 macros as HubSpot Workflows inside the migration scope.
Platform deep dives
Desk365
Source
Strengths
Weaknesses
HubSpot Service Hub
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 Desk365 and HubSpot Service Hub.
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
Desk365: Not publicly documented.
Data volume sensitivity
Desk365 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 Desk365 to HubSpot Service Hub migration scoping. Not seeing yours? Book a call.
Walk through your Desk365 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 Desk365
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.