CRM migration
Field-level mapping, validation, and rollback between eSalesTrack and Salesforce Sales Cloud. We move data and schema; workflows are rebuilt natively in Salesforce Sales Cloud.
eSalesTrack
Source
Salesforce Sales Cloud
Destination
Compatibility
9 of 12
objects map 1:1 between eSalesTrack and Salesforce Sales Cloud.
Complexity
CModerate
Timeline
3-5 weeks
Overview
Moving from eSalesTrack to Salesforce Sales Cloud is a structural migration from an entry-level, single-tier CRM to the dominant enterprise sales platform. eSalesTrack organizes data around Leads, Contacts, Accounts, and Opportunities with basic pipeline management and CSV-based export at the account level. Salesforce uses the same four core objects but adds record types, sales processes, field-level security, and a multi-tier licensing model (Professional at $80/user, Enterprise at $165/user, Unlimited at $330/user) that scales to complex multi-divisional sales organizations. The primary migration challenge is eSalesTrack's account-level CSV export constraint: any child records (Contacts, Opportunities, Activities) must be resolved against the parent Account during extraction and re-associated using Salesforce lookup IDs during load. We handle that resolution through a staged extract-transform-load process with a reconciliation manifest. Workflow automation and social selling pipeline features do not migrate as code; we deliver a written inventory of every active workflow requiring rebuild in Salesforce Flow. The destination Salesforce edition is selected during discovery based on custom object requirements, pipeline complexity, and integration depth.
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 eSalesTrack object lands in Salesforce Sales Cloud, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
eSalesTrack
Lead
Salesforce Sales Cloud
Lead
1:1eSalesTrack Lead records map directly to Salesforce Lead. The eSalesTrack lead status property maps to Salesforce LeadStatus. Any lead score or qualification data from eSalesTrack custom fields migrates to a custom field esalestrack_lead_score__c on Salesforce Lead. Owner assignment resolves by matching the eSalesTrack owner email against the Salesforce User table.
eSalesTrack
Contact
Salesforce Sales Cloud
Contact
1:1eSalesTrack Contact records map to Salesforce Contact. Each Contact requires an AccountId lookup, which is resolved during the extract phase by matching the Contact's parent Account name against the eSalesTrack Account data. If the Account does not exist in Salesforce yet, the Contact import waits for the Accounts phase to complete. Phone, email, title, and address fields map directly by name.
eSalesTrack
Account
Salesforce Sales Cloud
Account
1:1eSalesTrack Account records map directly to Salesforce Account. The AccountName field maps to Name, and the eSalesTrack website field maps to Website. Account is created first in the migration sequence so that Contacts can resolve their AccountId lookups. Any billing or shipping address data migrates to the corresponding Account address fields.
eSalesTrack
Opportunity
Salesforce Sales Cloud
Opportunity
1:1eSalesTrack Opportunity records map to Salesforce Opportunity. The eSalesTrack pipeline stage maps to Salesforce StageName, and the eSalesTrack pipeline name maps to a Salesforce Record Type on Opportunity. If eSalesTrack uses multiple pipelines, we configure a corresponding Record Type and Sales Process in Salesforce before migration begins. Closed-Lost and Closed-Won dates migrate to CloseDate and IsClosed flags.
eSalesTrack
Pipeline
Salesforce Sales Cloud
Record Type + Sales Process
lossyEach eSalesTrack pipeline becomes a Salesforce Record Type on Opportunity with a corresponding Sales Process that whitelists the relevant stage values. Stage probability percentages migrate from eSalesTrack to Salesforce StageProbability. Page Layouts are assigned per Record Type so that the pipeline-specific fields surface for the relevant sales team.
eSalesTrack
Owner
Salesforce Sales Cloud
User
1:1eSalesTrack Owner references on Lead, Contact, Account, and Opportunity resolve by email match against the Salesforce destination org's User table. Any eSalesTrack Owner without a matching Salesforce User enters a reconciliation queue. The customer's admin provisions missing Users before the corresponding records load. This is a blocking dependency: Opportunity and Contact imports cannot complete without resolved OwnerId values.
eSalesTrack
Activity: Task
Salesforce Sales Cloud
Task
1:1eSalesTrack task records (including calls and standard tasks) map to Salesforce Task. Task.Status, Priority, and ActivityDate preserve directly. Call tasks use TaskSubtype=Call with CallDurationInSeconds in a custom field if that data is present in the eSalesTrack export. Activity timeline ordering is preserved by setting ActivityDate to the original eSalesTrack timestamp.
eSalesTrack
Activity: Meeting
Salesforce Sales Cloud
Event
1:1eSalesTrack meeting records map to Salesforce Event. StartDateTime, EndDateTime, and Location preserve directly. If attendee data is present in the eSalesTrack export, we create EventRelation records linking the Event to the corresponding Salesforce Contact or Lead by matching the attendee email.
eSalesTrack
Activity: Note
Salesforce Sales Cloud
Note
1:1eSalesTrack notes migrate to Salesforce Note records. If eSalesTrack stores notes as rich text with attachments, the body migrates as rich text and the attachments migrate as ContentDocument records linked via ContentDocumentLink to the parent record (Lead, Contact, Account, or Opportunity). Note ordering preserves the original eSalesTrack timestamp as SystemModstamp.
eSalesTrack
Activity: Email
Salesforce Sales Cloud
EmailMessage + Task
1:1eSalesTrack email engagements migrate to Salesforce EmailMessage records (the email content) linked to a Task record (the activity timeline entry). The WhoId on the Task points to the Lead or Contact; the WhatId points to the related Opportunity or Account. Email body and subject migrate directly; attachments migrate as ContentDocument records linked to the EmailMessage.
eSalesTrack
Custom Field (Contact)
Salesforce Sales Cloud
Custom Field (Contact)
lossyAny eSalesTrack custom fields on Contact not present in the standard field set are created in Salesforce before Contact migration begins. Field types are mapped: text fields become Text, date fields become Date, numeric fields become Number, and picklist fields become Picklist. Custom field API names follow Salesforce __c convention prefixed with es_ to avoid collision.
eSalesTrack
Custom Field (Opportunity)
Salesforce Sales Cloud
Custom Field (Opportunity)
lossyeSalesTrack custom fields on Opportunity are created in Salesforce as custom Opportunity fields before the Opportunity migration phase. Pipeline-specific custom fields are assigned to the corresponding Record Type's Page Layout. Validation rules on custom fields are documented separately and either disabled during load or set to skip validation for the migration user context.
| eSalesTrack | Salesforce Sales Cloud | Compatibility | |
|---|---|---|---|
| Lead | Lead1:1 | Fully supported | |
| Contact | Contact1:1 | Fully supported | |
| Account | Account1:1 | Fully supported | |
| Opportunity | Opportunity1:1 | Fully supported | |
| Pipeline | Record Type + Sales Processlossy | Fully supported | |
| Owner | User1:1 | Fully supported | |
| Activity: Task | Task1:1 | Fully supported | |
| Activity: Meeting | Event1:1 | Fully supported | |
| Activity: Note | Note1:1 | Fully supported | |
| Activity: Email | EmailMessage + Task1:1 | Fully supported | |
| Custom Field (Contact) | Custom Field (Contact)lossy | Fully supported | |
| Custom Field (Opportunity) | Custom Field (Opportunity)lossy | 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.
eSalesTrack gotchas
Implementation, training, customisation, and migration are billed separately
Custom object support is not publicly documented
Reporting templates are fixed — advanced analytics require external BI
Salesforce Sales Cloud gotchas
Workflow Rules and Process Builder are retired
Bulk API batch quota exhaustion during large imports
Storage overage billing is non-obvious
Account-Contact many-to-many relationship mapping
Territory and team member import ordering dependencies
Pair-specific challenges
Migration approach
Discovery and eSalesTrack data audit
We audit the eSalesTrack instance for record counts across Lead, Contact, Account, Opportunity, and Activity objects; pipeline count and stage definitions; active workflow count; custom field inventory; owner list; and data export history. We also assess the CSV export capability: whether exports run at the account level, whether child records are embedded or referenced, and whether the export supports scheduled or one-time runs. This audit produces a written migration scope that identifies the account-centric extraction risk and any child-record correlation requirements.
Account-centric extraction design
Because eSalesTrack exports at the account level, we design a multi-pass extraction strategy. First pass extracts Account records with internal IDs. Second pass extracts Contact records with parent Account correlation (via eSalesTrack internal IDs or account name lookup). Third pass extracts Opportunity records with parent Account correlation. Fourth pass extracts Activity records (tasks, events, emails, notes) with WhoId and WhatId resolution. Each pass emits a row count and a parent-lookup success rate. Any record with an unresolved parent is held in a queue for manual resolution by the customer's eSalesTrack admin.
Sandbox migration and reconciliation
We run a full migration into a Salesforce Sandbox (Full Copy or Partial Copy) using production-equivalent data volume. The customer's RevOps lead reconciles record counts against the eSalesTrack source (Accounts in, Contacts in, Opportunities in, Activities in), spot-checks 25-50 records for field-level accuracy, and validates that owner assignments resolved correctly by email. Schema corrections (missing custom fields, incorrect field types, Record Type configuration) happen in the Sandbox before production migration begins.
Owner reconciliation and User provisioning
We extract every distinct eSalesTrack Owner referenced on any migrating record and match by email against the Salesforce destination org's User table. Owners without a matching User enter a reconciliation queue. The customer's Salesforce admin provisions missing Users before record import resumes. This step is blocking: Contact, Lead, Account, and Opportunity imports all require resolved OwnerId values, and Activities require resolved WhoId and WhatId lookups.
Production migration in dependency order
We run production migration in record-dependency order: Accounts first (from eSalesTrack parent export), then Leads (direct 1:1), then Contacts (with AccountId resolved from the Account pass), then Opportunities (with AccountId and OwnerId resolved), then Activities (Tasks, Events, EmailMessages via Bulk API 2.0 for high-volume activity histories, Notes last). Each phase emits a row-count reconciliation report before the next phase begins. Bulk API 2.0 with batch chunking and exponential backoff handles large activity volumes without timeout errors.
Cutover, validation, and workflow handoff
We freeze eSalesTrack writes during cutover, run a final delta migration of any records created or modified during the migration window, then enable Salesforce as the system of record. We deliver the Workflow and social selling pipeline inventory document to the customer's admin team. We support a one-week hypercare window where we resolve any reconciliation issues raised by the customer's sales team. We do not rebuild eSalesTrack workflows as Salesforce Flow inside the migration scope; that is a separate engagement.
Platform deep dives
eSalesTrack
Source
Strengths
Weaknesses
Salesforce Sales Cloud
Destination
Strengths
Weaknesses
Complexity grading
Moderate CRM migration. 1 of 8 objects need a manual workaround.
Overall complexity
Moderate migration
Derived from compatibility, mapping clarity, API constraints, and data volume across eSalesTrack and Salesforce Sales Cloud.
Object compatibility
1 of 8 objects need a manual workaround.
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
eSalesTrack: Not publicly documented.
Data volume sensitivity
eSalesTrack 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 eSalesTrack to Salesforce Sales Cloud migration scoping. Not seeing yours? Book a call.
Walk through your eSalesTrack to Salesforce Sales Cloud migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave eSalesTrack
Other ways to arrive at Salesforce Sales Cloud
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.