Archive boxes in front of a blurred spreadsheet screen at the moment of data migration

September 1, 2026 · 6 min read

By Thomas Cohen, founder of Maestro

Migrate your Excel data into your application: a guide without breakage

The application is ready; the historical file is waiting. Migration happens in four stages: clean in Excel, turn formulas into rules, import with a discrepancy report, and run both in parallel.

Migrating from Excel to an application takes 4 stages: clean the data in the file, turn formulas into approved rules, import with a discrepancy report accounting for every row, then run both tools in parallel over a full period. On those terms, zero rows lost and zero surprises in the first month.

What hides in your columns

A long-lived file accumulates invisible traps: dates entered as text, ‘March 2023’ beside ‘01/03/23’, customers duplicated with slightly different spellings, merged cells breaking sorts, amounts with and without VAT in the same column, and test rows never deleted. The application will reject these ambiguities: that is its reason for being. Migration is when years of tolerance are settled.

Step 1: clean in Excel, not afterwards

Make corrections in the tool you know. Deduplicate customers, unify date formats, separate things sharing a column and delete dead rows. Devote a proper session to it, with two people if possible: the person who knows the history spots the odd 2019 row in a second. Every anomaly corrected here is one the import will not turn into a mysterious rejection.

Step 2: formulas become rules

Your formulas are business rules in disguise: that column calculating discounts, the other flagging delays. Before any import, they must exist in French in the application's requirements, ‘the discount applies above €100, never to deposits’, and you must approve them. In Maestro, the file is attached to the project and agents extract these rules for your review; elsewhere, demand the same stage. A formula migrated without being understood reproduces its errors exactly.

Step 3: import with a discrepancy report

The non-negotiable principle: an import must account for itself. A report counting rows read, rows created and rejections, each with its reason and row number, makes the import verifiable; you correct rejections in the file and rerun until every row is accounted for. An import answering ‘done’ without details is an act of faith: reject it. Keep the original file untouched, dated and safe. It remains your evidence.

Step 4: the parallel period

Run both tools in parallel for a complete cycle: a month-end close or billing period. Enter data in the application, maintain the file as a mirror and compare totals at period end. Discrepancies are lessons: a poorly phrased rule or forgotten case, to correct in the requirements and then the application. Once a whole period ends without discrepancy, disconnect the mirror. The old file becomes read-only, available to consult forever.

Two refusals that protect you

Reject an import without a discrepancy report and a switchover without a parallel period. These two requirements each fit in one sentence in your requirements document, cost almost nothing to someone building properly, and make the difference between a migration and moving in the dark. Your history deserves this care: it is the numerical memory of your business.

Back to the journal

Take the baton.

Leave your email to try Maestro in the first waves.

The beta opens in waves. People on the list try it first, and Maestro stays free throughout the beta.

The beta is currently available on macOS 13 or later. Your answer helps us plan other versions.

Your email is only used to let you know when access opens. Nothing else, we promise.