CRM migration
Field-level mapping, validation, and rollback between Insightly Marketing and Freshsales. We move data and schema; workflows are rebuilt natively in Freshsales.
Insightly Marketing
Source
Freshsales
Destination
Compatibility
6 of 10
objects map 1:1 between Insightly Marketing and Freshsales.
Complexity
BStandard
Timeline
2-4 weeks
Overview
Moving from Insightly Marketing to Freshsales is a migration shaped by format and limit differences that the native Freshsales import tool does not resolve. Freshsales built its Insightly migration around Insightly XML exports and static default-field mapping, which means custom fields are dropped and record volumes above 25,000 trigger off-peak processing. We bypass the native tool entirely: we extract from Insightly via CSV (per-category exports delivered by email), transform field values during a pre-load staging pass, and load directly into Freshsales via the Freshsales API or CSV import using typed field mapping. Workflow automation rules, email templates, and marketing automation configurations do not migrate through any path. We deliver a written inventory of every active Insightly Workflow and Email Template requiring rebuild in Freshsales or a replacement platform so the customer's admin has a complete action list at cutover.
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 Insightly Marketing object lands in Freshsales, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
Insightly Marketing
Contact
Freshsales
Contact
1:1Insightly Contact records map to Freshsales Contact. Standard fields (name, email, phone, address, title) migrate directly. We map lifecycle stage to a Freshsales custom Contact property since Freshsales does not have an equivalent native Lifecycle Stage field. Owner assignment (Insightly user to Freshsales user) resolves by email match. Custom fields migrate as Freshsales custom properties after the customer creates them in Freshsales admin settings, which is a pre-import step we coordinate.
Insightly Marketing
Organization
Freshsales
Organization (Account)
1:1Insightly Organization records map to Freshsales Organization (the account object). Organization name, domain, industry, phone, address, and annual revenue migrate directly. Organization-to-Organization relationships migrate as Freshsales custom association records if the customer uses them. Custom organization fields migrate as Freshsales custom Organization properties.
Insightly Marketing
Lead
Freshsales
Lead
1:1Insightly Lead records map to Freshsales Lead. Lead status, source, rating, and owner assignment migrate directly. Insightly lead scores and any custom lead fields migrate as Freshsales custom Lead fields. Leads in Freshsales can coexist with Contacts from the same migration; the customer decides during scoping whether to merge converted leads or keep them separate for reporting purposes.
Insightly Marketing
Opportunity
Freshsales
Deal
1:1Insightly Opportunity records map to Freshsales Deal. Deal name, amount, stage, probability, expected close date, and owner assignment migrate directly. Pipeline names from Insightly map to Freshsales pipeline assignments; if Insightly used multiple pipelines, we consolidate to Freshsales single-pipeline structure and document the original pipeline assignment in a custom Deal field. Custom opportunity fields migrate as Freshsales custom Deal properties.
Insightly Marketing
Project
Freshsales
Task (with Project grouping)
1:manyInsightly Projects do not have a native equivalent in Freshsales CRM. We handle this in one of two ways depending on the customer's scope: either Projects migrate as a custom Freshsales Object (Freshsales Enterprise allows custom objects) with all standard project fields as custom properties, or the project records are decomposed into Freshsales Tasks with a custom Project Name field and milestone tasks grouped by parent-project reference. The approach is chosen during scoping based on Freshsales tier and the customer's reporting needs for project data post-migration.
Insightly Marketing
Task
Freshsales
Task
1:1Insightly Task records map to Freshsales Task. Due date, priority, status, description, and owner assignment migrate directly. The related-to reference (Contact, Organization, Opportunity, or Project) migrates as a Freshsales custom Task property because Freshsales Task does not natively support a polymorphic WhatId equivalent. Task ownership resolves by email match against Freshsales User records.
Insightly Marketing
Note (Comment)
Freshsales
Note
1:1Insightly Comments (both task-linked and standalone) migrate to Freshsales Note records. Note body content, created date, and owner assignment migrate directly. We link Notes to the parent Contact, Organization, or Deal using Freshsales Note association fields. If Notes contain attachment references, we flag these for manual file re-upload post-migration because Insightly attachment URLs are not portable across platforms.
Insightly Marketing
Custom Object
Freshsales
Custom Object (Enterprise) or custom fields on standard objects
lossyInsightly Custom Objects require schema discovery before migration because field names, field types, and relationships are unique to each Insightly instance. For Freshsales Enterprise, we create matching custom object schemas in Freshsales before import. For Growth and Pro tiers, we map custom object fields as additional custom properties on the closest standard object (for example, a Project-equivalent custom object with a Contact lookup maps to Freshsales custom fields on Contact with a text reference field). This is a scoping-phase decision based on Freshsales tier.
Insightly Marketing
Custom Fields
Freshsales
Custom Fields
lossyInsightly custom fields on any standard object (Contacts, Organizations, Opportunities, Projects, Tasks) migrate to Freshsales custom properties on the corresponding object. The customer creates the custom property definitions in Freshsales Admin Settings before migration begins; we provide the exact field name, field type, and sample values during schema discovery so this can be done in advance. We flag any Insightly validation rules that may restrict what values can be imported into Freshsales custom fields of equivalent type.
Insightly Marketing
Tag
Freshsales
Tag
lossyInsightly Tags on Contacts, Organizations, Opportunities, and Projects migrate to Freshsales Tags. We extract the tag names per record and re-apply them as Freshsales native tags using the Freshsales tag API. If the customer uses tags as a segmentation or scoring mechanism rather than simple labels, we document the tag taxonomy during scoping and flag any tag logic that should be represented as custom fields or Deal properties in Freshsales.
| Insightly Marketing | Freshsales | Compatibility | |
|---|---|---|---|
| Contact | Contact1:1 | Fully supported | |
| Organization | Organization (Account)1:1 | Fully supported | |
| Lead | Lead1:1 | Fully supported | |
| Opportunity | Deal1:1 | Fully supported | |
| Project | Task (with Project grouping)1:many | Fully supported | |
| Task | Task1:1 | Fully supported | |
| Note (Comment) | Note1:1 | Fully supported | |
| Custom Object | Custom Object (Enterprise) or custom fields on standard objectslossy | Fully supported | |
| Custom Fields | Custom Fieldslossy | Mapping required | |
| Tag | Taglossy | 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.
Insightly Marketing gotchas
All-in-One bundles carry mandatory setup fees not visible in per-user pricing
CSV export is per-category and email-delivered, not a single bulk pull
Workflow automation rules are not accessible via API or CSV export
Email templates export in non-standardized format requiring rebuild
Custom object schemas vary per customer implementation
Freshsales gotchas
Freddy AI is Pro-tier only despite heavy marketing
Post-migration emails and sequences are disabled
Bot session credits are a one-time 500-session allocation
Phone credits charged per minute with no cap
File storage limits scale with plan tier
Pair-specific challenges
Migration approach
Discovery and scoping
We audit the Insightly environment across plan tier (Plus, Professional, or Enterprise All-in-One), record counts per object (Contacts, Organizations, Leads, Opportunities, Projects, Tasks), custom field groups, custom objects, active workflow count, and email template inventory. We confirm the Freshsales destination tier (Free, Growth, Pro, or Enterprise) and identify whether custom objects are supported. We document the custom field schema per object and flag any Insightly field validation rules that may restrict import into Freshsales. The discovery output is a written scoping document with record counts, custom field list, workflow inventory, and a recommended Freshsales tier based on the data model requirements.
CSV export coordination and file assembly
Insightly CSV exports are initiated per data category and delivered by email. We coordinate multiple export sessions, receive files via connected inbox rules, and assemble them into a unified staging dataset. We validate file completeness (row counts per category, presence of all expected fields including custom fields) before proceeding. If any export emails are missing, we trigger a re-export. This step is more manual than API-driven due to Insightly's email-based export delivery, but it captures the full dataset including custom field values that the Freshsales XML path would drop.
Custom field schema creation in Freshsales
Before any data loads into Freshsales, the customer creates custom field definitions in Admin Settings that match the Insightly custom fields we identified during discovery. We provide a field creation guide specifying exact field names (matching Insightly API names where possible), field types, and picklist values for each custom field. This step must be completed by the customer (it requires Freshsales admin access) before we begin data loading. We confirm field creation completeness before proceeding.
User and owner mapping
We extract all distinct Insightly users referenced as record owners and map them to Freshsales users by email address. The customer provisions Freshsales users (Admin Settings > Users) with matching email addresses before migration begins. We flag any Insightly user without a matching Freshsales user for manual provisioning. Owner resolution must be complete before Contacts, Organizations, Opportunities, and Tasks are loaded because OwnerId is a required reference on most standard objects in Freshsales.
Data loading in dependency order
We load data into Freshsales in dependency order: Organizations (first, as the account object), then Contacts (with OrganizationId resolved), Leads, Opportunities (with ContactId/AccountId and OwnerId resolved), Tasks (with related-to references resolved), and Notes (linked to parent records). Custom objects load last if the Freshsales tier supports them, after standard object foreign keys are established. We use Freshsales CSV import for standard objects and the Freshsales API for custom objects and complex field types. Each phase emits a row-count reconciliation report before the next phase begins.
Cutover, validation, and workflow handoff
We freeze Insightly write access during cutover, run a final delta migration of any records modified during the migration window, then enable Freshsales as the system of record. We deliver the Workflow and Email Template Recreation Checklist to the customer's admin team, documenting every active Insightly workflow trigger, condition, and action with a recommended Freshsales Workflow equivalent. We support a 5-business-day post-cutover window where we resolve data quality issues raised by the sales team. We do not rebuild Insightly Workflows as Freshsales Workflows inside the migration scope.
Platform deep dives
Insightly Marketing
Source
Strengths
Weaknesses
Freshsales
Destination
Strengths
Weaknesses
Complexity grading
Standard CRM migration. 3 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 Insightly Marketing and Freshsales.
Object compatibility
3 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
Insightly Marketing: Not publicly documented; Insightly does not publish explicit rate limits in its developer documentation.
Data volume sensitivity
Insightly Marketing 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 Insightly Marketing to Freshsales migration scoping. Not seeing yours? Book a call.
Walk through your Insightly Marketing to Freshsales migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave Insightly Marketing
Other ways to arrive at Freshsales
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.