Migration moves the data. It does not move what you knew about it.

The claim going around right now is that AI makes leaving old software nearly frictionless. Migration, onboarding and configuration can all be automated, so the switching cost is supposedly gone.

Those are the parts of a switch a vendor can see. They are real, and they are the easy part.

The cost that stays is everything an organization learned about its own fields. It is knowing which date means what, which exception rule got added and why, and which number one team trusts while another team argues with it. Sometimes it is a field that stopped meaning what the vendor named it years ago, because someone needed a place to put something else.

Years ago I ran a repair operation in regulated wagering. The field teams said the repair center was slow, and the turnaround times they reported looked unrealistic. The repair center quoted me much shorter ones. Both sides were measuring the same thing and getting different answers.

I went to the repair center, and they showed me the inbound shipping data. I compared it with my notes from conversations with the field. The field was counting from the day they reported the problem, and units were taking seven to ten days to ship. That shipping time was landing in the field's measure of the repair center's turnaround.

We fixed it with a definition. Turnaround would run from the date a unit shipped out to the date it shipped back, because those were the only dates anyone could confirm.

Later we moved to a new ERP that created work orders and tracked the parts repaired or swapped. Its field definitions were flexible, and like most companies that deploy a large system, we repurposed some of them to fit how we worked. The date field came across cleanly. The reason it could be trusted did not come with it. That lived in a decision, a few conversations and my notes.

Did the system map to your processes, or did your processes map to someone else's system? Either way, the mapping lives with your people, not in the data.

That is the real switching cost. Every system you have run for a while has been fitted to you, through settled arguments and repurposed fields, and a migration tool cannot see any of it. Move the column without the reasoning and you get clean-looking data in a new system, with nobody left who remembers that it once ran wrong in one direction.

Before your next switch, which of your fields were ever disputed or quietly repurposed, and where is the answer written down?