CRM migration
Field-level mapping, validation, and rollback between CompanyHub CRM and Freshsales. We move data and schema; workflows are rebuilt natively in Freshsales.
CompanyHub CRM
Source
Freshsales
Destination
Compatibility
9 of 10
objects map 1:1 between CompanyHub CRM and Freshsales.
Complexity
BStandard
Timeline
2-4 weeks
Overview
Moving from CompanyHub CRM to Freshsales is a migration between two SMB-focused platforms with different data models. CompanyHub organizes data around Contacts, Companies, Deals, Custom Tables, and UTrons workflow automations; Freshsales mirrors these with Contacts, Accounts, Deals (Opportunities), Custom Objects, and automation rules. The structural difference that drives most of the mapping work is CompanyHub's Custom Tables versus Freshsales' Custom Objects: Custom Tables in CompanyHub require pre-provisioning the destination schema with matching fields and data types before any row data imports. We sequence the migration by Contacts and Companies first (so Account lookups are resolved), then Deals and pipeline stages, then Custom Table rows, then historical Tasks and email activity as timeline entries. CompanyHub UTrons workflow logic does not survive migration; we document every Utron during discovery and provide a rebuild specification for Freshsales automation rules. Workflows, sequences, automations, and Forms do not migrate as code.
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 CompanyHub CRM 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.
CompanyHub CRM
Contact
Freshsales
Contact
1:1CompanyHub Contacts map directly to Freshsales Contacts. Standard fields (name, email, phone, title, address) transfer as typed equivalents. Unlimited custom fields on Contacts migrate to Freshsales custom contact fields. We use email as the dedupe key during import. The original CompanyHub contact ID is preserved in a custom field chub_original_id__c for reconciliation.
CompanyHub CRM
Company
Freshsales
Account
1:1CompanyHub Companies map to Freshsales Accounts. The company domain name maps to the Account Website field. Account is created before Contact import so that the Account lookup is satisfied at the moment of Contact insert. We use company name as the dedupe key.
CompanyHub CRM
Deal
Freshsales
Deal
1:1CompanyHub Deals map to Freshsales Deals. Deal amount, close date, stage name, and pipeline assignment transfer. We map the CompanyHub dealstage property to Freshsales Deal Stage. Closed-won and closed-lost statuses and associated reasons migrate to Freshsales deal status fields.
CompanyHub CRM
Pipeline Stages
Freshsales
Deal Stages
lossyEach CompanyHub pipeline stage name and probability percentage maps to a corresponding Freshsales deal stage. We configure the Freshsales deal pipeline with matching stage names and probability weights before Deal import. Stage ordering is preserved per the original CompanyHub pipeline sequence.
CompanyHub CRM
Task
Freshsales
Task
1:1CompanyHub Tasks migrate to Freshsales Tasks with due date, priority, status, and assigned owner preserved. Tasks linked to Contacts carry the Contact lookup. Tasks auto-generated by UTrons migrate as standard tasks; we flag these in the deliverable so the customer can validate or rebuild automation rules in Freshsales.
CompanyHub CRM
Custom Table
Freshsales
Custom Object
1:1CompanyHub Custom Tables (Properties, Payments, Courses, etc.) map to Freshsales Custom Objects. This requires pre-provisioning the destination schema during discovery: we capture the Custom Table field layout from CompanyHub documentation, create matching Custom Object fields in Freshsales with equivalent data types, then import row data. We use the Custom Table's primary key as the dedupe key in Freshsales.
CompanyHub CRM
Quote
Freshsales
Quote
1:1CompanyHub Quotes (Sales Order and Quote documents) migrate to Freshsales Quotes if the destination Freshsales plan supports them (Professional and above). Quote line items, totals, and template references transfer. Signed Quote PDFs migrate as attachments to the associated Deal.
CompanyHub CRM
User / Owner
Freshsales
User
1:1CompanyHub Users map to Freshsales Users. We match by email address as the primary key. Any CompanyHub Owner referenced on a record but without a matching Freshsales User is held in a reconciliation queue for the customer admin to provision before record import resumes.
CompanyHub CRM
Activity: Email
Freshsales
Activity (Timeline entry)
1:1CompanyHub email activity records migrate to Freshsales Activity timeline entries linked to the parent Contact. Note that CompanyHub API may return only email metadata (timestamp, recipient, open status) without full message body in some cases. We flag any gaps in email body content during scoping and inform the customer before migration begins.
CompanyHub CRM
Activity: Note
Freshsales
Note
1:1CompanyHub Notes migrate to Freshsales Notes linked to the parent Contact, Account, or Deal. Rich text formatting in notes transfers where the API payload supports it. Notes without a resolvable parent record are held for customer review.
| CompanyHub CRM | Freshsales | Compatibility | |
|---|---|---|---|
| Contact | Contact1:1 | Fully supported | |
| Company | Account1:1 | Fully supported | |
| Deal | Deal1:1 | Fully supported | |
| Pipeline Stages | Deal Stageslossy | Mapping required | |
| Task | Task1:1 | Fully supported | |
| Custom Table | Custom Object1:1 | Fully supported | |
| Quote | Quote1:1 | Fully supported | |
| User / Owner | User1:1 | Fully supported | |
| Activity: Email | Activity (Timeline entry)1:1 | Fully supported | |
| Activity: Note | Note1: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.
CompanyHub CRM gotchas
Admin-only export gate blocks non-admin migration scoping
Custom Table schema is not self-describing in the API
UTrons workflow logic does not survive migration
API key cap of 5 limits concurrent migration jobs
Email body content may be truncated in activity API responses
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 schema documentation
We audit the source CompanyHub account for Contacts, Companies, Deals, Custom Tables, pipeline stages, UTrons automations, and activity volume. We review Freshsales plan tier to confirm Custom Object support (available from Professional tier upward). We request Custom Table documentation from the customer and document every active Utron with trigger and action details. The discovery output is a written migration scope, a Custom Table-to-Custom Object mapping plan, and a Utron inventory requiring rebuild.
Destination schema pre-provisioning
We create the Freshsales Custom Objects matching the CompanyHub Custom Table schemas, including all field definitions with equivalent data types (text, number, date, picklist, currency, lookup). We configure the Freshsales deal pipeline with stage names and probability weights matching the CompanyHub pipeline. We set up any required custom fields on standard objects (Contacts, Accounts, Deals). Schema is provisioned in the production Freshsales org or a sandbox environment for validation before record import.
Sandbox migration and reconciliation
We run a full migration into the destination Freshsales sandbox using production-like data volume. The customer reconciles record counts (Contacts in, Accounts in, Deals in, Custom Object rows in, Activities in), spot-checks 20-30 random records against the CompanyHub source, and signs off the schema and mapping before production migration begins. Any field mapping corrections or schema gaps identified here are resolved before production cutover.
Production migration in dependency order
We run production migration in record-dependency order: Accounts (from CompanyHub Companies) first, then Contacts (with AccountId resolved), then Deals (with pipeline stage mapping applied), then Custom Object rows (with pre-provisioned schema), then Tasks and email activity as timeline entries. Each phase emits a row-count reconciliation report before the next phase begins. Owner resolution by email prevents orphaned records.
Cutover, validation, and Utron rebuild handoff
We freeze CompanyHub writes 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 Utron inventory document with Freshsales Automation Rule rebuild specifications to the customer admin. We support a one-week hypercare window for reconciliation issues. We do not rebuild Utrons as Freshsales automation rules inside the migration scope; that is a separate engagement or an internal admin task.
Platform deep dives
CompanyHub CRM
Source
Strengths
Weaknesses
Freshsales
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 CompanyHub CRM and Freshsales.
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
CompanyHub CRM: Not publicly documented.
Data volume sensitivity
CompanyHub CRM 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 CompanyHub CRM to Freshsales migration scoping. Not seeing yours? Book a call.
Walk through your CompanyHub CRM 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 CompanyHub CRM
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.