Helpdesk migration
Field-level mapping, validation, and rollback between Teamwork Desk and HubSpot Service Hub. We move data and schema; workflows are rebuilt natively in HubSpot Service Hub.
Teamwork Desk
Source
HubSpot Service Hub
Destination
Compatibility
9 of 12
objects map 1:1 between Teamwork Desk and HubSpot Service Hub.
Complexity
BStandard
Timeline
4-8 weeks
Overview
Moving from Teamwork Desk to HubSpot Service Hub is a structural migration that resolves two platform models: Teamwork Desk uses inboxes and inbox-to-agent routing, while HubSpot Service Hub uses a pipeline-and-pipeline-stage model with ticket owners assigned per record. We preserve the routing logic as a HubSpot team and set default pipeline assignment, map Helpdocs to HubSpot's Knowledge Base (noting that the hierarchical category structure is represented as tags rather than a native folder tree), and thread-based ticket replies to HubSpot's conversation timeline. We do not migrate Triggers or Business Hours as configuration; these are documented for the customer's admin to rebuild in HubSpot's workflow engine. We do not migrate Reports. Spam-marked customers are excluded from the Teamwork export per Teamwork's own behavior, and we replicate that exclusion in HubSpot to avoid phantom contact records. Custom fields from Teamwork Premium and Enterprise tiers are enumerated during scoping and mapped to HubSpot custom properties before any records insert.
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
Teamwork Desk platform overview
Scorecard, SWOT, gotchas, and pricing for Teamwork Desk.
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 Teamwork Desk 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.
Teamwork Desk
Customer
HubSpot Service Hub
Contact (primary) + Company (optional)
1:manyTeamwork Desk Customers map to HubSpot Contacts as the primary record. If a Teamwork Customer has an associated company field populated, we also create a HubSpot Company record and link the Contact via the company_id association. Email is the dedupe key. The HubSpot contact_id is resolved before any ticket import so that the contact reference is satisfied at insert time. Spam-marked customers are excluded per Teamwork's native export behavior; we flag any tickets orphaned by this exclusion for customer review.
Teamwork Desk
Ticket
HubSpot Service Hub
Ticket (via HubSpot Conversations API)
1:1Teamwork Desk tickets map to HubSpot Tickets. The Teamwork inbox assignment is not a native HubSpot object; we map inbox routing to a HubSpot Team (or default pipeline) and assign the ticket owner to the resolved agent. Ticket status (open, pending, resolved, closed) maps to HubSpot ticket_pipeline_stage. Priority maps to HubSpot priority. Thread-based replies and internal notes migrate to HubSpot's conversation timeline as Message records via the Conversations API. Teamwork's customer-facing and agent-only note distinction maps to HubSpot's public vs internal message visibility.
Teamwork Desk
Helpdocs (Knowledge Base Articles)
HubSpot Service Hub
Knowledge Base Article
1:1Helpdocs articles export with body content, author, publication status, and category associations. HubSpot's Knowledge Base importer (pre-built) handles article migration; we use it to preserve article body, titles, and slugs. The hierarchical Category-to-subcategory structure in Teamwork has no direct HubSpot equivalent; we represent it as HubSpot article tags and Section assignments. Article attachments migrate as HubSpot Knowledge Base file attachments. Publication status maps to HubSpot draft vs published state.
Teamwork Desk
Agent
HubSpot Service Hub
User
1:1Teamwork Desk agents map to HubSpot Users. We resolve by email match against the HubSpot destination portal's user table. Agent role (admin, agent) maps to HubSpot User permissions (super admin vs regular user). Active/inactive status carries over. Any Teamwork agent without a matching HubSpot User email is held in a reconciliation queue for the customer's admin to provision before record import proceeds.
Teamwork Desk
Inbox
HubSpot Service Hub
Team or Pipeline
lossyTeamwork inboxes route incoming tickets from specific email channels to designated agents. HubSpot Service Hub has no inbox object. We map inbox assignments to HubSpot Teams (for agent-group routing) and configure the default pipeline on tickets. If inbox-specific email routing rules are mission-critical, we document them during scoping as a configuration deliverable for HubSpot inbox routing rules, which must be rebuilt by the customer's admin post-migration.
Teamwork Desk
Tag
HubSpot Service Hub
Tag
1:1Teamwork Desk tags on tickets and customers migrate as HubSpot Tags. The tag vocabulary is preserved in full. HubSpot tags apply to contacts, companies, deals, and tickets, providing a consistent labeling model post-migration.
Teamwork Desk
Custom Field (Premium/Enterprise)
HubSpot Service Hub
Custom Property
1:1Teamwork Desk custom fields (dropdown, text, date, number) on tickets and customers from Premium and Enterprise tiers are enumerated during scoping. We pre-create the corresponding HubSpot custom properties (with matching types) before any records insert, so that migration writes directly to typed destination fields rather than orphaning custom data as plain text. Custom field options (dropdown values) migrate as HubSpot option set labels.
Teamwork Desk
Time Tracking (Pro tier and above)
HubSpot Service Hub
Custom Property or Deal Line Item
1:1Teamwork time entries logged against tickets are exported as a structured record set with ticket_id, agent, duration, and billable flag. HubSpot Service Hub does not have a native time-tracking migration path. We export time entries separately and either create HubSpot custom number properties on tickets or link them to the associated deal as line items, depending on whether the customer uses deals. The customer chooses the strategy during scoping.
Teamwork Desk
Customer Happiness Rating (Premium tier)
HubSpot Service Hub
Custom Number Property
1:1Teamwork CSAT ratings attached to tickets migrate to a HubSpot custom number property (hs_csat_score__c) on the ticket record, since HubSpot Service Hub does not store customer satisfaction scores natively on ticket records. We configure the property during schema setup and write the score from Teamwork's happiness rating field.
Teamwork Desk
Attachment
HubSpot Service Hub
File
1:1File attachments on tickets and Helpdocs are downloaded from Teamwork's API (referenced by URL) and re-uploaded to HubSpot's file storage via the Files API. We handle file-type restrictions and size limits per HubSpot's file requirements. Attachments on ticket threads link to the conversation message record in HubSpot. Helpdocs attachments link to the knowledge base article.
Teamwork Desk
Category (Helpdocs)
HubSpot Service Hub
Section + Tag
lossyTeamwork Helpdocs Categories have a hierarchical structure (parent Category with sub-Categories) that cannot be represented natively in HubSpot's flat Knowledge Base section model. We map each Category to a HubSpot Section and represent sub-category depth as tags on the article. Article ordering within sections migrates from Teamwork's position field to HubSpot's article ordering.
Teamwork Desk
Triggers (Pro tier and above)
HubSpot Service Hub
Workflow (documented, not migrated)
1:1Teamwork Triggers (automated routing rules on ticket events) are configuration objects, not data records. We do not migrate them as automation code. We document every active Trigger during discovery: trigger event, conditions, and resulting action. The customer's admin rebuilds equivalent automation in HubSpot's workflow engine post-migration.
| Teamwork Desk | HubSpot Service Hub | Compatibility | |
|---|---|---|---|
| Customer | Contact (primary) + Company (optional)1:many | Fully supported | |
| Ticket | Ticket (via HubSpot Conversations API)1:1 | Fully supported | |
| Helpdocs (Knowledge Base Articles) | Knowledge Base Article1:1 | Fully supported | |
| Agent | User1:1 | Fully supported | |
| Inbox | Team or Pipelinelossy | Fully supported | |
| Tag | Tag1:1 | Fully supported | |
| Custom Field (Premium/Enterprise) | Custom Property1:1 | Fully supported | |
| Time Tracking (Pro tier and above) | Custom Property or Deal Line Item1:1 | Mapping required | |
| Customer Happiness Rating (Premium tier) | Custom Number Property1:1 | Fully supported | |
| Attachment | File1:1 | Fully supported | |
| Category (Helpdocs) | Section + Taglossy | Fully supported | |
| Triggers (Pro tier and above) | Workflow (documented, not migrated)1:1 | Not 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.
Teamwork Desk gotchas
Spam tickets are silently excluded from Teamwork customer exports
Custom fields gated behind Premium and Enterprise tiers
API rate limit of 120 requests per minute constrains bulk export speed
Helpdesk Migration Service charges fees separate from Teamwork subscription
Triggers and business hours do not migrate as data
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 Teamwork Desk portal across all tiers (Starter through Enterprise) to capture customer counts, ticket volumes, attachment file sizes, Helpdocs article counts with category depth, and any active Triggers. We specifically enumerate custom fields present on Premium and Enterprise accounts, time-tracking entries from Pro+ accounts, and CSAT ratings from Premium accounts. We document the inbox structure and routing logic that will require HubSpot Team or workflow reconstruction. The discovery output is a written migration scope with object counts, custom field inventory, and a HubSpot plan recommendation (Starter, Professional, or Enterprise) based on the migrated feature set.
Schema design and HubSpot configuration
We design the HubSpot schema before any records move. This includes pre-creating all custom properties for Premium/Enterprise custom fields, configuring the ticket pipeline and pipeline stages to match Teamwork ticket statuses, creating HubSpot Teams that correspond to Teamwork inbox-agent groups, and setting up the Knowledge Base with Sections mapped from Teamwork Helpdocs Categories. We use HubSpot's Sandbox or staging environment for validation before production configuration. If the customer uses deals alongside tickets, we configure deal pipelines and map Teamwork ticket-to-deal associations accordingly.
Sandbox migration and reconciliation
We run a full migration into a HubSpot test portal using the customer's actual data volume. The customer's support operations lead reviews migrated contacts (checking for duplicates and spam-orphaned tickets), ticket thread integrity, agent assignment resolution, and knowledge base article rendering. We correct any field mapping, tag vocabulary, or pipeline stage configuration issues identified during reconciliation before scheduling the production migration. This step prevents discovery of mapping errors in production, where they are more disruptive.
Agent-to-User resolution and provisioning
We extract every distinct Teamwork Desk agent referenced on tickets and map them by email to HubSpot Users in the destination portal. Agents without a matching HubSpot User are held in a reconciliation queue. The customer's HubSpot admin provisions any missing users (activating or deactivating them based on whether the original Teamwork agent is still active) before production migration begins. Migration cannot proceed past this step because ticket owner references are required on HubSpot ticket inserts.
Production migration in dependency order
We run production migration in this sequence: Contacts (from Teamwork Customers with company split), Companies (where applicable), HubSpot Teams (for routing reconstruction), ticket imports (with conversation thread messages via the Conversations API), Helpdocs articles (via HubSpot Knowledge Base Importer with tag representation of category hierarchy), agent-to-user mapping, tag vocabulary, custom property data (Premium/Enterprise), time-tracking entries (as a separate structured export), and attachments (downloaded from Teamwork and re-uploaded to HubSpot Files API). Each phase emits a row-count reconciliation report before the next phase begins. We pace all API calls to stay within Teamwork's 120 req/min export limit and HubSpot's 100 calls/sec import limits.
Cutover, validation, and configuration handoff
We freeze Teamwork Desk write access during cutover, run a final delta migration of records modified during the migration window, then enable HubSpot Service Hub as the system of record. We deliver a written inventory of all Triggers requiring rebuild in HubSpot's workflow engine, all Business Hours configurations (Premium) to re-enter in HubSpot Settings, and all inbox routing rules requiring HubSpot workflow reconstruction. We do not rebuild automations, sequences, or forms as part of the migration scope. We support a one-week post-migration review window for the customer's team to flag any data discrepancies before the migration record is archived.
Platform deep dives
Teamwork Desk
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 Teamwork Desk 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
Teamwork Desk: 120 requests per minute per org, returning X-Rate-Limit headers on every response.
Data volume sensitivity
Teamwork Desk 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 Teamwork Desk to HubSpot Service Hub migration scoping. Not seeing yours? Book a call.
Walk through your Teamwork Desk 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 Teamwork Desk
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.