Zoho CRM and Salesforce look similar on paper. Both have Leads, Contacts, Accounts and a deal object, so the move feels like it should be a straight copy. It isn’t, quite. Zoho layouts, picklists, validation and custom modules still have to be rebuilt in Salesforce, and a field that was optional in Zoho may be required in the new org.
The good news is you don’t have to flatten Zoho Leads into Contacts the way you would in HubSpot. You can keep them as Salesforce Leads, or convert the ones that are already qualified. Decide that first, then export, map, set up Salesforce and test a sample, in that order.
Plan your Zoho to Salesforce migration
Before exporting anything, pick the modules you’re moving. Usually that’s Leads, Contacts, Accounts and Deals, sometimes Products, Notes and activities too. Dead leads, test records and old closed deals can go to an archive file instead.
Then decide what happens to Zoho Leads. Keeping them as Salesforce Leads is the straightforward option if your new process uses that object. If your Salesforce org is contact-and-account only, those people become Contacts, and you’ll want a field that records they came from the Zoho Leads module.
Pick the day Salesforce becomes the system of record, and stop edits in Zoho shortly before your final export. Write down the record count for each module. You’ll compare these with Salesforce at the end.
Export your data from Zoho CRM
Zoho’s help center covers this in Export CRM Data. You need the Export permission in your Zoho profile.
Export module data
Use this to export one module at a time, like Leads or Accounts.
- Go to Setup > Data Administration > Export.
- Click Start an Export.
- Choose the module (for example Leads, Contacts, Accounts or Deals), or Notes.
- Choose All Fields, or pick specific fields. Keep the Record ID in the file.
- Choose CSV as the file format. If you use international characters, set the character set so they don’t get scrambled.
- Click Export. When the status in Export History shows Completed, download the file.
You can also start an export from a module’s list view by clicking the … button next to Create and choosing Export.
Zoho notes that a CSV export can include up to 200,000 records from a single module in one go, that an XLSX export is capped at 50,000, and that the download link stays available for seven days. The file arrives as a ZIP. If a module has more records than the CSV limit, split the export by Created Time, or use a full backup.
Request a full data backup
For a complete copy of everything, go to Setup > Data Administration > Data Backup. Zoho delivers the backup as CSV files in a ZIP archive. Even if you migrate module by module, a full backup is a smart safety net to keep before you switch.
Map Zoho modules to Salesforce objects
Zoho modules usually land in Salesforce like this:
- Leads → Leads, or Contacts, if you don’t use Salesforce Leads
- Contacts → Contacts
- Accounts → Accounts
- Deals → Opportunities
- Products → Products
- Notes, Tasks, Calls and Meetings → the matching Salesforce activities, planned separately
How to handle Zoho Leads vs Contacts
Because Salesforce can keep both objects, you have a cleaner choice than you would in HubSpot:
- Keep Zoho Leads as Salesforce Leads if your team still qualifies people before creating an account and contact.
- Import already-qualified Zoho Leads as Contacts under an Account, and store the original module in a field such as “Zoho module.”
- Check for people who exist in both Zoho modules. The same email in both files should not become two Salesforce people unless you have a clear reason.
Other Zoho to Salesforce mapping tips
Import accounts first, then contacts and leads, then opportunities. A Zoho Deal needs a Salesforce Account, a stage that already exists, and a close date. Create every Zoho deal pipeline and stage in Salesforce first, and write down which stage maps to which.
Picklist values need matching Salesforce picklist options, translated one by one. Custom modules only move if you first create a matching custom object, or decide they belong on a standard object instead.
Add your team as Salesforce users before importing so records keep their owners. Store the Zoho Record ID on each Salesforce record, and make it an External ID if you want to upsert later.
Automations don’t come along. Zoho workflow rules, Blueprints and custom functions have to be rebuilt in Salesforce. List the ones your team still relies on and rebuild only those.
Try it on 250 records, free
We’ll move up to 250 of your real records into your new CRM so you can open them, poke around, and decide. It’s free. One per company, approved by our team, and we’ll need your work email.
Prepare Salesforce
Set Salesforce up before any data arrives:
- Create custom fields for each Zoho field you’re keeping, including a “Zoho ID” field on leads, contacts, accounts and opportunities, and a “Zoho module” field on people.
- Build opportunity stages, lead statuses and record types to match your map.
- Add users so owners can be assigned.
- Review validation rules, required fields, duplicate rules and assignment rules. A field that was optional in Zoho may be required here.
- Pause flows, workflow rules and email alerts that could fire on insert and message people by accident.
Choose how to move the data
You have a few realistic options for a Zoho file.
Salesforce Data Import Wizard
In Salesforce, go to Setup, enter Data Import Wizard in the Quick Find box, then click Launch Wizard. You can import accounts, contacts, leads, campaign members, person accounts and custom objects from a CSV, up to 50,000 records at a time. You can add new records, update existing ones, or do both, and match contacts or leads by email.
It’s included with Salesforce, and Salesforce recommends testing a small CSV first. It does not import opportunities. If deals are part of the move, you’ll need Data Loader or another tool for that object.
Salesforce Data Loader
Data Loader is Salesforce’s desktop app for inserting, updating, upserting and exporting any object, including opportunities. You can download it from Setup (search for Data Loader) or from Salesforce’s Data Loader page. You pick the object, choose a CSV, map columns to Salesforce fields, then review the success and error files it writes when the job finishes.
Use it when you’re loading opportunities, when a file is larger than the wizard allows, or when you want a mapping you can run again. You still do the cleanup and the field map yourself, and records are written as soon as the job runs.
Carryrow
Upload your Zoho export to Carryrow and you’ll see every column with a few real values next to it and the Salesforce field it will go into. Point a column somewhere else, drop it, skip rows missing a value, or lowercase emails. Nothing is written until you accept the map.
We then write the records into Salesforce using access you create there, which you can delete the same day. We never log into Zoho. Pricing follows the number of records in your file, from $129 for up to 5,000 rows. See CRM migration pricing and how a move works. Comparing quotes? Here’s what CRM migrations usually cost.
If you’re comparing tools, we also wrote an honest look at Carryrow, Import2 and HubSpot’s built-in importer. Import2 is often used for Salesforce moves, especially when you want history pulled through an API. Carryrow works from the file you export.
Test, migrate and go live
Run a small sample first. Include your trickiest records: Zoho Leads with no company, Accounts with thin data, deals in rarely used stages, and a contact who also exists as a lead.
In Salesforce, check that each record has the right name, email, account, lead or contact object, opportunity stage, close date and custom values. Fix the map, re-run the sample, then migrate everything in order: accounts, then contacts and leads, then opportunities.
After the full run, compare record counts by module. Then switch the team over, turn on rebuilt automation one at a time, and keep your Zoho backup somewhere safe.
Want the full list of steps? Use our CRM migration checklist. Moving from Zoho to HubSpot instead? See the Zoho to HubSpot guide. We also have guides for HubSpot to Salesforce and Pipedrive to Salesforce.
Zoho to Salesforce migration FAQ
Do Zoho Leads stay as Leads in Salesforce?
They can. Unlike a move to HubSpot, you don’t have to flatten Zoho Leads into Contacts. Keep them as Salesforce Leads, or convert the ones that are already qualified. Keep a field that records the original Zoho module so you can check the split later.
Will my Zoho workflows and Blueprints move to Salesforce?
No. Workflow rules, Blueprints and custom functions don’t transfer. You rebuild the ones you still need as Salesforce flows or other automation.
How do I export all my data from Zoho CRM?
Export each module from Setup > Data Administration > Export, or request a full backup from Setup > Data Administration > Data Backup. A CSV export can include up to 200,000 records from a single module, and the download link stays available for seven days.
Do you need my Zoho password?
No. You export the files from Zoho yourself, and we never log into it.
Can I test a Zoho to Salesforce migration first?
Yes. Carryrow offers a free sample migration of up to 250 records from Zoho to Salesforce. It’s one per company, approved by our team.
Can I move from Zoho to a CRM other than Salesforce?
Yes. Carryrow also writes into HubSpot, GoHighLevel, Pipedrive and Close. Moving to HubSpot instead? See our Zoho to HubSpot guide.
Check your own data before you pay for the move
Ask for the free 250-record sample and we’ll move a slice of your real data into the new CRM first. One per company, approved by our team, work email required. If you’d rather skip ahead, upload your export and start mapping.

