Helpdesk migration

Migrate from Deskpro to HubSpot Service Hub

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

Deskpro logo

Deskpro

Source

HubSpot Service Hub

Destination

HubSpot Service Hub logo

Compatibility

50%

6 of 12

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

Complexity

BStandard

Timeline

3-5 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Moving from Deskpro to HubSpot Service Hub is a consolidation and schema redesign, not a simple record copy. Deskpro stores individual customers as Peoples and business entities as Organizations as two separate objects; HubSpot Service Hub nests contacts under Companies in a unified CRM record. We pre-merge Deskpro Peoples and Organizations during the transform phase so each resulting Contact is correctly attached to its Company. Deskpro's two-tier Knowledge Base hierarchy (Folders containing Articles) collapses into HubSpot's flat Knowledge Base category structure, which we document during scoping so the customer can reorganize before or after migration. Ticket history, agent assignments, tags, and custom fields migrate via HubSpot's Conversations API with rate-limit chunking. Deskpro automations, triggers, SLA rules, and workflow logic do not transfer; we deliver a written automation inventory for the customer's admin to rebuild in HubSpot Workflows.

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

Deskpro logo

Deskpro

What's pushing teams away

  • The agent-facing interface receives consistent criticism on G2—users describe it as functional but visually dated and less intuitive than competitors like Zendesk
  • Some customers report reliability issues including search errors, app crashes, and problematic email defaults that create friction in daily ticket handling
  • Organizations outgrowing the platform often cite insufficient advanced reporting and analytics depth compared to enterprise-focused alternatives
  • Teams with simpler needs sometimes find Deskpro's extensive customization options create unnecessary complexity compared to lighter alternatives like Helpspot

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

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

Deskpro

Ticket

maps to

HubSpot Service Hub

Ticket

1:1
Fully supported

Deskpro Tickets map to HubSpot Tickets with status mapped to HubSpot ticket_pipeline_stage, priority mapped to hs_ticket_priority, and the Deskpro ticket subject preserved in the hs_subject property. Internal notes on Deskpro tickets migrate as private internal notes in HubSpot. Deskpro ticket channels (email, chat, social) map to HubSpot inbox source values. SLA breach timestamps from Deskpro migrate as custom datetime fields if the destination HubSpot tier supports SLA management. Stat Builder 2500-record chunking applies to historical ticket export; we paginate using ticket ID ranges for large histories.

Deskpro

Agent

maps to

HubSpot Service Hub

User

1:1
Fully supported

Deskpro Agents map to HubSpot Users. We resolve by email address match. Agent-level settings including department assignment, language preference, and ticket routing preferences migrate as HubSpot User properties. Active and inactive agent status is preserved. Any Deskpro Agent without a matching HubSpot User is placed in a reconciliation queue for the customer's admin to provision before the production migration phase begins.

Deskpro

Peoples

maps to

HubSpot Service Hub

Contact

many:1
Mapping required

Deskpro Peoples (individual customers) merge into HubSpot Contact records. The mapping uses the Deskpro person ID as a reference anchor and preserves individual contact properties including name, email, phone, and address fields. Deskpro person-level custom fields migrate as HubSpot Contact properties. Because Deskpro Peoples and Organizations are separate objects, the Deskpro person-to-organization linkage (which Deskpro stores as a relationship property) is preserved by resolving the corresponding Organization-to-Company mapping after the Organizations phase completes.

Deskpro

Organization

maps to

HubSpot Service Hub

Company

1:1
Fully supported

Deskpro Organizations map to HubSpot Companies. Organization name, domain, address, and industry fields map directly. Organization-level custom fields migrate as HubSpot Company properties. The Deskpro Organization-People relationship is resolved at migration time: each merged Contact receives the HubSpot Company record as its primary company association, so the Deskpro organization contact hierarchy is preserved in HubSpot's Contact-Company data model.

Deskpro

Knowledge Base Article

maps to

HubSpot Service Hub

Knowledge Base Article

1:1
Fully supported

