CRM migration

Migrate from Insightly CRM to HubSpot

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

Insightly CRM logo

Insightly CRM

Source

HubSpot

Destination

HubSpot logo

Compatibility

100%

12 of 12

objects map 1:1 between Insightly CRM and HubSpot.

Complexity

CModerate

Timeline

48–72 hours

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Insightly CRM and HubSpot both organize data around person-level, company-level, and deal-level records, but the relationship model, field-naming conventions, and pipeline configuration diverge in ways that require deliberate mapping before any data moves. Insightly stores Organizations (companies), Contacts, Opportunities (deals), Tasks, Projects, and Notes as standard objects, with a many-to-many link table for contact-to-organization relationships and a separate Role field to indicate a contact's relationship to an Opportunity. HubSpot models the same concepts as Companies, Contacts, Deals, and Tickets, but it uses a primary-company field on contacts (with additional company associations stored as a separate association set), and deal contact roles are managed through a dedicated Deal Contact Association feature rather than a flat Role field. FlitStack AI sequences the migration so foreign keys resolve correctly: Organizations migrate first, then Contacts with OrganizationId resolved to a HubSpot CompanyId, then Opportunities with contact role links rebuilt through HubSpot's association API. Original create dates, stage-change timestamps, and owner assignments are preserved as custom properties since HubSpot's native CreatedDate and LastModifiedDate reflect migration time. Projects and Tasks require case-by-case decisions — Projects may map to HubSpot Tickets or a custom object, and Tasks migrate as HubSpot Tasks with original owner and due-date metadata. Workflows, automations, email templates, and Insightly's AI Copilot settings do not migrate. These are rebuilt in HubSpot using FlitStack's exported workflow definitions as a reference. The migration runs via read-only Insightly API access (v3.1) pulling each object in dependency order, with field-level validation against a pre-run diff before the full dataset commits.

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

Insightly CRM logo

Insightly CRM

What's pushing teams away

  • Workflow automation and AI Copilot are locked behind the Professional tier, pushing teams with automation needs to higher-cost plans quickly as headcount grows.
  • Custom field handling requires referencing FIELD_NAME in API calls, and the UI documentation is described as incomplete and overwhelming by power users.
  • Setup is time-consuming, particularly for automation configuration, with users reporting frequent timeouts during the process.
  • Limited customization compared to enterprise CRMs — some users find field-level tailoring insufficient for complex sales processes.

Choosing

HubSpot logo

HubSpot

What's pulling them in

  • Lowest barrier to entry of any major CRM — the free tier with unlimited contacts lets teams validate fit before committing to a paid plan, according to G2 and Capterra reviewers.
  • Native integration between the CRM and sales engagement tools (sequences, email tracking, dialer) means no separate sync configuration, a theme across G2 Sales Hub reviews.
  • Pipeline visualization, deal tracking, and automated workflows are consistently praised as intuitive and easy to set up without developer involvement.
  • Strong onboarding for new team members — reviewers on Capterra and G2 highlight how quickly new reps become productive without formal training.
  • The HubSpot platform ecosystem (Marketing, Sales, Service, CMS hubs) allows growing companies to consolidate tools without building new integrations.

Object mapping

How Insightly CRM objects map to HubSpot

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

Insightly CRM

Contact

maps to

HubSpot

Contact

1:1
Fully supported

Direct 1:1 map. Insightly contacts become HubSpot contacts. Each contact's PRIMARY_ORG_ID resolves to a HubSpot CompanyId lookup. Contacts without an OrganizationId land in HubSpot as contacts without an associated company — flagged for review before the full migration commits. During the migration, any contacts that lack an organization link are logged in a review queue so your team can manually assign a company if needed before finalizing the data.

Insightly CRM

Organisation (Organization)

maps to

HubSpot

Company

1:1
Fully supported

Direct 1:1 map. Insightly Organisations map to HubSpot Companies. The ORGANISATION_ID becomes the reference for resolving Contact-to-Company associations during the contact migration phase. Parent-child Organisation hierarchies map to HubSpot's parent company field if your HubSpot account has that feature enabled.

Insightly CRM

Organisation Link (N:N contact-organization)

maps to

HubSpot

Company Association (secondary)

1:1
Fully supported

Insightly's contact-to-organisation link table is a pure N:N relationship with no limit. HubSpot stores one primary company on a contact and additional company associations via a separate association set. We migrate the most recently modified organisation link as the primary company and surface the rest as secondary HubSpot company associations. All links are preserved as a custom multi-select property for reference.

