Helpdesk migration
Field-level mapping, validation, and rollback between ManageEngine ServiceDesk Plus and HubSpot Service Hub. We move data and schema; workflows are rebuilt natively in HubSpot Service Hub.
ManageEngine ServiceDesk Plus
Source
HubSpot Service Hub
Destination
Compatibility
12 of 16
objects map 1:1 between ManageEngine ServiceDesk Plus and HubSpot Service Hub.
Complexity
BStandard
Timeline
2-4 weeks
Overview
ManageEngine ServiceDesk Plus is an ITSM platform built around Requests, Requesters, and a technician-administered model. HubSpot Service Hub is a customer-service platform built around Contacts, Tickets, and conversation threads. The structural difference is significant: ServiceDesk Plus uses separate Request and Requester objects with no native Account concept, while HubSpot Service Hub uses Contacts with optional Companies and a ticket thread model. We resolve this mismatch by creating Contacts from Requesters, establishing a Companies mapping where the customer has multi-requester organizations, and threading ServiceDesk Plus internal notes and public replies into HubSpot ticket conversations. Custom ticket fields stored in a separate database table require per-record detail API calls, not bulk list export. SLA configurations, business rules, and change/release management records have no HubSpot Service Hub equivalent and are documented for manual rebuild. API rate limits on ServiceDesk Plus (60 reads/min, 15 creates/10s) extend migration timelines for large datasets.
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
ManageEngine ServiceDesk Plus platform overview
Scorecard, SWOT, gotchas, and pricing for ManageEngine ServiceDesk Plus.
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 ManageEngine ServiceDesk Plus 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.
ManageEngine ServiceDesk Plus
Request
HubSpot Service Hub
Ticket
1:1Requests in ServiceDesk Plus map directly to HubSpot Service Hub Tickets. The ServiceDesk Plus request ID becomes a custom field sdplus_request_id__c used as the dedupe key to prevent duplicate ticket creation on re-runs. Status, Priority, Category, Subcategory, and Description map to HubSpot Ticket properties. The ServiceDesk Plus resolution field maps to HubSpot's ticket close properties. Technicians in SDP map to HubSpot Agents via email lookup. The request-centric model becomes a conversation-centric model, so all associated request notes and replies are threaded as conversation entries in HubSpot.
ManageEngine ServiceDesk Plus
Requester
HubSpot Service Hub
Contact
1:1Requesters in ServiceDesk Plus map to HubSpot Contacts. Email address is the primary dedupe key. Name, phone, department, and site properties migrate to the corresponding HubSpot Contact properties. ServiceDesk Plus does not have a native Account or Company object; if multiple Requesters belong to the same organization, the customer must define that grouping during scoping, and we build a Companies mapping accordingly. Historical request count per Requester is preserved in a custom contact property.
ManageEngine ServiceDesk Plus
Site
HubSpot Service Hub
Location custom property
lossyServiceDesk Plus Sites represent physical locations that requesters are assigned to. HubSpot Service Hub has no native location object, so we store site names as a Contact property or as a custom object if the customer needs location-based reporting and filtering. The customer decides between a text property or a custom object during scoping.
ManageEngine ServiceDesk Plus
Asset
HubSpot Service Hub
Custom object (Asset)
1:1Assets in ServiceDesk Plus (hardware, software, IT components) map to a custom Asset object in HubSpot Service Hub. Fields including name, type, serial number, purchase date, vendor, and cost migrate as custom properties on the Asset object. Asset-to-Request associations migrate as lookup relationships on the Asset record. This mapping requires HubSpot Professional or Enterprise tier to support custom objects.
ManageEngine ServiceDesk Plus
Contract
HubSpot Service Hub
Custom object (Contract)
1:1Contracts in ServiceDesk Plus (vendor agreements, SLA contracts, support agreements) map to a custom Contract object in HubSpot. Fields including vendor name, contract type, start date, end date, and cost migrate as custom properties. Contract-to-Asset associations migrate as lookup relationships. This mapping requires a HubSpot tier that supports custom objects and is not available on Starter.
ManageEngine ServiceDesk Plus
Solution
HubSpot Service Hub
Knowledge base or Custom object
1:1Solutions in ServiceDesk Plus (knowledge base articles) can migrate as a custom object in HubSpot with article content, category, and approval status as properties. Native HubSpot knowledge base articles require Service Hub Professional+ with the knowledge base add-on; if the customer's HubSpot tier includes this feature, we create native articles. If not, we use a custom object to preserve the full article body and metadata for manual recreation in HubSpot's knowledge base editor.
ManageEngine ServiceDesk Plus
Problem
HubSpot Service Hub
Case (Service Cloud) or Custom Object
1:1Problem records in ServiceDesk Plus ITIL Problem management track underlying causes of multiple incidents. HubSpot Service Hub does not have a native Problem object. If the customer also licenses Salesforce Service Cloud, Problems map to Cases with a custom Case Type value of Problem. Otherwise, Problems map to a custom Problem object with linked incident Request IDs. Problem records require Enterprise-tier ServiceDesk Plus to exist in the source data.
ManageEngine ServiceDesk Plus
Change
HubSpot Service Hub
Custom Object
1:1Change records in ServiceDesk Plus capture change requests with approval workflows, risk assessments, and implementation plans. HubSpot Service Hub has no native Change management object. We migrate Change records as a custom Change object with status, risk level, and implementation plan as properties. Approval Board content and change advisory board notes are stored as text or attachments. Change records require Enterprise-tier ServiceDesk Plus to exist in the source data.
ManageEngine ServiceDesk Plus
Release
HubSpot Service Hub
Custom Object
1:1Releases in ServiceDesk Plus track deployment packages and rollout checklists. HubSpot Service Hub has no native release management object. We migrate Release records as a custom Release object with deployment date, associated change requests, and checklist status as properties. Release templates and rollout schedules migrate as structured data. Releases require Enterprise-tier ServiceDesk Plus to exist in the source data.
ManageEngine ServiceDesk Plus
Custom Ticket Fields
HubSpot Service Hub
Ticket Properties
lossyServiceDesk Plus custom ticket fields are stored in a separate database table from standard request fields. The bulk list API does not return these values. We identify all custom field names and data types during scoping, then call the individual request detail endpoint per record to extract values. Custom field values are created as additional Ticket properties in HubSpot or as custom properties on a linked custom object depending on HubSpot tier. The customer receives a field inventory showing the complete custom field list from the source.
ManageEngine ServiceDesk Plus
Attachment
HubSpot Service Hub
File (via HubSpot Files API)
lossyAttachments associated with ServiceDesk Plus Requests are stored as file references in the platform database. The built-in migration tool does not export them. We call the file attachment endpoint per request to download attachment binary content where the API permits, then re-upload each file to HubSpot via the Files API and attach the resulting HubSpot file ID to the corresponding Ticket record. Where the API does not grant binary access, we document the attachment list for manual upload as a pre-migration task. This requires per-record API calls, multiplying against the 60 req/min read throttle.
ManageEngine ServiceDesk Plus
Conversation (Notes and Replies)
HubSpot Service Hub
Ticket Conversation
1:1ServiceDesk Plus internal notes and public replies on a request are stored as separate conversation entries. We extract each note and reply via the request detail API, preserving author, timestamp, and content. Internal notes are created as private conversation entries in HubSpot; public replies are created as public conversation entries. HTML content from SDP is sanitized and stored as rich text in HubSpot's conversation model. Conversation threads require per-record API calls and are not available via bulk export.
ManageEngine ServiceDesk Plus
User (Technician)
HubSpot Service Hub
Agent
1:1ServiceDesk Plus Users (technicians and admins) map to HubSpot Service Hub Agents. Email address is the primary dedupe key. First name, last name, and active/inactive status migrate to the corresponding HubSpot agent properties. ServiceDesk Plus role and group assignments do not have a direct HubSpot equivalent; these are documented for the customer's admin to reconfigure in HubSpot Teams and Roles post-migration.
ManageEngine ServiceDesk Plus
Project
HubSpot Service Hub
Custom Object
1:1Projects in ServiceDesk Plus track IT initiatives linked to requests and changes. HubSpot Service Hub has no native project object. We migrate project records as a custom Project object with metadata, task lists, and resource assignments as structured properties. Task lists within projects migrate as line-item custom properties or as a separate custom Task object linked to Project. Projects require Professional or Enterprise-tier ServiceDesk Plus to exist in the source data.
ManageEngine ServiceDesk Plus
Service Catalog Item
HubSpot Service Hub
Custom Object or Help Desk Content
1:1Service Catalog items in ServiceDesk Plus define orderable services with request templates, approval workflows, and step-based fulfillment. HubSpot Service Hub does not have a native service catalog. We migrate catalog item definitions as custom object records with the service name, description, steps, and approval logic stored as structured text. Approval workflows and step-based fulfillment require manual redesign in HubSpot as a separate process. Service Catalog requires Enterprise-tier ServiceDesk Plus.
ManageEngine ServiceDesk Plus
SLA Configuration
HubSpot Service Hub
SLA policy (Professional+ tier)
lossySLA definitions in ServiceDesk Plus (escalation rules, response time targets, resolution time targets, holiday schedules) are platform-native workflow definitions that do not expose a public export mechanism. We document the SLA policies in scope during scoping, then the customer's admin configures corresponding SLA policies in HubSpot Service Hub Professional+ or connects a third-party SLA tool. SLA policies must be rebuilt; we do not migrate them as data.
| ManageEngine ServiceDesk Plus | HubSpot Service Hub | Compatibility | |
|---|---|---|---|
| Request | Ticket1:1 | Fully supported | |
| Requester | Contact1:1 | Fully supported | |
| Site | Location custom propertylossy | Fully supported | |
| Asset | Custom object (Asset)1:1 | Fully supported | |
| Contract | Custom object (Contract)1:1 | Fully supported | |
| Solution | Knowledge base or Custom object1:1 | Fully supported | |
| Problem | Case (Service Cloud) or Custom Object1:1 | Fully supported | |
| Change | Custom Object1:1 | Fully supported | |
| Release | Custom Object1:1 | Fully supported | |
| Custom Ticket Fields | Ticket Propertieslossy | Mapping required | |
| Attachment | File (via HubSpot Files API)lossy | Fully supported | |
| Conversation (Notes and Replies) | Ticket Conversation1:1 | Fully supported | |
| User (Technician) | Agent1:1 | Fully supported | |
| Project | Custom Object1:1 | Fully supported | |
| Service Catalog Item | Custom Object or Help Desk Content1:1 | Fully supported | |
| SLA Configuration | SLA policy (Professional+ tier)lossy | 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.
ManageEngine ServiceDesk Plus gotchas
Custom ticket fields absent from default API list responses
Attachments and conversations not migratable via standard export
Per-operation API rate limits restrict bulk migration speed
Custom module objects require manual schema mapping
Tier-gated modules create feature gaps in migrations
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 source ServiceDesk Plus instance across edition (Standard, Professional, or Enterprise), active technician count, ticket volume, attachment count, custom field definitions, and whether Problem, Change, Release, Project, and Service Catalog objects are present. We identify all custom ticket field names and their data types, confirm which ITSM-tier objects exist in the data export, and assess the total volume of conversation threads. The scoping output is a written migration scope document that lists every object in scope, the mapping strategy for each, and a preliminary timeline estimate.
Schema design and HubSpot tier validation
We design the destination schema in HubSpot Service Hub. This includes creating any required custom objects (Asset, Contract, Change, Release, Project, Solution) with matching property names and types, configuring HubSpot Teams and Roles to approximate the ServiceDesk Plus technician grouping, and setting up SLA policies if the Professional+ tier is licensed. If custom ticket fields exist, we pre-create corresponding Ticket properties before any record import. The schema design is validated in HubSpot's sandbox or test account before production migration begins.
Sandbox migration and reconciliation
We run a full migration into a HubSpot test account using a representative data sample from the source, including tickets, contacts, attachments, and conversation threads. The customer's service desk lead reconciles record counts (tickets in, contacts in, attachments in), spot-checks 25-50 random ticket records against the ServiceDesk Plus source for field accuracy, and reviews the custom object data. Any mapping corrections and schema adjustments happen in this phase. We do not proceed to production migration until the customer signs off on the sandbox reconciliation report.
Attachment and conversation extraction
We extract attachments by calling the file attachment endpoint per ServiceDesk Plus request, downloading binary content where the API permits, and staging the files for re-upload to HubSpot via the Files API. Simultaneously, we extract conversation threads (internal notes and public replies) via the request detail API, preserving author, timestamp, and content. Both extraction processes require per-record API calls and are sequenced before the main ticket import so that HubSpot file IDs are ready to associate with ticket records during the ticket migration phase.
Production migration in dependency order
We run production migration in record-dependency order: Contacts (from Requesters) first, with Companies mapping applied if the customer elected to use the Companies object; custom objects (Asset, Contract, Change, Release, Project) next with their lookup relationships established; Tickets last with resolved contact lookups, agent assignments, custom field values, and conversation thread associations. Attachment re-upload happens concurrently with ticket creation. Each phase emits a row-count reconciliation report before the next phase begins. API rate limiting is managed throughout with exponential backoff on 429 responses.
Cutover, validation, and automation rebuild handoff
We freeze ServiceDesk Plus writes during cutover, run a final delta migration of any tickets modified during the migration window, then enable HubSpot Service Hub as the system of record. We deliver the SLA, Business Rule, and Workflow inventory document to the customer's admin team with recommendations for rebuilding each in HubSpot Service Hub or a connected ITSM tool. We provide a one-week hypercare window to resolve any reconciliation issues raised by the service team. We do not rebuild ServiceDesk Plus automations as HubSpot automation rules inside the migration scope; that is a separate engagement.
Platform deep dives
ManageEngine ServiceDesk Plus
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 ManageEngine ServiceDesk Plus 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
ManageEngine ServiceDesk Plus: Per-operation throttling: 15 creates/10 sec, 30 updates/1 min, 30 deletions/1 min, 60 reads/1 min. Lock period of 5 minutes on exceeded operations..
Data volume sensitivity
ManageEngine ServiceDesk Plus 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 ManageEngine ServiceDesk Plus to HubSpot Service Hub migration scoping. Not seeing yours? Book a call.
Walk through your ManageEngine ServiceDesk Plus 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 ManageEngine ServiceDesk Plus
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.