CRM migration
Field-level mapping, validation, and rollback between Merlin and Freshsales. We move data and schema; workflows are rebuilt natively in Freshsales.
Merlin
Source
Freshsales
Destination
Compatibility
4 of 8
objects map 1:1 between Merlin and Freshsales.
Complexity
CModerate
Timeline
2-3 weeks
Overview
Merlin is a browser-extension AI assistant, not a CRM. It has no native contacts, accounts, deals, pipelines, or task objects. The migration from Merlin to Freshsales is therefore not a traditional record-for-record migration but a document-intelligence and entity-extraction engagement: we parse Merlin's uploaded PDFs, PowerPoints, and Word files for person and company names, structure those entities as Freshsales Contacts and Accounts, and attach the source documents as Freshsales Notes with the Document Chat Q&A pairs preserved. User account metadata from Merlin maps to Freshsales Users. We do not migrate workflows, automations, or sequences because Merlin has no equivalent features to represent them. The destination Freshsales instance must have the appropriate plan—Growth at $9 per user per month covers Contacts, Accounts, and one pipeline; Pro at $39 per user per month unlocks duplicate management, multiple pipelines, and Freddy AI scoring. Timeline runs two to four weeks for scoped entity extraction of up to 5,000 documents and 10,000 entity matches.
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 Merlin 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.
Merlin
User Account
Freshsales
User
1:1Merlin user account metadata (email address, plan tier, usage quota) maps to Freshsales User records. We retrieve this from Merlin account settings during scoping. Owner assignment for CRM records in Freshsales is set by matching the Merlin user email to the Freshsales User email; any users without a Freshsales match go to a provisioning queue for the customer's admin.
Merlin
Conversation Thread
Freshsales
Note
1:manyMerlin conversation threads migrate as Freshsales Note records attached via ContentDocumentLink to the related Contact, Account, or Deal. Each conversation maps to one Note with the thread text preserved. Thread-level metadata such as per-turn model attribution and token counts are not exported from Merlin and are flagged as permanently unavailable during scoping.
Merlin
Uploaded Document
Freshsales
ContentDocument (Attachment)
1:1PDF, PowerPoint, and Word files uploaded to Merlin Document Chat migrate as Freshsales ContentDocument records linked to the parent Contact or Account extracted from the document. Free-tier uploads limited to 10 pages may have been truncated; we flag any truncated documents during ingestion and alert the customer so they can re-upload complete versions if needed.
Merlin
Document Chat Q&A Pair
Freshsales
Note (on parent record)
lossyMerlin Document Chat question-and-answer pairs migrate as Freshsales Note records attached to the same parent ContentDocument. Each Q&A pair is stored as a structured Note with the question in the Note Title and the answer in the Note Body, preserving the query context for audit and review.
Merlin
Entity: Person (extracted)
Freshsales
Contact
lossyPerson names identified within Merlin-uploaded documents through entity extraction migrate as Freshsales Contact records. We run named-entity recognition on document text during the extraction phase, deduplicate by email address where available, and map job title, company affiliation, and phone where found in document text. Contacts without an email address are created as partial records with a source tag of 'Merlin Extraction' for manual enrichment.
Merlin
Entity: Company (extracted)
Freshsales
Account
lossyCompany and organization names identified within Merlin-uploaded documents migrate as Freshsales Account records. We run entity extraction on document headers, signature blocks, and body text to identify company names, map them to Freshsales Account with inferred industry where determinable from document context, and link extracted Contact records to the parent Account via the Account Lookup.
Merlin
Image Generation Output
Freshsales
ContentDocument
1:1Image files generated by Merlin's image generation feature migrate as Freshsales ContentDocument records attached to the related Contact, Account, or Deal where the image context is determinable from the conversation thread. Image files without a clear parent relationship attach to a system-level 'Merlin Outputs' folder in Freshsales for manual reorganization.
Merlin
No equivalent
Freshsales
Deal / Opportunity
1:1Merlin has no deal, opportunity, or pipeline data. Freshsales Deals must be created from scratch in the destination CRM. We provide a written pipeline design template based on the customer's sales process description during scoping, but deal records are not migrated—they are created by the customer's sales team post-migration or through a separate implementation engagement.
| Merlin | Freshsales | Compatibility | |
|---|---|---|---|
| User Account | User1:1 | Fully supported | |
| Conversation Thread | Note1:many | Fully supported | |
| Uploaded Document | ContentDocument (Attachment)1:1 | Fully supported | |
| Document Chat Q&A Pair | Note (on parent record)lossy | Fully supported | |
| Entity: Person (extracted) | Contactlossy | Fully supported | |
| Entity: Company (extracted) | Accountlossy | Fully supported | |
| Image Generation Output | ContentDocument1:1 | Fully supported | |
| No equivalent | Deal / Opportunity1: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.
Merlin gotchas
No public API for automated export
Document upload limit differences by tier are migration-critical
Conversation metadata is not exported
No contacts or CRM objects means context must be rebuilt
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
Manual export guidance and document corpus scoping
We guide the customer through the Merlin manual export process: navigating to account settings, exporting conversation history as JSON or CSV, and downloading the full document corpus from the Merlin dashboard. We also capture Merlin user account metadata (email, plan tier, usage quota) for Freshsales User provisioning. This step requires the customer to have active Merlin access and is completed before account closure.
Entity extraction from document corpus
We run named-entity recognition on all downloaded Merlin documents (PDF, PPT, Word) to identify person names, company names, email addresses, phone numbers, and job titles. We deduplicate extracted entities by email address, merge duplicates across multiple documents, and produce a structured entity list with source document reference and confidence score. This step typically takes three to five business days depending on document corpus size.
Freshsales schema preparation and entity mapping
We create the Freshsales schema before any data import: provisioning Users matched to Merlin account emails, configuring Contact and Account fields to receive extracted entities, and setting up the pipeline and deal stages per the customer's described sales process. We map extracted Contact records to Freshsales Contacts with source tagged as 'Merlin Extraction' and extracted Account records to Freshsales Accounts with domain inferred from email addresses where available.
Sandbox migration and entity reconciliation
We run a full migration into the Freshsales sandbox environment using production-like data volume. The customer's admin reviews extracted Contacts and Accounts against source documents, flags any entity matches that require disambiguation (same name, different people), and signs off on the entity list before production migration begins. Any mapping corrections happen in sandbox, not in production.
Production migration: entities, conversations, documents
We run production migration in two phases. Phase one inserts Freshsales Users, then Contacts and Accounts from the reconciled entity list with parent Account resolved for each Contact. Phase two attaches Merlin conversation Notes and document ContentDocument records to the migrated Contacts and Accounts. We resolve entity-to-record lookups by email match and deliver a row-count reconciliation report after each phase.
Cutover, deal creation handoff, and pipeline documentation
We freeze Merlin access during cutover to prevent new data creation. We deliver a written pipeline design template, a document-intelligence workflow guide (how to use Freshsales to continue the document-review workflow that existed in Merlin), and an entity review checklist for the customer's admin to complete post-migration. We do not create Freshsales Deals as part of the migration scope; those are created by the sales team using the pipeline template. We support a three-day hypercare window for reconciliation issues raised during initial Freshsales use.
Platform deep dives
Merlin
Source
Strengths
Weaknesses
Freshsales
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 Merlin and Freshsales.
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
Merlin: Not publicly documented.
Data volume sensitivity
Merlin 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 Merlin to Freshsales migration scoping. Not seeing yours? Book a call.
Walk through your Merlin 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 Merlin
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.