Insightly CRM

Opportunity

maps to

HubSpot

Deal

1:1
Fully supported

Direct 1:1 map at the record level. Insightly Opportunity fields (OPP_NAME, AMOUNT, STAGE, PROBABILITY, CLOSE_DATE, PIPELINE_ID, OWNER_USER_ID, CUSTOMFIELDS) map to HubSpot Deal properties (dealname, amount, dealstage, hubspot_owner_id, pipeline, closedate). Stage values require value-by-value mapping against your HubSpot pipeline's stage set.

Insightly CRM

Opportunity Contact Role

maps to

HubSpot

Deal Contact Association

1:1
Fully supported

Insightly stores a contact's role on an Opportunity as a ROLE field on the opportunity contact record (values like Decision Maker, Technical Champion, Influencer). HubSpot uses Deal Contact Associations with role labels. We map the Insightly role value to the equivalent HubSpot association label. Where no HubSpot label matches, we create a custom deal property to preserve the role.

Insightly CRM

Pipeline

maps to

HubSpot

Pipeline

1:1
Fully supported

Insightly Pipelines with stage names, probabilities, and stage-order maps translate to HubSpot Pipelines. Each HubSpot pipeline must be created in HubSpot first; we reference pipeline IDs during deal migration. Stage names map value-by-value to HubSpot stage labels in the target pipeline.

Insightly CRM

Project

maps to

HubSpot

Ticket (or Custom Object)

1:1
Fully supported

Insightly Projects have no native HubSpot equivalent. We assess your project's field structure and either map it to HubSpot Tickets (for simple project-tracking use cases) or a HubSpot custom object (for complex project schemas with multiple custom fields, linked records, or milestones). Your team decides before migration runs.

Insightly CRM

Task

maps to

HubSpot

Task

1:1
Fully supported

Direct 1:1 map for standard tasks. Insightly task fields (TITLE, BODY, DUE_DATE, OWNER_USER_ID, TASK_COMPLETED, REMINDER_ENABLED) map to HubSpot Task properties. Completed status, due date, and original owner are preserved. Tasks linked to Opportunities in Insightly are re-linked to the corresponding HubSpot Deal via the association API.

Insightly CRM

Note

maps to

HubSpot

Engagement (Note)

1:1
Fully supported

Insightly notes with body text and a linked record (Contact, Organisation, or Opportunity) migrate as HubSpot engagements of type note. The original body text, create date, and linked record association are preserved. If the note contains file attachments, we re-upload those to HubSpot Files and link them to the target contact, company, or deal.

Insightly CRM

Custom Object

maps to

HubSpot

Custom Object (or Ticket)

1:1
Fully supported

Insightly custom objects (Professional and Enterprise plans) map to HubSpot custom objects. Each custom object in HubSpot must be created before migration. If your Insightly custom object uses N:N associations to Contacts or Opportunities, we replicate those as HubSpot association entries via the custom object API. Simple custom objects with no complex associations may alternatively map to HubSpot Tickets.

Insightly CRM

Attachment / File

maps to

HubSpot

HubSpot Files

1:1
Fully supported

Files attached to Insightly contacts, organisations, or opportunities are downloaded from Insightly's file storage and re-uploaded to HubSpot Files. Each file is linked to its target record (Contact, Company, or Deal) in HubSpot. File size limits apply (HubSpot's default file size limit per attachment).

Insightly CRM

Workflow / Automation

maps to

HubSpot

HubSpot Workflows

1:1
Fully supported

Insightly workflow automations (triggers, conditions, and actions) are not transferable to HubSpot. We export your Insightly workflow definitions as a structured document so your HubSpot admin can rebuild them in HubSpot Workflows. The rebuild reference covers trigger events, condition branches, and action steps from each active workflow.

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.

Insightly CRM logo

Insightly CRM gotchas

High

Free plan record cap applies to all Insightly objects

High

API rate limits vary by plan and reset daily

Medium

Custom fields require FIELD_NAME lookup before writes

Medium

XML export only captures default fields for migrations out

Medium

Link relationships must be rebuilt via dedicated endpoints

HubSpot logo

HubSpot gotchas

High

Marketing Contacts billing model is migration-critical

High

Feature tier gating is not visible until onboarding

Medium

Mandatory onboarding fees inflate year-one cost

