CRM migration
Field-level mapping, validation, and rollback between Unanet CRM by Cosential and HubSpot. We move data and schema; workflows are rebuilt natively in HubSpot.
Unanet CRM by Cosential
Source
HubSpot
Destination
Compatibility
12 of 12
objects map 1:1 between Unanet CRM by Cosential and HubSpot.
Complexity
BStandard
Timeline
48–72 hours
Overview
Unanet CRM by Cosential is a purpose-built CRM for architecture, engineering, and construction firms, storing relationships, pursuits, proposals, and project history in a schema optimized for AEC workflows. HubSpot uses a general-purpose CRM object model — contacts, companies, deals, and custom objects (Enterprise) — with lifecycle_stage as the primary customer-state property and deal pipelines driving the sales view. The migration carries everything Unanet stores natively (contacts, firms/companies, pursuits, activities, custom fields) into HubSpot's standard objects and custom property model. The harder problems are mapping Unanet pursuits (the AEC equivalent of opportunities) to HubSpot deals with stage preservation, translating Unanet's firm hierarchy into HubSpot's company associations, and deciding how to handle proposal records that have no native HubSpot equivalent. FlitStack AI uses Unanet's Compass API to extract source data and HubSpot's CRM API to write records, sequencing the migration so foreign-key relationships resolve correctly before activities land. Additional complexity arises from preserving historical activity timestamps and ensuring custom field data types align with HubSpot's property system.
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.
Why teams make this switch
Leaving
What's pushing teams away
Choosing
What's pulling them in
Object mapping
Each row shows how a Unanet CRM by Cosential object lands in HubSpot, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
Unanet CRM by Cosential
Contact
HubSpot
Contact
1:1Unanet Contact maps directly to HubSpot Contact. Most fields — FirstName, LastName, BusinessEmailAddress — map 1:1. Contacts without a firm association land as HubSpot contacts with no primary company; those with a firm association link to the mapped HubSpot company via the hubspot_company_id property.
Unanet CRM by Cosential
Firm
HubSpot
Company
1:1Unanet's Firm (the organization record) maps to HubSpot Company using FirmName as the Company Name. HubSpot stores the website in the domain property; Unanet's firm-level address fields map to HubSpot's address compound properties. Parent-child firm hierarchies in Unanet map via HubSpot's parent company association.
Unanet CRM by Cosential
Pursuit
HubSpot
Deal
1:1Unanet pursuits are the AEC equivalent of HubSpot deals — project-based sales opportunities tied to a firm and contact. The pursuit name maps to deal name, pursuit amount maps to deal amount, and the pursuit stage maps to the HubSpot deal pipeline stage value. Each Unanet pursuit pipeline requires a corresponding HubSpot deal pipeline.
Unanet CRM by Cosential
Pursuit Stage
HubSpot
Deal Pipeline Stage
1:1Unanet stage values are mapped one-by-one to HubSpot deal stage values within the target pipeline. Stage probability and forecast category re-applied based on HubSpot's stage configuration. If Unanet has multiple pursuit pipelines (e.g., Design Build vs. Public Works), each requires its own HubSpot deal pipeline.
Unanet CRM by Cosential
Firm Hierarchy / Parent Firm
HubSpot
Company Parent Company Association
1:1Unanet's parent-child firm relationship maps to HubSpot's parent company association on the Company object. The parent firm must be migrated first so child firms can reference the correct HubSpot parent company ID. Circular firm hierarchies are flagged and resolved before migration runs.
Unanet CRM by Cosential
Contact-Firm Association
HubSpot
Contact Company Association
1:1Unanet allows a contact to be associated with multiple firms (N:1). HubSpot contacts have one primary company plus secondary associations. FlitStack maps the primary firm association as the HubSpot primary company link and surfaces additional firm links as secondary company associations or as a custom property for reference.
Unanet CRM by Cosential
Activity (Call, Email, Meeting, Note)
HubSpot
Engagement Timeline (Calls, Emails, Meetings, Notes)
1:1Unanet engagement records — calls, emails, meetings, and notes — map to HubSpot's engagement timeline. Call activities become HubSpot call engagements with the original timestamp and owner preserved. Emails become email engagements. Meetings become meeting engagements. Notes map to HubSpot notes on the associated contact or company record.
Unanet CRM by Cosential
Proposal
HubSpot
Custom Object (Proposal) or Deal Properties
1:1Unanet proposals are tightly coupled to pursuits and contain template-generated output history. HubSpot has no native proposal object. FlitStack creates a Proposal custom object (HubSpot Enterprise) or imports key proposal metadata — proposal name, creation date, status — as custom properties on the associated deal. The proposal document files are re-uploaded to HubSpot Files and linked to the deal record.
Unanet CRM by Cosential
Owner / User
HubSpot
HubSpot User
1:1Unanet users are matched to HubSpot users by email address. Unmatched owners are flagged before migration — your team either invites them to HubSpot first or assigns their records to a fallback HubSpot user. No record lands without an owner.
Unanet CRM by Cosential
Custom Fields (Contact, Firm, Pursuit)
HubSpot
HubSpot Custom Properties
1:1Unanet's custom fields map to HubSpot custom properties. Each custom field requires creation in HubSpot's portal settings before migration, with matching type selection (text, number, date, dropdown, checkbox). FlitStack delivers a custom field creation plan based on the exported field list. Fields with no HubSpot equivalent are preserved as custom properties with a source_system flag.
Unanet CRM by Cosential
Attachment / File (Proposal, Contact, Firm)
HubSpot
HubSpot Files
1:1Unanet file attachments — proposal documents, contact files, firm logos — are downloaded and re-uploaded to HubSpot Files. Files are associated with the appropriate HubSpot record (contact, company, or deal) via the file upload API. File size limits per HubSpot plan apply; files over the limit are flagged for splitting or alternative storage.
Unanet CRM by Cosential
Project History
HubSpot
Custom Object (Project) or Deal Notes
1:1Unanet tracks project history tied to a firm and pursuit — past project performance data used in proposals. HubSpot has no native project object. Key project metadata (project name, year completed, project type, revenue) migrates as a custom object (HubSpot Enterprise) or as deal-level custom properties. Project documents are attached to the custom object or deal.
| Unanet CRM by Cosential | HubSpot | Compatibility | |
|---|---|---|---|
| Contact | Contact1:1 | Fully supported | |
| Firm | Company1:1 | Fully supported | |
| Pursuit | Deal1:1 | Fully supported | |
| Pursuit Stage | Deal Pipeline Stage1:1 | Fully supported | |
| Firm Hierarchy / Parent Firm | Company Parent Company Association1:1 | Fully supported | |
| Contact-Firm Association | Contact Company Association1:1 | Fully supported | |
| Activity (Call, Email, Meeting, Note) | Engagement Timeline (Calls, Emails, Meetings, Notes)1:1 | Fully supported | |
| Proposal | Custom Object (Proposal) or Deal Properties1:1 | Fully supported | |
| Owner / User | HubSpot User1:1 | Fully supported | |
| Custom Fields (Contact, Firm, Pursuit) | HubSpot Custom Properties1:1 | Fully supported | |
| Attachment / File (Proposal, Contact, Firm) | HubSpot Files1:1 | Fully supported | |
| Project History | Custom Object (Project) or Deal Notes1: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.
Unanet CRM by Cosential gotchas
Non-standard object names block naive field mapping
API requires Enterprise License agreement
Duplicate contact risk on bulk imports
Custom fields require manual schema enumeration
Proposal templates carry template logic, not just data
HubSpot gotchas
Marketing Contacts billing model is migration-critical
Feature tier gating is not visible until onboarding
Mandatory onboarding fees inflate year-one cost
HubSpot CSV importer cannot migrate engagements or attachments
Custom objects require Enterprise and a pre-existing schema
Pair-specific challenges
Migration approach
Export Unanet data via Compass API and map the schema
FlitStack connects to Unanet CRM via the Compass API (v1 or v2) using your firm's access code and API key. We extract all contacts, firms, pursuits, activities, proposals, and custom field definitions. The export runs with read-only scope — your team continues working in Unanet throughout. We then produce a schema inventory: object counts, custom field names and types, firm hierarchy depth, and activity volume. This inventory drives the custom property creation plan and the mapping specification.
Create HubSpot custom properties and deal pipelines
Before any data is written to HubSpot, your admin (or our team) creates the custom properties and deal pipelines needed for the migration. FlitStack delivers a detailed setup plan: each Unanet custom field becomes a HubSpot property (with correct type — text, number, date, or picklist), each Unanet pursuit type becomes a HubSpot deal pipeline, and custom pick-list values are pre-loaded. This step prevents null values from landing on records during the migration run.
Resolve Unanet owners by email match to HubSpot users
Unanet user IDs are resolved to HubSpot users by matching the owner email address against HubSpot's user list. Unmatched owners are flagged before migration begins — your team either invites them to HubSpot or assigns their records to a fallback owner. No record migrates without a valid HubSpot owner, preventing orphaned records that cannot be assigned in HubSpot's UI. This owner resolution step is critical because HubSpot's permission model and activity attribution depend on having a valid owner assigned to each record.
Sequence and run a sample migration with field-level diff
The migration is sequenced to resolve foreign keys correctly: firms (companies) first, then contacts linked to firms, then pursuits linked to contacts and firms, then activities linked to contacts. A representative slice — typically 100–500 records spanning contacts, firms, pursuits, and activities — migrates first. FlitStack generates a field-level diff between the Unanet source values and the HubSpot destination values so you can verify firm hierarchy mapping, pursuit stage mapping, and owner resolution before the full run commits.
Execute full migration with delta-pickup window
The full migration runs against HubSpot, with API request pacing to stay within HubSpot's burst and daily limits. A delta-pickup window (24–48 hours) captures any records created or modified in Unanet during the cutover period, ensuring HubSpot reflects Unanet's final state at go-live. All operations are logged in an audit trail. One-click rollback is available if reconciliation reveals data quality issues.
Platform deep dives
Unanet CRM by Cosential
Source
Strengths
Weaknesses
HubSpot
Destination
Strengths
Weaknesses
Complexity grading
Standard CRM migration. 2 of 8 objects need a mapping; the rest are 1:1.
Overall complexity
Standard migration
Derived from compatibility, mapping clarity, API constraints, and data volume across Unanet CRM by Cosential and HubSpot.
Object compatibility
2 of 8 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
8-object category — typical timelines run 2–7 days end-to-end.
API constraints
Unanet CRM by Cosential: Not publicly documented.
Data volume sensitivity
Unanet CRM by Cosential 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 Unanet CRM by Cosential to HubSpot migration scoping. Not seeing yours? Book a call.
Walk through your Unanet CRM by Cosential to HubSpot migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave Unanet CRM by Cosential
Other ways to arrive at HubSpot
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.