The migration plan always looks clean in the kickoff deck. Export the objects to CSV. Map the fields. Import. Train the team, sunset the Salesforce licenses, and be done inside a quarter.
That plan describes a migration that almost never exists: one where the old system is empty of history and the new system is empty of everything. The migration most B2B companies are staring down looks different. Marketing has been living in HubSpot for years. Sales has been living in Salesforce. A sync has been shuttling records between them the whole time, and now someone has decided the company should have one system instead of two.
Why is Salesforce to HubSpot harder than export and import?
Because you are not moving data out of a retired system into an empty one. In most of the migrations we see, the two systems already coexist, marketing in HubSpot, sales in Salesforce, with a sync between them, and each has spent years developing its own opinion about what is true. A migration in that setting is not a transfer. It is a merger of two living systems, performed while both keep running, followed by the retirement of one without dropping the revenue motion it carries.
The CSV can move values. It cannot decide which values deserve to move. That difference is the entire project.
The CSV can move values. It cannot decide which values deserve to move. That difference is the entire project.
The sync-era inheritance comes due
We rebuilt an instance that had run exactly this setup for years before committing to HubSpot. After the migration it held 1,532 fields. Common fields existed in four or five lookalike versions, one native, one synced, one imported, one workaround. Fourteen separate fields claimed to answer where a record came from. Behind them sat hundreds of workaround fields built to route past constraints nobody remembered. The record layer carried the same signature: duplicates on both sides of the pipe, each convinced it was the original.
The migration does not create that mess. It surfaces all of it at once, with a deadline attached. Every lookalike field demands a mapping decision. Every duplicate demands a survivor. Every report, automation, and integration keyed to Salesforce IDs stops working the moment those IDs stay behind. The CSV plan has no row for any of this.
What breaks while you’re moving
The part the guides skip entirely: the business does not pause. Marketing keeps sending. Sales keeps closing. Leads keep arriving and need routing while the routing rules are being rebuilt. Which is why the write path matters more than the export. At the client above, we moved the sync to one-way first, so a single system held the pen. When full migration began, we turned the sync off and ran manual daily pushes to keep data fresh until the team was fully on the new CRM. Slower than leaving the pipe open. Also the only version where a merged record stays merged and a mapped field stays mapped.
The decisions underneath were not ours to make alone. The client owns how they sell; we translate that into the system. Field survivorship, source consolidation, owner conflicts: direction and recommendations from us, nothing without discussion, so the instance that came out the other side was one their team recognized and could run. When it was over, roughly 240 fields remained, and the fourteen source fields had become one.
What does a real migration cost?
More than the guides imply and less than living with two systems forever. The honest cost drivers are four: how many fields you carry, how heavy the duplicate load is, how much automation and integration surface is keyed to the old system, and how long the two systems ran side by side. A weekend if none of those apply to you. Weeks of decisions if they all do, and they usually all do.
What the investment buys is more than a smaller license bill. Salesforce’s State of Sales, 7th edition, a survey of 4,050 sales professionals across 22 countries published in February 2026, found high-performing sales organizations prioritize data hygiene at roughly 1.5x the rate of underperformers, 79% against 54%. That is a correlation, not proof of causation. But a migration is the one moment when the cleanup is unavoidable anyway, deleting is free, and the org is already braced for change. Skip it and you pay migration prices for a photocopy of the old mess, and your next forecast conversation inherits whatever boarded the truck.
The question that prices a migration
The guides say export and import. The instances we open say otherwise, especially anywhere marketing and sales spent years in different systems. Before you sign a migration SOW with anyone, including us, answer one question: does the mess board the truck, or does it stay behind?
Every migration answers it. The expensive ones answer it by accident.