Medium

HubSpot CSV importer cannot migrate engagements or attachments

Medium

Custom objects require Enterprise and a pre-existing schema

Pair-specific challenges

  • HubSpot's association model requires a primary-company decision for every contact

    Insightly stores contact-to-organization relationships as a free N:N link table — a single contact can have five linked organisations with no primary designation. HubSpot assigns one primary company to a contact and stores additional companies in a secondary association set. If your Insightly data has contacts with multiple active organisation links, we need a rule to pick the primary (most-recently-modified link is the default; you can specify an alternative). Secondary links are preserved as HubSpot company associations, but the one-to-many mapping requires a deliberate choice before migration runs.

  • Insightly Opportunity Contact Roles must be rebuilt via HubSpot's Deal Contact Association API

    Insightly records a contact's role on an opportunity (Decision Maker, Technical Champion, Influencer) as a field on the opportunity contact link record. HubSpot uses a separate Deal Contact Associations mechanism with role labels. We map the most common Insightly role values to their HubSpot equivalents, but non-standard Insightly role labels that have no HubSpot match require a custom property on the Deal to preserve the data. This is surfaced in the pre-migration field mapping plan — your team confirms the mapping before the migration runs.

  • Insightly Projects have no native HubSpot object — migration requires a rebuild decision

    Insightly's Project object is a standard CRM object linked to Opportunities, Contacts, and Organisations with its own set of custom fields, milestones, and tasks. HubSpot has no equivalent. Projects can be migrated as HubSpot Tickets (for simple tracking needs), a HubSpot custom object (for complex project schemas with linked records), or archived as a static record with the project data preserved in a custom property. Each approach changes the field mapping and the downstream UX. We present all three options in the migration plan and your team makes the call before data moves.

  • Insightly workflow definitions must be rebuilt in HubSpot — automation logic does not transfer

    Insightly workflow automations (triggers, conditions, and actions defined in the Professional and Enterprise plans) are stored in Insightly's own automation engine with no export path to HubSpot's workflow schema. We document each active Insightly workflow — its trigger event, condition branches, and action steps — as a structured rebuild reference for your HubSpot admin. The rebuild work falls outside the data migration scope and must be planned separately. Priority tip from teams that have done this migration: rebuild your highest-revenue-impacting automations first, then work down the list.

  • API rate limits require migration throttling — large datasets need extended windows

    Insightly's API enforces 10 requests per second and a daily request limit that varies by plan (Gratis starts at 1,000 requests per day). HubSpot's normal tier allows 100 requests per second, but new portal integrations start at 25 requests per second. For datasets over 25,000 records, these limits mean the migration runs in batched cycles rather than a single pass. We paginate Insightly API responses and pace HubSpot API writes to stay within both platforms' limits. Large migrations with complex custom object schemas and N:N association rebuilding can extend the migration window to 7–10 days of active processing.

Migration approach

Six steps for a successful Insightly CRM to HubSpot data migration

  1. Audit Insightly data volume and build the field mapping plan

    FlitStack AI connects to Insightly via read-only API access (v3.1) to audit record counts across all objects — Contacts, Organisations, Opportunities, Projects, Tasks, Notes, and custom objects. We generate a data volume report and a field-level mapping spreadsheet that pairs every Insightly field with its HubSpot equivalent. For fields with no direct HubSpot match, we propose a custom property or a value-mapping rule. Your team reviews and approves the mapping plan before any data moves.

  2. Create HubSpot data structure and resolve owners

    Before records migrate, we create all required HubSpot custom properties, configure pipeline and stage IDs, and set up custom objects referenced in the mapping plan. Insightly user accounts are matched to HubSpot users by email address — unmatched owners are flagged so your team can either invite them to HubSpot or assign a fallback owner before migration. No record lands in HubSpot without a resolved owner.

  3. Migrate Organisations first, then Contacts, then Opportunities with association rebuild

    We sequence the migration to satisfy HubSpot's foreign-key requirements. Organisations migrate first and become HubSpot Companies. Contacts migrate next with PRIMARY_ORG_ID resolved to HubSpot CompanyId lookups; N:N organisation links surface as secondary HubSpot company associations. Opportunities migrate last with contact roles rebuilt via HubSpot's Deal Contact Association API. Projects migrate as HubSpot Tickets or a custom object per your team's pre-decided strategy.

  4. Run sample migration with field-level diff before full commit

    A representative slice — typically 100–500 records across Contacts, Companies, Deals, and a sample of Notes and Tasks — migrates first. We generate a field-level diff report comparing source values against HubSpot destination values, covering field-name mapping, pick-list value mapping, owner resolution, and association links. Your team reviews the diff and approves before the full migration commits. This sample validation ensures that all custom property names, pick-list options, and association types transfer correctly before committing the entire dataset.

  5. Execute full migration with delta-pickup window and audit log

    Full dataset migrates in dependency order. A delta-pickup window (typically 24–48 hours) captures any records created or modified in Insightly during the cutover period. Every operation is captured in an audit log — record counts per object, association links created, custom properties populated, and any records that failed to migrate with the reason for each failure. One-click rollback reverts all migrated records if reconciliation against the source data fails.