Deskpro Knowledge Base articles migrate as HubSpot Knowledge Base articles with article body, publish status, author attribution, and multilingual variants preserved. Article URLs from Deskpro are noted but not replicated as HubSpot URLs (which are regenerated by HubSpot). Articles linked to parent Folders are re-linked to the corresponding HubSpot Knowledge Base category during migration. Article publish date and last-modified date are preserved as HubSpot article metadata.

Deskpro

Knowledge Base Folder

maps to

HubSpot Service Hub

Knowledge Base Category

lossy
Fully supported

Deskpro Folders (the container layer in the Categories > Folders > Articles hierarchy) map to HubSpot Knowledge Base categories. HubSpot does not support a two-tier folder structure natively. We collapse Deskpro Categories and Folders into HubSpot flat categories during migration and flag the collapse in the migration report so the customer can reorganize categories post-migration. Folder-level permissions from Deskpro do not transfer; we document them as a configuration recommendation for HubSpot Knowledge Base article-level permissions.

Deskpro

Custom Ticket Fields

maps to

HubSpot Service Hub

Custom Ticket Properties

lossy
Mapping required

Deskpro custom fields on tickets are discovered via the Deskpro reports API with a custom field prefix, capturing field IDs, types, and label names. Custom field definitions are exported before data migration begins, and corresponding HubSpot ticket properties are pre-created via the HubSpot Properties API with matching field types (text, number, date, checkbox, dropdown). Active dropdown values in Deskpro map to HubSpot option array on the corresponding property. We flag any Deskpro field types without a native HubSpot equivalent for custom field type mapping during scoping.

Deskpro

Tag

maps to

HubSpot Service Hub

Tag

1:1
Fully supported

Deskpro ticket tags migrate to HubSpot Ticket Tags. The full tag vocabulary is created in HubSpot during migration to match Deskpro naming. Tags stored as multi-checkbox custom properties on tickets (distinct from the native ticket tag object) migrate as HubSpot multi-select picklist properties on the ticket. We preserve the full tag assignment history on every imported ticket.

Deskpro

Attachment

maps to

HubSpot Service Hub

File (via HubSpot file upload API)

lossy
Fully supported

File attachments on Deskpro tickets are downloaded from Deskpro's attachment storage to a staging bucket, then uploaded to HubSpot via the HubSpot Files API. Each attachment is linked back to the corresponding HubSpot ticket as a ticket attachment or timeline attachment. Attachments exceeding 250 MB trigger a chunked upload via the HubSpot multipart file upload mechanism. The original filename and MIME type are preserved. Email inline images are handled as embedded ContentDocument records linked to the ticket timeline.

Deskpro

Department

maps to

HubSpot Service Hub

Team

lossy
Fully supported

Deskpro Departments organize agents and ticket routing. We map department records to HubSpot Teams. Agent-to-department assignments are preserved as HubSpot Team membership. Deskpro department-level SLA rules are documented as HubSpot SLA configuration recommendations, as SLA management configuration does not transfer as data.

Deskpro

Workflow / Trigger / SLA Rule

maps to

HubSpot Service Hub

Workflow (documented for rebuild)

lossy
Fully supported

Deskpro automations including triggers, workflow rules, and SLA policies are not transferable to HubSpot because they use fundamentally different automation engines. We export a written inventory of every active Deskpro automation with its trigger conditions, actions, and timing as a CSV and Markdown specification. The customer's HubSpot admin uses this document to rebuild equivalent automations in HubSpot Workflows and SLA settings. SLA rules specifically map to HubSpot SLA policies in Service Hub Professional and Enterprise tiers.

Deskpro

Engagement: Internal Notes

maps to

HubSpot Service Hub

Internal Notes (timeline)

1:1
Fully supported

Deskpro ticket internal notes migrate as HubSpot conversation internal notes on the ticket timeline. Internal notes are attributed to the original Deskpro agent by resolving the agent email to the HubSpot User record. Note timestamp is preserved as the timeline entry date. Internal notes are marked private in HubSpot and are not visible to the end customer.

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.

Deskpro logo

Deskpro gotchas

Medium

Stat Builder ticket export hard-caps at 2500 records per query

High

On-premise to cloud migration can fail due to incompatible features

Medium

Custom fields on tickets require schema discovery before mapping

Low

