You can export your data. Good luck using it.
An export button is easy to demonstrate. Moving the working business is harder. Five checks to run before you change systems or cancel the old one.

You can export your data. Good luck using it.
That is the part of the software demo I want to see: someone taking the business out again.
The sales demo shows a customer, their open jobs, the photos attached to each job, and the approval that releases an invoice. Everything connects. Then the exit demo, if anyone asks for one, produces a spreadsheet.
You paid for years of useful working context. A folder of disconnected rows is a disappointing thing to discover you have bought on the way out.
I think buyers should make vendors demonstrate an exit before signing a long commitment. The same standard should apply to the consultant proposing a custom build.
An export can succeed while your move fails
A CSV is useful. It is also a table. It does not automatically explain which photo belongs to which site visit, what a status means, who was allowed to approve a change, or how a total was calculated.
Imagine a maintenance company moving its job system. This is an illustrative example, not a client incident. The export contains customer names, job numbers, totals and photo links. It opens perfectly in Excel. The team celebrates.
In the destination, two customers share a trading name. A job points to the wrong one because the import matched names instead of stable IDs. A total arrived as a number, but the calculation behind it did not. The photo column contains links back to the old service. Someone has to work out what “approved” meant before the next invoice can go out.
Nothing in that scenario requires a malicious vendor. Different products represent work differently. The trouble starts when the buyer treats a successful download as proof that the move is finished.
The limitations are often in the documentation
Notion explains that a workspace export cannot instantly recreate the workspace through re-upload. Its current import guidance also says a new CSV import does not recreate relations, rollups or formulas. Those need rebuilding. There is a useful distinction: a CSV merge can map data into an existing relation property. “CSV cannot do relationships” would be too broad a claim. See Notion’s export guide and import guide.
Airtable documents another concrete issue: attachment download URLs in CSV exports expire. If you need the files, download them before those URLs stop working. An expired link does not mean Airtable deleted the attachment; the expiry protects access to files. See Airtable’s attachment URL guidance.
These are documented product boundaries. They give you questions to ask about your particular setup. They do not prove either product is unsuitable, and they do not establish that every export has the same limitations.
Ask for one complete job to work somewhere else
Before committing to a platform or approving a migration budget, choose one representative piece of work and agree what must survive the move. Use an isolated destination and a synthetic or appropriately authorized sample. Keep live customer notifications and payment actions disabled during the test.
For the maintenance example, I would ask the person handling the move to demonstrate these five things:
- The customer and job still belong together. Stable identifiers preserve the link, including when names change or repeat. Record counts reconcile, and exceptions have an owner.
- The files are really there. Open the actual photos and documents from the destination without relying on the old account. A column full of URLs is not that demonstration.
- The numbers retain their meaning. Check currency, dates, time zones and units. Decide which calculations must run again and which historical values must remain unchanged.
- The right person can do the next step. Rebuild and test the permissions and approvals the business actually needs. Importing a status label does not implement an approval process.
- An ordinary employee can finish the job. Have someone who uses the system complete the agreed workflow, with no developer filling gaps behind the scenes. Record what fails and what needs rebuilding.
A sample test will not prove every historical record is correct. It exposes assumptions early enough to price the remaining work. A full move still needs reconciliation, an agreed way to capture changes made during the transition, and a recovery plan if the destination fails its checks.
Keep the source available until the agreed checks pass and your retention obligations are understood. Cancelling first can turn a solvable mapping problem into a race against lost access.
Custom software does not get a free pass
Owning source code does not automatically make a business portable either. Someone still needs to know how to restore the database, where the files live, what the integrations expect, and which accounts control the infrastructure.
A custom system with undocumented rules and one indispensable developer can create its own expensive exit. Ask for a handover that another competent team can actually use. Put the export format, essential documentation, access requirements and a representative restore test into the scope.
A hosted product can still be the best choice. Paying a provider to run a reliable service often makes sense. What I object to is treating “there’s an export button” as a complete answer to a business continuity question.
Price the exit while you still have a choice
When you compare proposals, ask which data and files you can retrieve, what must be rebuilt, what support is available, and what it will cost. Ask when access ends. Ask who will prove the destination works.
A credible answer may include limitations, paid migration work and a list of awkward edge cases. That is useful information. You can budget for an honest limitation. You cannot plan around reassurance that has never been tested.
Planning a system change? Bring us the workflow you cannot afford to lose. Rosecraft can help scope the migration, connect the systems and build the missing pieces. Tell us what you are leaving, where you want to go, and what must keep working. Please leave sensitive exports out of the initial message.
Ready to hear what needs fixing before the move gets expensive? Contact Rosecraft or message me on LinkedIn. A download confirmation is a poor place to end a migration plan.