Platform deep dives

Context on both ends of the pair

Insightly CRM logo

Insightly CRM

Source

Strengths

  • CRM, marketing automation, and project management unified in one subscription, reducing tool sprawl for SMBs.
  • Free plan for 2 users and a 2,500-record cap provides a low-risk evaluation environment.
  • AppConnect delivers 500+ no-code integrations with mainstream business tools without requiring developer resources.
  • Modern UI with faster onboarding compared to legacy CRM alternatives, backed by positive ease-of-setup scores on G2.
  • Project creation directly from closed Opportunities keeps post-sale work connected to the originating deal.

Weaknesses

  • Workflow automation and AI Copilot require the Professional tier, making the Plus plan unsuitable for teams with automation needs.
  • Custom field handling requires FIELD_NAME API lookups, which adds complexity to integrations and migrations.
  • Setup time and reported timeouts during automation configuration create friction for new administrators.
  • Documentation is described as incomplete and overwhelming by power users, according to G2 review themes.
HubSpot logo

HubSpot

Destination

Strengths

  • Genuinely useful free CRM tier with no seat limit on contact records.
  • All-in-one sales engagement layer (sequences, email tracking, calling, dialer) embedded natively in the CRM, eliminating a separate integration.
  • Intuitive interface and fast onboarding for individual reps, per G2 and Capterra reviews.
  • Workflow automation triggers across contacts, deals, and tickets with a visual builder.
  • API coverage for all standard objects including custom objects at Enterprise tier.

Weaknesses

  • Pricing model is contact-based at the marketing layer — importing all records as marketing contacts can multiply the monthly bill by 4×.
  • Feature tier cliffs are frequent surprises: sequences, calling, advanced reporting, and quoting are all gated, often requiring plan upgrades mid-implementation.
  • Mandatory onboarding fees at Professional ($1,500) and Enterprise ($3,500) are not prominently disclosed on the pricing page.
  • API rate limits are restrictive for bulk migration — burst limits of 100-200 req/10sec and search endpoint limits of 4 req/sec require careful job queuing.
  • Custom objects, additional pipelines, and advanced forecasting are Enterprise-only, making cost projections difficult for growing teams.

Complexity grading

How hard is this migration?

Moderate CRM migration. 2 of 8 objects need a mapping; the rest are 1:1.

C

Overall complexity

Moderate migration

Derived from compatibility, mapping clarity, API constraints, and data volume across Insightly CRM and HubSpot.

  • Object compatibility

    B

    2 of 8 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

    8-object category — typical timelines run 2–7 days end-to-end.

  • API constraints

    C

    Insightly CRM: 10 requests per second; daily limit varies by plan (starting at 1,000 requests/day for free plan).

  • Data volume sensitivity

    B

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

Estimator

Estimate your Insightly CRM to HubSpot 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 Insightly CRM to HubSpot data migrations

Answers to the questions buyers ask most during Insightly CRM to HubSpot migration scoping. Not seeing yours? Book a call.

Can't find your answer?

Walk through your Insightly CRM to HubSpot migration with a real engineer — 30 minutes, free, written quote within 24 hours.

Book a free 30 minute consultation

Most Insightly-to-HubSpot migrations complete within 48–72 hours of active migration time for datasets under 25,000 total records. Larger datasets — particularly those with Projects that require custom object remapping or extensive N:N contact-organisation links — extend to 7–10 days. The mapping plan review and HubSpot schema setup add 3–5 business days before migration begins. The delta-pickup window (24–48 hours) runs after the full migration to capture final in-flight changes.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Insightly CRM.
Land in HubSpot, 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