Your stock list lives in three Excel files, a paper register and an old billing program that nobody updates. You have finally decided on new software. Now the scary part: moving years of customers, items and balances without losing a single figure.
That move is called data migration. Most of the risk is not in the new software but in the move itself: rows that go missing, numbers that change, duplicates that come along. This guide gives you the steps, the checks to demand from your developer, and the mistakes to avoid.
Quick answer
What is data migration, and why does it go wrong?
Data migration is moving your records from one system to another, for example from Excel sheets into new billing or stock software. AWS defines it as "moving data from one computing environment or storage system to another." It usually goes wrong when data is moved without being cleaned, mapped and checked.
What actually gets moved
Not all data is the same. It helps to split it into four kinds, because each has its own trouble spots.
| Kind of data | Examples | Common trouble |
| Masters (lists that rarely change) | Customers, suppliers, items, price lists | Duplicates and spelling variants |
| Opening balances | Stock on hand, amounts customers owe you | Must match your books on the cut-off date |
| History | Old invoices, orders, payments | Volume, and deciding how many years to keep |
| Files | Product photos, PDFs, signed documents | Scattered across WhatsApp, email and phones |
Excel changes your data without asking
This is the trap most first-time buyers do not know. Microsoft's own help page says Excel "automatically removes leading zeros, and converts large numbers to scientific notation". It also cuts numbers to 15 digits of precision.
So a product code like 00123 can become 123. A 16-digit card or account number can lose its last digit and show as something like 1.23E+15.
So, a warning: check long numbers and codes in any Excel export before you trust it. Ask your developer to treat those columns as text from the very first step.
Excel has a size limit too
One Excel sheet holds at most 1,048,576 rows, according to Microsoft's specifications page. If your old software has more invoice lines than that, one sheet cannot hold them all, so the export must be split.
Data migration vs database migration: what is the difference?
Data migration moves your business records into a new system. Developers often use "database migration" for a change to the structure of a database that is already running, like adding a field for a customer's GST number. AWS also uses the term for moving data between two database systems.
Why structure changes need a record
Every structure change should be saved as a numbered file, so anyone can see what changed and when. On the Aekshea Foods trading platform we built, the database has 11 such changes with a full audit trail.
A small tip: ask for this history to be part of your handover. If you change developers later, the new team can see exactly how your database grew.
The steps of a safe move, in order
AWS's guide follows the same broad path: review the source data, plan, test, run, then check the live data. Here is that path in plain words for a business moving off Excel or old software.
- List every source: Excel files, Tally, the old billing program, paper registers and WhatsApp photos.
- Name one person on your side who knows the data and will sign off each check.
- Decide what moves. Masters and opening balances always move. Decide how many years of history you really need.
- Export from the old system. TallyPrime's help pages say you can export data to Excel, and export masters and vouchers together from the Day Book.
- Clean the data: remove duplicates, fix spellings, and use one format for dates and phone numbers.
- Map it: a simple sheet that says which old column goes into which new field.
- Do a trial run on a copy, not on live data. AWS suggests testing with a smaller part of the data, dummy data or a copy of the live data.
- Run the checks in the next section and fix what fails.
- Pick a cut-off date. Stop all entries in the old system from that moment.
- Do the final move, check again, and keep the old system read-only until the new one has run well for a while.
When we moved Vishnu Jewellers from spreadsheets and paper registers into an inventory system, the cataloguing itself turned up over ₹3 lakhs of forgotten dead stock. Cleaning data is slow, but it often shows you things about your business you did not know.
If you want software built around how your business already works, see The Beyond Horizon's custom software development for Indian businesses.
What checks should you demand before going live?
Ask for proof, not a "done" message. At minimum you want matching record counts, matching totals on the cut-off date, and a written list of every row that failed to import with the reason. If your developer cannot show these three, the move is not finished.
| Check | What it means | Who signs |
| Record counts | Same number of customers, items and invoices in old and new | Your data owner |
| Totals | Stock value and amounts owed match your books on the cut-off date | Your accountant |
| Failed rows list | Every record that did not import, with the reason | Developer, then you |
| Spot checks | Open 20 random records and compare them field by field | Your data owner |
| Codes and long numbers | Product codes, phone, GST and account numbers unchanged | Your data owner |
Put these in writing
Your quote or contract should say who does the cleaning, how many trial runs are included, and what happens if go-live fails. A rollback plan means you can go back to the old system the same day.
Also ask for the cleaned files and the mapping sheet to be handed to you. If the developer keeps the only clean copy, you depend on them for every future change.
Duplicates are the quiet problem
Old spreadsheets often hold the same item twice under slightly different names. Vishnu Jewellers had duplicate stock code entries in its spreadsheets. The new system gives every item a unique ID and checks entries, which removed that risk.
How long does it take, and what drives the cost?
There is no honest fixed answer without seeing your data. The time and cost depend on how many sources you have, how messy they are, how much history you move, and how many trial runs it takes. One clean Excel file is a small job, while five messy sources can be a project of their own.
| Cost driver | Why it matters |
| Number of sources | Each one needs its own export and mapping |
| How messy the data is | Cleaning duplicates and spellings is mostly manual work |
| Years of history | More rows to move and check |
| Files and photos | Need matching to the right records |
| Trial runs | Each run takes checking time from your team too |
Ask for the migration to be priced as its own line in the quote. Then you can see what you pay for it and compare quotes fairly.
Common mistakes to avoid
Before you start the move
A careful data migration is mostly planning and checking, not clever code. Get the steps, the checks and the handover in writing before work starts.
If you are moving off Excel, Tally exports or old software and want to know how big the job is, call or WhatsApp The Beyond Horizon on +91 75973 92744. We have built 40+ projects and can look at your files before giving you a fixed scope.