Rate limiting on Help Center API endpoints can throttle bulk reads

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

  • Peoples and Organizations must merge before HubSpot Contact import

    Deskpro stores individual customers as Peoples and business entities as Organizations as two separate API objects. HubSpot Service Hub uses a Contact object that can be associated with a Company but does not have a separate person object. We run a pre-merge transform that takes each Deskpro person record, resolves the linked Organization, and creates the corresponding HubSpot Contact attached to a HubSpot Company. If the Deskpro person has no Organization link, the Contact is created without a Company association. Skipping this merge design step results in orphaned Contacts without company linkage or duplicate company records for the same business entity.

  • Knowledge Base folder hierarchy collapses into flat categories

    Deskpro's Knowledge Base uses a three-tier structure: Categories > Folders > Articles. HubSpot Knowledge Base uses a flat category structure with articles attached directly to categories. We collapse Categories and Folders into a single HubSpot category level during migration and flag the collapse in the migration report. If the customer relies on a two-tier structure for content organization (for example, Category = Product Line, Folder = Feature Area), they must redesign the category hierarchy in HubSpot either before or after migration. Folder-level permissions from Deskpro are documented as configuration notes for HubSpot article permissions.

  • Stat Builder 2500-record cap requires chunked export for large ticket histories

    Deskpro's built-in Stat Builder export tool caps each query at 2500 records. Migrations with large ticket histories require multiple paginated queries using ticket ID range constraints (tickets.id between 1 and 2500, then 2501 and 5001, and so on). We implement this chunking automatically during export scoping, but the customer must confirm whether their historical ticket IDs are sequential or have gaps. If gaps exist and the customer wants complete history, we query using created_date range filters instead of ID ranges. Any unmigrated records are flagged in the reconciliation report.

  • On-premise Deskpro requires pre-migration feature audit before cloud export

    Organizations running Deskpro on-premise or AWS VPC-private deployment cannot export directly to HubSpot cloud without first auditing for cloud-incompatible features. Deskpro's official documentation specifies that on-premise to cloud migration can fail when incompatible features are still active or when the database encryption key is not provided. We require a pre-migration feature audit during scoping: any feature not available in the target Deskpro cloud tier must be disabled before export begins. The database encryption key must be provided upfront and stored securely for the migration duration. This applies to all on-premise and VPC-private Deskpro customers regardless of destination.

  • HubSpot API rate limits throttle bulk ticket imports without backoff

    HubSpot's Conversations API enforces rate limits on ticket creation and update endpoints (100 requests per second for Starter, higher for Professional and Enterprise). Our migration pipeline implements exponential backoff with jitter on 429 responses and batch chunking at 100 records per batch. We also monitor HubSpot's daily API call usage via the account-level API call meter to avoid hitting daily caps mid-migration. If daily limits are reached, migration pauses and resumes on the next calendar day. We coordinate with the customer to set aside a quiet migration window when agent activity is low to maximize throughput.

