CRM migration
Field-level mapping, validation, and rollback between AddressTwo and Freshsales. We move data and schema; workflows are rebuilt natively in Freshsales.
AddressTwo
Source
Freshsales
Destination
Compatibility
9 of 12
objects map 1:1 between AddressTwo and Freshsales.
Complexity
BStandard
Timeline
2-3 weeks
Overview
AddressTwo stores company information as fields on Contact records rather than as a separate object, while Freshsales uses Accounts as the canonical company record with Contacts linked via a lookup. We flatten AddressTwo company data into Freshsales Account records during scoping, then attach the corresponding Contact to each Account so the parent-child relationship is established before the first import batch closes. AddressTwo does not offer a self-service API or data export — we contact [email protected] on the customer's behalf to request a full account CSV export, and we supplement with manual field pulls where the export scope is incomplete. We de-duplicate contacts before import to address the known duplicate-creation issue in AddressTwo's email BCC sync. Freshsales workflows and automation rules do not migrate; we deliver a written inventory of every AddressTwo mass-email campaign and activity-logged item for the customer's admin to rebuild in Freshsales.
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 AddressTwo 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.
AddressTwo
Contact
Freshsales
Contact + Account
1:manyAddressTwo Contact records carry company name as a text field rather than a separate object. We extract the unique company names from AddressTwo Contact records, create corresponding Freshsales Account records, then re-link each Contact to its parent Account via AccountId before importing the Contact batch. The Contact.Email field serves as the dedupe key for import validation.
AddressTwo
Company (field)
Freshsales
Account
1:manyAll distinct company names collected from AddressTwo Contact.company fields create Freshsales Account records. Where multiple Contacts share the same company name, they link to the same Account. Account.Name is set from the extracted company value; any additional company fields (phone, website, address) from AddressTwo map to corresponding Account fields.
AddressTwo
Deal
Freshsales
Deal (Opportunity)
1:1AddressTwo Deals map directly to Freshsales Deals. We preserve deal name, deal value, stage, close date, and owner. The AddressTwo pipeline stages (New, Presentation Scheduled, Contract Sent, Closed Won, Closed Lost) map to Freshsales Deal stage values that we configure before migration. Owner is resolved via email lookup.
AddressTwo
Activity: Call
Freshsales
Task (Task Subtype = Call)
1:1AddressTwo logged calls map to Freshsales Task records with Task Subtype set to Call. Call duration in seconds, call notes, and call disposition text migrate as Task fields. The ActivityDate field on Task is set to the original AddressTwo timestamp to preserve the chronological activity timeline.
AddressTwo
Activity: Meeting
Freshsales
Event
1:1AddressTwo meeting records map to Freshsales Event. Start datetime, end datetime, location, and meeting title migrate as Event fields. The related Contact (WhoId) and Account (WhatId) are resolved from the Contact-to-Account mapping established during the Account creation phase.
AddressTwo
Activity: Task
Freshsales
Task
1:1AddressTwo tasks map directly to Freshsales Task records. Task subject, status (completed, pending, deferred), priority (high, medium, low), due date, and owner migrate as-is. Completed status from AddressTwo maps to Completed in Freshsales.
AddressTwo
Note
Freshsales
Note
1:1Free-text Notes attached to AddressTwo Contacts migrate as Freshsales Note records linked to the Contact via ContentDocumentLink. Note body migrates verbatim. Notes that reference a Deal in AddressTwo link to the corresponding Deal in Freshsales via WhatId.
AddressTwo
Email History (BCC thread)
Freshsales
Contact Activity Timeline
lossyAddressTwo email history stored as flattened BCC threads per Contact migrates as a Note record on the Contact with a marker field (hs_bcc_email_thread__c) indicating it is an imported thread. Individual email messages within the thread are preserved in chronological order within the note body. Freshsales does not create separate EmailMessage records for imported threads; the thread is presented as a consolidated activity entry.
AddressTwo
Tag
Freshsales
Label
1:1AddressTwo contact tags migrate as Freshsales Label values. Multiple tags on a single Contact become multiple Label assignments. Tags used for segmentation map to Freshsales segments during scoping if the customer prefers a list-based grouping approach.
AddressTwo
Mass Email Campaign Membership
Freshsales
Contact + Campaign
1:1Campaign membership — which Contacts were sent a mass email — migrates as Freshsales Campaign records with the Contact list attached as Campaign Members. Campaign names transfer verbatim. Campaign-level analytics (open rates, click rates) are not exported from AddressTwo and do not migrate; only the member list transfers.
AddressTwo
Custom Field
Freshsales
Custom Field
1:1AddressTwo custom fields on Contacts and Deals migrate as Freshsales custom fields. We create each custom field in Freshsales Admin Settings with the matching field type (text, number, date, picklist, multi-select) before migration. Custom field API names in Freshsales use the field label sanitized to a valid API name; the original AddressTwo field name is preserved in a description field for reference.
AddressTwo
Owner
Freshsales
User
1:1AddressTwo owner assignments on Contacts, Companies, Deals, and Activities map by email to Freshsales User records. Owners without a matching Freshsales User are placed in a reconciliation queue; the customer's Freshsales admin provisions the missing User before that owner batch imports.
| AddressTwo | Freshsales | Compatibility | |
|---|---|---|---|
| Contact | Contact + Account1:many | Fully supported | |
| Company (field) | Account1:many | Fully supported | |
| Deal | Deal (Opportunity)1:1 | Fully supported | |
| Activity: Call | Task (Task Subtype = Call)1:1 | Fully supported | |
| Activity: Meeting | Event1:1 | Fully supported | |
| Activity: Task | Task1:1 | Fully supported | |
| Note | Note1:1 | Fully supported | |
| Email History (BCC thread) | Contact Activity Timelinelossy | Fully supported | |
| Tag | Label1:1 | Fully supported | |
| Mass Email Campaign Membership | Contact + Campaign1:1 | Fully supported | |
| Custom Field | Custom Field1:1 | Fully supported | |
| Owner | User1: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.
AddressTwo gotchas
API requires approved key obtained via email to support
No self-service data export or bulk download
Duplicate contact creation during email sync
QuickBooks integration does not exist
No formally documented API rate limits
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 export request
We audit the AddressTwo account across Contact volume, Deal volume, activity log count, custom field definitions, tag usage, and mass email campaign count. Simultaneously, we send a support request to AddressTwo (on behalf of the customer) requesting a full account CSV export that includes Contacts, Deals, Activities, Notes, and campaign membership. We also ask whether an API key can be issued. The discovery output is a written scope document confirming record counts, a custom field inventory, and the export method (API or support-assisted CSV) that will be used.
Freshsales plan recommendation and schema setup
We recommend a Freshsales plan based on team size and feature requirements. Growth ($9/user) covers basic CRM with Contacts, Accounts, Deals, Tasks, and Events. Pro ($39/user) adds workflow automation, advanced reporting, and territory management. We provision custom fields in Freshsales Admin Settings to match the AddressTwo custom field inventory, configure the Deal pipeline with stages mapped from AddressTwo, and set up the user list for owner resolution. All schema changes happen in the production Freshsales account during this phase.
Account pre-creation from AddressTwo company fields
We extract all distinct company names from AddressTwo Contact.company fields and create Freshsales Account records in a pre-import phase. Additional company fields (phone, website, address) from AddressTwo populate the corresponding Account fields. Where multiple AddressTwo Contacts share the same company name, they link to the same Account. This phase establishes the parent-child relationship required for Contact import and must complete before any Contact records are loaded.
Contact de-duplication and import
We run a de-duplication pass on the AddressTwo Contact list using email address as the primary key. Contacts with identical email addresses are merged, keeping the record with the most complete field data. We then import the de-duplicated Contact list into Freshsales, resolving each Contact.AccountId by matching the Contact.company value to the Account created in the previous phase. Freshsales' own email dedupe key runs as a final validation on import. Tags and custom field values map to their Freshsales equivalents during this phase.
Deal, Activity, and Note migration
We import Deals with owner email resolved to Freshsales User, stage values mapped to the Freshsales Deal Status picklist, and close dates preserved. Activity records (Calls, Meetings, Tasks) import as Freshsales Task and Event records linked to the parent Contact and Account. Notes migrate as Freshsales Note records attached to the relevant Contact, Account, or Deal. Email BCC thread history migrates as a consolidated Note entry with a marker field indicating the original thread structure. We use the Freshsales bulk CSV import for activity records above 5,000 entries.
Cutover, reconciliation, and handoff
We freeze AddressTwo write access during cutover, run a final delta migration of any records modified during the migration window, then reconcile record counts between AddressTwo and Freshsales across Contacts, Accounts, Deals, Tasks, Events, and Notes. We spot-check 20-30 records for field-level accuracy. We deliver a written inventory of AddressTwo mass email campaigns and activity patterns that require Freshsales workflow rebuilds. We do not rebuild AddressTwo workflows or automation in Freshsales; that inventory is handed to the customer's admin for post-migration rebuild. A one-week hypercare window is available for reconciliation issues raised during the first week of production use.
Platform deep dives
AddressTwo
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 AddressTwo 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
AddressTwo: Not publicly documented.
Data volume sensitivity
AddressTwo 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 AddressTwo to Freshsales migration scoping. Not seeing yours? Book a call.
Walk through your AddressTwo 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 AddressTwo
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.