A new CRM is only as useful as the data inside it. If salespeople log in on day one and find duplicate contacts, wrong phone numbers and deals marked open that closed years ago, trust in the system disappears fast.
For most growing Indian businesses, the "old system" is not one system. It is a mix of Excel sheets maintained by different people, contacts saved in personal phones, an accounting package, IndiaMART lead exports, a notebook at the front desk and perhaps an old CRM nobody used properly. Bringing that together cleanly is a project in its own right.
This plan walks through a data migration from Excel and other scattered sources into a CRM, step by step.
Step 1: List every data source
Start with an inventory. For each source, note what it contains, who owns it, how current it is and roughly how many records it holds.
| Source | Typical contents | Common problems |
|---|---|---|
| Sales team Excel sheets | Leads, follow-up notes, status | Different columns per person, duplicates |
| Accounting software | Customers, GSTIN, addresses, invoices | Only buyers, not prospects |
| IndiaMART / marketplace exports | Enquiries with product and city | Repeat enquiries, partial details |
| Website form emails | Name, phone, message | Never consolidated |
| Personal phone contacts | Names and numbers | No context, nicknames |
| Old CRM or software | Mixed | Unknown field meanings |
| Visiting cards and registers | Offline leads | Need manual entry |
Collect copies of everything in one secure folder. Do not edit the originals.
Step 2: Decide what to migrate
Not everything deserves to move. Agree on rules such as:
- Customers: all active customers, plus past customers from a defined period
- Open leads: all leads with activity in recent months
- Closed or lost leads: recent ones, for reporting and re-engagement
- Very old, incomplete records: archive, do not import
- Activity history: latest notes and key dates, not every line of every sheet
Also decide what to do with data you no longer need. Under the DPDP Act 2023, keeping personal data indefinitely without a purpose is not good practice - migration is a natural time to clean house.
Step 3: Define the target structure
Before cleaning, know where each piece of data will live in the CRM. A typical structure:
- Companies / accounts - business name, GSTIN, industry, addresses
- Contacts - people at those companies, with phones and emails
- Leads - new enquiries not yet qualified
- Deals / opportunities - qualified opportunities with stage, value and expected close date
- Activities - calls, meetings, notes, follow-up dates
- Products - items or services referenced in deals and quotations
Write a short definition for each pipeline stage and each important dropdown value. Old sheets often use "Hot", "Interested", "Follow up" and "Pending" with different meanings for different people - you will need to map them to your new stages.
Step 4: Clean the data
This is the most time-consuming step and the most important.
Standardise phone numbers
Phone numbers are the most reliable key for Indian customer data, so get them right:
- Remove spaces, dashes and brackets
- Use a consistent format with the country code - for example +91 followed by the ten-digit number
- Separate multiple numbers stored in one cell
- Flag numbers with the wrong number of digits
Standardise names and text
- Consistent capitalisation for names and company names
- One spelling for each city and state - "Jaipur", not "jaipur", "JPR" and "Jaipur Raj."
- Consistent product names matching your product list
Remove duplicates
- Match on standardised phone number and email first, then on company name
- Decide which record wins for each field - usually the most recently updated
- Merge notes and history instead of deleting them
Validate key fields
- GSTIN format for business customers
- Email format
- State names, which matter for GST logic
Fill or flag gaps
Mark records that are missing essential fields. Decide whether to complete them before import or tag them for follow-up after launch.
Step 5: Map fields
Create a mapping sheet showing exactly where each source column goes:
| Source file | Source column | CRM object | CRM field | Transformation |
|---|---|---|---|---|
| Sales_Rahul.xlsx | Mobile No | Contact | Phone | Standardise to +91 format |
| Sales_Rahul.xlsx | Status | Deal | Stage | "Hot" to "Negotiation", "Pending" to "Quotation sent" |
| Accounts export | Party Name | Company | Name | Trim spaces |
| Accounts export | GST No | Company | GSTIN | Validate format |
| IndiaMART export | Product | Lead | Product interest | Map to product list |
The mapping sheet becomes your documentation - useful when someone asks later, "Where did this value come from?"
Step 6: Test with a sample
Never import everything at once on the first attempt.
- Pick a sample - a few dozen records from each source, including messy ones.
- Import them into a test or staging CRM environment.
- Check that companies, contacts, deals and activities link correctly.
- Ask a salesperson to review their own records.
- Fix the mapping or cleaning rules and repeat until the sample is right.
Step 7: Run the full import
- Freeze changes to the old sheets at an agreed time, so nothing is updated in two places
- Import in the right order: companies, then contacts, then deals, then activities - so links work
- Keep a unique source ID for each record so you can trace or re-import it
- Log errors and rejected rows, then fix and re-import them
- Assign records to the right owners in the CRM
For larger or repeated imports - for example, an ongoing feed from accounting software - automated scripts or API integration are safer than manual spreadsheet uploads.
Step 8: Verify the results
Do not skip this step.
- Count check - record counts in the CRM match what you expected from each source
- Spot checks - users open random records and confirm details and history
- Report check - pipeline value and customer counts look sensible
- Duplicate check - run the CRM's duplicate detection after import
- Owner check - every salesperson confirms their lead list looks right
Create a short issue list and fix problems before the full team goes live.
Step 9: Switch over and retire the old sources
- Announce the cut-over date and make the CRM the single source of truth
- Archive old sheets as read-only, with restricted access
- Remove customer data from personal devices where appropriate and agreed
- Connect new lead sources directly to the CRM so the problem does not return
Common migration mistakes
- Importing raw data without cleaning, then trying to fix it inside the CRM
- Inconsistent phone formats, creating duplicates for the same customer
- Losing links between companies, contacts and deals because of import order
- No sample test before the full import
- Letting people keep updating Excel after go-live
Who does what during migration
A migration goes smoothly when responsibilities are clear:
| Role | Responsibilities |
|---|---|
| Owner or project sponsor | Approves what to migrate, what to archive and the cut-over date |
| Migration lead | Coordinates the plan, mapping sheet and issue list |
| Sales team | Cleans and verifies their own leads and customers |
| Accounts team | Verifies GSTINs, billing details and customer codes |
| CRM developer or partner | Builds import scripts, runs test and full imports, fixes errors |
Agree these roles at the start. Most delays in migration come from waiting for someone to confirm whether a record should be kept, merged or archived.
Keeping data clean after go-live
Migration is a one-time project, but data quality is a habit. Turn on duplicate detection by phone number, make key fields use dropdowns rather than free text, validate GSTIN and phone formats at entry, and run a short data-quality review with each team every few weeks. Small, regular clean-ups prevent the CRM from slowly turning back into a messy spreadsheet.
Key takeaways
- Inventory every data source and decide what really needs to move.
- Define your CRM structure and stage meanings before cleaning.
- Standardise phone numbers - they are your best matching key.
- Map fields in a documented sheet and test with a sample first.
- Import in the right order, verify with real users and retire the old sheets.
Let us handle the heavy lifting
Data migration is part of every CRM we deliver, from cleaning and mapping to verification and training. Our team in Jaipur has worked through plenty of messy spreadsheets. Book a free consultation or explore our CRM development service - you will get a clear migration plan and written quote before work begins.