Migration approach

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

  1. Discovery and Deskpro environment audit

    We audit the source Deskpro portal across tier (Team, Professional, Enterprise cloud, or on-premise), deployment type, custom field schemas on tickets and articles, Knowledge Base folder depth, active workflows and SLA rules, ticket volume by status, agent count and department structure, and attachment storage volume. If Deskpro is on-premise or AWS VPC-private, we conduct the mandatory feature compatibility audit before proceeding. We also identify whether the Deskpro Knowledge Base contains multilingual variants that need language-tagged migration. The discovery output is a written migration scope document covering record counts, object mapping table, custom field inventory, and any blockers (on-premise encryption key, rate-limit configuration).

  2. HubSpot schema design and pre-creation

    We design the destination schema in HubSpot before any data migration begins. This includes pre-creating HubSpot ticket properties (via the Properties API) to match Deskpro custom field names and types, configuring HubSpot ticket pipelines and stages to reflect Deskpro ticket statuses and channel types, creating HubSpot Teams to match Deskpro department structure, creating Knowledge Base categories that map to Deskpro Folders (noting the hierarchy collapse), and configuring HubSpot User properties for any agent-level attributes that do not map to standard HubSpot User fields. Schema design is validated in the customer's HubSpot sandbox or trial environment before production migration.

  3. Sandbox migration and reconciliation

    We run a full migration into the customer's HubSpot sandbox using production data volumes. The customer's support operations lead reconciles record counts (tickets in, contacts in, companies in, articles in), spot-checks 25-50 random records against the Deskpro source (checking field values, attachment presence, tag assignments, internal note visibility), and validates that the Knowledge Base article body content and publish status are correct. Any mapping corrections, missing field definitions, or category structure issues are resolved in sandbox before production migration begins. The customer provides sign-off on the sandbox results before we schedule the production migration window.

  4. Agent-to-User provisioning and reconciliation

    We extract every distinct Deskpro agent email referenced on tickets, internal notes, and article authors. Each agent email is matched against the HubSpot destination's User table by email. Agents without a matching HubSpot User go to a reconciliation queue, and the customer's HubSpot admin provisions the missing Users (setting them as active or inactive based on whether the original Deskpro agent is still active). Migration cannot proceed past the agent reconciliation step because ticket owner assignments, internal note attribution, and article author attribution all depend on resolved HubSpot User IDs.

  5. Production migration in dependency order

    We run production migration in strict record-dependency order. Companies are migrated first (from Deskpro Organizations). Contacts are migrated second (from Deskpro Peoples, with the Organization-to-Company lookup resolved at insert time). Teams are migrated third (from Deskpro Departments, with agent-to-team membership assigned). Tickets are migrated fourth (with status, priority, owner, and tag lookups resolved). Knowledge Base categories and articles are migrated fifth. Custom ticket fields are populated sixth (after standard ticket fields are created). Attachments are migrated in parallel with the ticket phase using the file download-upload pipeline. Internal notes and conversation history are migrated last as timeline entries on each ticket. Each phase emits a row-count reconciliation report before the next phase begins.

  6. Cutover, validation, and automation rebuild handoff

    We freeze Deskpro writes during the cutover window, run a final delta migration of any tickets, contacts, or articles modified during the migration window, then enable HubSpot Service Hub as the system of record. We run a post-migration validation query comparing total record counts, spot-checking custom field values and tag assignments across a 50-record sample. We deliver the Deskpro automation inventory document (workflows, triggers, SLA rules) to the customer's HubSpot admin team with a recommended HubSpot Workflow equivalent for each entry. We do not rebuild Deskpro automations as HubSpot Workflows inside the migration scope; that is a separate engagement. We offer a one-week hypercare window for reconciliation issues raised during the first production ticket-handling week.

Platform deep dives

Context on both ends of the pair

Deskpro logo

Deskpro

Source

Strengths

  • Cloud, on-premise, and AWS VPC-private deployment options give regulated industries deployment flexibility
  • Deep workflow and trigger customization without requiring developer resources or code
  • AI-assisted features (triage, response suggestions, chatbot) built directly into the platform
  • Multi-channel inbox unifies email, chat, social, and web forms into a single agent view
  • Per-user pricing with no per-ticket fees makes high-volume support teams predictable to budget

Weaknesses

  • The agent-facing UI is frequently described as visually dated and less polished than competitors like Zendesk
  • G2 reviewers report intermittent reliability issues including search errors and app crashes
  • Advanced reporting and analytics are less mature than enterprise-focused alternatives
  • Smaller ecosystem of third-party integrations compared to market leaders
  • On-premise to cloud migration requires manual compatibility review of existing feature usage
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 Deskpro 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

    Deskpro: Configurable per action in Admin > Data > Security; not publicly documented in requests-per-minute terms.

  • Data volume sensitivity

    B

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

Estimator

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

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

Can't find your answer?

Walk through your Deskpro 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, 5,000 contacts, and 500 knowledge base articles with no on-premise Deskpro complications. Migrations with large attachment volumes (over 50 GB), multilingual knowledge base variants, complex custom field schemas, on-premise Deskpro requiring pre-migration feature audit, or organizations that need parallel-run validation extend to seven to twelve weeks. The on-premise feature audit alone adds one to two weeks of scoping time before migration begins.

Adjacent paths

Related migrations to explore

Ready when you are

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