Helpdesk migration
Field-level mapping, validation, and rollback between Siit and HubSpot Service Hub. We move data and schema; workflows are rebuilt natively in HubSpot Service Hub.
Siit
Source
HubSpot Service Hub
Destination
Compatibility
8 of 12
objects map 1:1 between Siit and HubSpot Service Hub.
Complexity
BStandard
Timeline
3-5 weeks
Overview
Moving from Siit to HubSpot Service Hub is a platform model transition, not a record copy. Siit runs an AI-first, conversation-based request model inside Slack and Teams with Admin-based pricing; HubSpot Service Hub uses a traditional ticket portal with seat-based pricing and SLA management gated at Professional and above. We map Siit Requests to HubSpot Tickets, Siit People records to HubSpot Contacts (merged into Companies where org hierarchy exists), Siit Services catalog items to a Services custom object or structured custom fields on Tickets, and Siit Equipment records to a Device custom object. Communication threads migrate as Ticket reply history. Siit Workflow definitions and SLA escalation configurations do not migrate as code; we deliver a written inventory of every active workflow and SLA rule for the customer's admin to rebuild in HubSpot Operations Hub or via workflow builder.
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
Siit platform overview
Scorecard, SWOT, gotchas, and pricing for Siit.
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 Siit 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.
Siit
Request
HubSpot Service Hub
Ticket
1:1Siit Requests map to HubSpot Tickets. The request title becomes Ticket subject, description migrates as the ticket body, status maps from Siit status to HubSpot Ticket pipeline stages, and priority maps from Siit priority (low, medium, high, urgent) to HubSpot Ticket priority. submitted_from (slack, ms_teams, mail, employee_portal) is preserved in a custom text field hs_submission_channel__c for reporting on channel mix. Siit assignee_admin_uid resolves to HubSpot OwnerId via the Admin-to-User mapping.
Siit
People
HubSpot Service Hub
Contact
1:1Siit People records (employee directory data: department, team, office location, legal entity, employment type, lifecycle stage) map to HubSpot Contacts. We use the email address as the dedupe key. Where Siit People records represent internal employees who are also submitters of Requests, they migrate as Contacts; where the customer uses HubSpot for customer-facing support, a separate contact creation workflow is designed during scoping to avoid mixing internal employee records with external customer records.
Siit
People
HubSpot Service Hub
Company
many:1Siit People records grouped under the same team or department map to a HubSpot Company when the organization's HR structure implies an Account relationship. We inspect Siit's team and department fields during scoping and decide whether to create Companies for each department or suppress Company creation if the organization is flat.
Siit
Services
HubSpot Service Hub
Ticket subject prefix + custom object
1:1Siit Services catalog items (IT catalog items employees request, with configuration metadata and category assignments) map to a Services custom object in HubSpot. The service name becomes the custom object name; category assignments become a multi-select picklist; configuration metadata maps to custom fields. Each Ticket is cross-referenced to its originating Service record via a lookup field. If the customer does not have HubSpot Enterprise or a custom object entitlement, we use a Ticket subject prefix convention (e.g., [Hardware] Request Title) and store category as a ticket property.
Siit
Equipment
HubSpot Service Hub
Custom Object (Device)
1:1Siit Equipment records (physical and virtual devices with lifecycle attributes, ownership, and key configuration fields) map to a Device custom object in HubSpot. The equipment-to-person ownership link maps to a Contact lookup on the Device custom object. Lifecycle status (active, retired, maintenance) maps to a custom status field. This object requires HubSpot custom object support, which is available on Service Hub Professional and above.
Siit
Applications
HubSpot Service Hub
Custom Object (Application)
1:1Siit Application inventory records (software assets with ownership fields, lifecycle status, and category metadata) map to an Application custom object in HubSpot. Ownership mapping links to a Contact or Company lookup. Application-to-employee or application-to-equipment associations are preserved as lookup fields on the custom object. Available from HubSpot Professional tier onward.
Siit
Communication
HubSpot Service Hub
Ticket Replies
1:1Siit Communication exports (outbound messages and conversation threads linked to Requests) migrate as Ticket conversation replies. We map the thread structure to HubSpot's ticket reply timeline, preserving timestamps for reply ordering. Satisfaction survey responses attached to Siit Communication records migrate to HubSpot Survey Responses linked to the corresponding Ticket.
Siit
Tag
HubSpot Service Hub
Ticket Labels
1:1Siit tags (stored in tag_uids arrays on Requests) migrate to HubSpot Ticket Labels. We extract the full Siit tag taxonomy during scoping and create corresponding Label values in HubSpot before migration. The tagging taxonomy is preserved so teams can filter tickets by the same categories they used in Siit.
Siit
Inbox
HubSpot Service Hub
Team
lossySiit Inboxes (which route Requests to specific teams or queues) map to HubSpot Teams. We design the team structure during scoping by reviewing Siit Inbox assignments and Admin group memberships, then provision matching HubSpot Teams before Ticket migration. Ticket routing is set by assigning each Ticket's OwnerId to a user who is a member of the corresponding HubSpot Team. Inboxes without a clear HubSpot Team equivalent are documented for the admin to resolve during HubSpot setup.
Siit
SLA Data
HubSpot Service Hub
Custom fields + SLA Policy
lossySiit Request records include first_replied_at and first_completed_at timestamps. SLA timer values and escalation configurations (defined in Siit Workflows) migrate as custom datetime fields on the Ticket (first_replied_at__c, first_completed_at__c, sla_breach_at__c) and as HubSpot SLA Policy records at Professional tier. SLA policies are rebuilt manually in HubSpot because Siit SLA escalation logic is workflow-defined and not migratable as code.
Siit
User (Admin)
HubSpot Service Hub
User
1:1Siit Admins (the billable seat type who resolve requests) map to HubSpot Users. We resolve by email match and flag any Siit Admin without a HubSpot destination account for manual provisioning before migration. Only Admins who will actively resolve tickets are provisioned as HubSpot Users; employees who only submitted requests are imported as Contacts without HubSpot user seats to avoid inflating the seat count.
Siit
Custom Form Inputs
HubSpot Service Hub
Custom fields
lossySiit custom_form_inputs are arbitrary label/value pairs that vary per request type and organization. We scan all unique labels during the migration scan, create corresponding custom fields on the HubSpot Ticket object (or on the Services custom object where appropriate), and map values during migration. If the destination HubSpot plan does not support the required number of custom fields, we serialize the full custom_form_inputs object as a JSON blob in a single custom text field for preservation and future extraction.
| Siit | HubSpot Service Hub | Compatibility | |
|---|---|---|---|
| Request | Ticket1:1 | Fully supported | |
| People | Contact1:1 | Fully supported | |
| People | Companymany:1 | Fully supported | |
| Services | Ticket subject prefix + custom object1:1 | Fully supported | |
| Equipment | Custom Object (Device)1:1 | Fully supported | |
| Applications | Custom Object (Application)1:1 | Fully supported | |
| Communication | Ticket Replies1:1 | Fully supported | |
| Tag | Ticket Labels1:1 | Fully supported | |
| Inbox | Teamlossy | Fully supported | |
| SLA Data | Custom fields + SLA Policylossy | Fully supported | |
| User (Admin) | User1:1 | Fully supported | |
| Custom Form Inputs | Custom fieldslossy | Mapping required |
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.
Siit gotchas
Admin-based pricing is migration-critical for billing accuracy
Workflow state and logic do not transfer automatically
Open API requires scoping permission before migration access
Custom form inputs have no stable schema across requests
Billing ownership is restricted to the account owner
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 Siit workspace across the full object inventory: Request volume and status distribution, People records (distinguishing Admin resolvers from submitter-only employees), Services catalog size and category taxonomy, Equipment and Application inventory record counts, active Workflow list with state (Live, Paused, Draft), SLA configurations, Inbox structure and assignment rules, and Communication thread volume. We also identify the target HubSpot Service Hub edition (Starter $9/seat, Professional $90/seat, Enterprise $150/seat) based on the customer's SLA, custom object, and automation requirements. The discovery output is a written migration scope document with object counts, mapping rules, and a HubSpot edition recommendation.
HubSpot schema design and custom object provisioning
We design the destination HubSpot schema before any data moves. This includes creating the Services and Device custom objects (for Professional tier or above), defining custom fields on the Ticket object for all Siit custom_form_inputs labels, creating Ticket Labels that mirror the Siit tag taxonomy, provisioning HubSpot Teams to replace Siit Inboxes, and designing SLA policy structures for recreation in HubSpot (if Professional or Enterprise). Schema is deployed into a HubSpot Sandbox or development portal first for validation before production migration.
Admin provisioning and Owner reconciliation
We extract every distinct Siit Admin referenced on Requests and Communication records and match by email against the destination HubSpot portal's User table. Admins without a matching HubSpot User are flagged in a reconciliation queue. The customer's HubSpot admin provisions missing users before migration. People records classified as submitter-only (non-Admin) are imported as Contacts without HubSpot User seats to preserve the per-seat billing model accurately. This step is gated because OwnerId references are required on Ticket creation.
Sandbox migration and mapping validation
We run a full migration into a HubSpot staging environment using a representative data sample (typically 10-20% of total record volume). The customer's service team lead reviews migrated Tickets for field accuracy, thread continuity, tag assignments, and team routing. We reconcile record counts against Siit source exports and correct any field mapping errors before production migration. Mapping corrections discovered at this stage do not incur additional cost.
Production migration in dependency order
We run production migration in dependency order: Contacts (from Siit People records, with email as dedupe key), Companies (where applicable), Teams (HubSpot Teams from Siit Inbox structure), Tickets (with OwnerId resolved, subject and body mapped, priority and status translated, submission channel preserved), Service cross-references (Services custom object), Device records (Equipment custom object), Application records, Label assignments (from Siit Tags), SLA datetime fields (first_replied_at, first_completed_at), and Communication threads (Ticket reply history). Each phase emits a row-count reconciliation report before the next phase begins.
Cutover, delta sync, and workflow handoff
We coordinate a cutover window during which new Siit Request creation is paused. A final delta migration captures any records modified during the migration window. We redirect incoming request channels (email routing, form submissions) to HubSpot and confirm ticket ingestion. We deliver the Siit Workflow inventory document (title, trigger, conditions, actions, current state) to the customer's admin for rebuild in HubSpot Operations Hub or Service Hub workflow builder. We offer a one-week hypercare window for reconciliation issues raised during the first production week of HubSpot operation.
Platform deep dives
Siit
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 Siit 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
Siit: Not publicly documented; varies by plan tier.
Data volume sensitivity
Siit 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 Siit to HubSpot Service Hub migration scoping. Not seeing yours? Book a call.
Walk through your Siit 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 Siit
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.