Moving from Excel to an App: How to Migrate Data Without Chaos
The hardest part of moving from Excel to an app isn't choosing the system, it's moving the old data. Here are the steps to avoid losing data or confusing your team.
Deciding to move from Excel or Google Sheets to an app is often the right call. The hardest part comes afterwards: moving the old data. Data moved without cleaning just carries old problems into a new system. This article walks through the steps, and also covers when you don't need to move yet.
We've covered the signs that a business needs a web app in a separate article. Here we assume that decision has been made.
1. Inventory every file and who uses it
Before touching any data, make a list. There are usually more files than you think: the admin's file, copies on staff laptops, email attachments, and notes in group chats. For each file, record:
- The file name and where it lives, including any copies in circulation.
- Who fills it in and who reads it. The person filling it in knows what each column means; the reader knows which reports must not disappear.
- How often it's updated: daily, weekly, or only at month-end.
- Formulas and reports that depend on it. Formulas often hold business rules written down nowhere else, such as how discounts are calculated.
2. Clean the data before moving it
An app demands consistent data; a spreadsheet accepts anything. Years of use usually leave these problems behind.
- Duplicates. The same customer appears twice under different spellings. Set a merge rule, for example by phone number.
- Mixed date formats. You'll find 03/04/2026, 4 March 2026, and "early March". Standardise on one format and flag rows whose dates are unclear.
- Inconsistent phone numbers. Some start with 08, some with +62, some with 62 and spaces. Pick one format and apply it to every row.
- Muddled columns. One "Notes" column holds status, payment remarks, and an address at once. Split it before moving.
- Free text where there should be options. Status is written as "paid", "PAID", or "pd already". Create a list of standard values.
3. Decide which data must come along
Not all old data needs to move. Split it into three groups:
- Must move: data still used for daily work, such as active customers, unfinished orders, and leads still being followed up.
- Move as a summary: older history only needed for reports, such as total sales per month.
- Archive only: rarely opened data, kept as a searchable archive file.
4. Test the import with a sample
Don't move everything at once. Load a small sample covering common and odd cases, then check it with the person who usually fills in the spreadsheet:
- Does the number of rows imported match the number in the file?
- Do dates, numbers, and phone numbers display correctly?
- Have the old statuses been mapped correctly to the new system's statuses?
- Do the new system's reports produce the same figures as the spreadsheet formulas?
Fix the mapping, repeat the test, and move everything only once results match.
5. Run both side by side for a while
For a while, the old spreadsheet and the new app run together. Set a clear rule: from a given date, new data goes into the app only and the spreadsheet is read-only. Otherwise two places hold different data and you're back where you started. At the end, reconcile the key figures from both, then lock the old spreadsheet.
6. Train the team on real work
Use everyday work, not a generic demo. Ask each person to do the tasks they normally do in the spreadsheet, such as logging a new lead or marking a payment, directly in the app. Prepare a one-page guide and one go-to person for questions in the first few weeks.
7. Keep a backup of the old files
Don't delete the old files. Keep a final read-only copy somewhere safe, date the file name, and make sure more than one person knows where it is. Also check that the new system can export data, so it isn't locked inside one app.
An example destination: Numekara's CRM and dashboards
At Numekara, the education business we run, website leads go into an admin CRM rather than a spreadsheet. Every lead lands in one list with 10 pipeline stages, an owner, an activity log, and follow-up tasks. The data can be exported to CSV, so it still opens in Excel or Google Sheets.
Owner dashboards summarise leads, subscriptions, and revenue daily, with written metric definitions. When data is missing, the dashboard says "not available yet" instead of showing a fake zero. That's a worthwhile destination: one place for working data and reports you can trust. Getting there still takes the cleaning steps above.
When Google Sheets is still enough
Moving to an app isn't always the answer. Google Sheets is still enough when:
- One or two people handle the data and rarely edit it at the same time.
- The data set is still small and nobody needs different access rights.
- The process is simple, with no online payments, automatic notifications, or customer access.
- The main problem is tidiness, which templates, dropdowns, and protected columns can fix.
In these cases, cleaning the spreadsheet with steps 2 and 3 is often enough. And if you move later, your data is already ready.
A new system filled with messy data just moves the chaos somewhere more expensive.