Moving Leads From Excel or Google Sheets to a CRM: Problems Nobody Warns You About
Most teams start their sales process in a spreadsheet, and that’s the right call. A sheet is free, everyone knows how to use it, and it works perfectly well for the first few hundred leads.
The trouble starts when you move to a CRM. The import screen asks for a file, you upload the sheet, and a few days later your team says the CRM is “wrong”: the same person appears three times, half the numbers won’t dial, and nobody knows whose leads are whose.
The CRM isn’t wrong. It’s showing you what was in the sheet all along. Here are the problems that come up in almost every lead sheet, and how to fix each one before you import, not after. If you haven’t picked a CRM yet, start with choosing between a custom and a ready-made CRM.
First, Make a Copy and Freeze It
Before touching anything, save a copy of every sheet you plan to import and don’t edit it again. If something goes wrong during the clean-up, this is what you go back to.
Then ask your team to stop adding leads to the old sheet on the day you import. If people keep writing to the sheet and the CRM at the same time, you’ll spend weeks reconciling the two. Agree on a cut-off date, import, and from then on the CRM is the only place new leads go.
Phone Numbers That Turned Into 9.78E+09
This is the most common problem, and the most damaging, because the phone number is usually the only reliable way to reach the lead.
Excel and Google Sheets treat a phone number as a number, not as text. That causes several different kinds of damage:
- Scientific notation. A ten-digit mobile number in a narrow column shows up as something like 9.78E+09. As long as the cell still holds the full number, changing the column format to Number with no decimals, or to Text, brings it back. But if that displayed value was ever copied, pasted as text or passed through another tool, the last digits are gone for good.
- Lost plus signs. Type +91 98xxx xxxxx into a cell and the spreadsheet may treat the + as the start of a formula, or drop it and store a twelve-digit number.
- Lost leading zeros. Landline numbers with an STD code starting with 0 lose the zero.
- Every format at once. In one column you’ll find 98xxx xxxxx, +91-98xxxxxxxx, 098xxxxxxxx, 91 98xxx xxxxx and “98xxxxxxxx / 97xxxxxxxx” with two numbers in one cell.
How to fix it: decide on one format for Indian mobile numbers. We use the plain ten digits, because that’s what people dial and what duplicates are matched on. Then for every number, remove spaces, dashes and brackets, remove a leading +91, 91 or 0 where the rest is ten digits, and check that what’s left is ten digits starting with 6, 7, 8 or 9. Anything that doesn’t pass goes into a separate list for a person to look at. Don’t guess.
In the CRMs we build, phone numbers are normalised to ten digits on the way in, so a lead from a form and a lead from an old sheet end up in the same format.
Duplicates You Can’t See by Eye
Every lead sheet has duplicates. The same person filled two forms, was entered once by the telecaller and once by the manager, or appears in two tabs from different months.
The problem is that they don’t look like duplicates. “Rahul Sharma” with one number and “rahul sharma ” with the same number written differently are the same person, but a quick scroll won’t catch it.
How to fix it:
- Clean the phone numbers first. Matching on messy numbers misses most duplicates.
- Match on the cleaned phone number, not on the name. Names are spelled too many ways to be a reliable key.
- Where you have a lead ID from the source, such as a Facebook lead ID, match on that too.
- When two rows are the same person, decide which one to keep. Usually that’s the one with the latest activity, and the notes from the other one are merged into it rather than thrown away.
Keep a list of every row you merged or skipped, and why. When someone asks “where did my lead go?”, that list is the answer. When we import sheets for a client, they get these notes as part of the handover.
Names, Spaces and Capital Letters
Names in sheets are rarely clean. You’ll see all capitals, all lower case, double spaces, a trailing space, a title in the name field (“Mr. Ankit”), or a note typed where the name should be (“Ankit - call after 6”).
None of this stops the CRM working, but it makes search unreliable and makes your team look careless when a message goes out to “ANKIT ”.
How to fix it:
- Trim spaces at the start and end, and replace double spaces with single ones.
- Leave the capitalisation alone, or apply it carefully by hand. Automatic title case gets names like “McDonald” or company names in brackets wrong.
- Move notes out of the name field into a notes column before importing.
- Split the full name into first and last name only if the CRM really needs it. Many Indian names don’t split neatly, and a single full-name field is often fine.
Leads with No Owner
In a sheet, ownership is often implied: “Priya’s leads are the ones in green,” or “anything after row 400 is Amit’s.” Colours and row numbers don’t survive an import.
If you import without owners, every old lead lands unassigned, and nobody feels responsible for following them up.
How to fix it: add an explicit owner column before importing, using the exact names the CRM will use for each user. For leads that genuinely have no owner, decide before the import who will look at them, and assign them to that person instead of leaving them in limbo.
Statuses Written Ten Different Ways
“Interested”, “intrested”, “Hot”, “call back”, “CB”, “not picking”, “NP”, “switched off”. A sheet that has been used for a year has dozens of statuses, typed freely by different people.
A CRM needs a short, fixed list of stages. Before you import, list every value in your status column and map each one to a stage in the new CRM. Do it as a two-column table: old value on the left, new stage on the right. Show it to your team. They’ll catch the ones only they understand.
Dates That Mean Different Things
Is 04/05/2025 the 4th of May or the 5th of April? It depends on who typed it and on the spreadsheet’s regional settings. Imported wrongly, a lead’s follow-up date can move by months.
Check a few rows where the day is greater than 12. Those can only be read one way, and they’ll tell you which format the column really uses. Convert the whole column to a single unambiguous format before importing.
Notes and History in Extra Columns
Teams often keep history in columns like “Remark 1”, “Remark 2” and “Last call”. Don’t throw these away. Combine them into a single notes field, with the date where you have one, so the person who picks up the lead next can see what was already said.
Do a Test Import First
Never import the whole sheet on the first attempt. Take 50 rows, including the messiest ones you can find, and import those. Then open them in the CRM and check:
- Do the numbers dial when you tap them?
- Are the duplicates you expected merged?
- Does each lead have the right owner and stage?
- Are the notes readable?
Fix the mapping, delete the test rows, and only then import everything. Keep the old sheet, read-only, until the team is confident in the CRM.
Make It Hard for the Mess to Come Back
A clean import is wasted if new leads arrive as messily as the old ones. Once you’re in the CRM, the same rules should apply to every new lead: numbers cleaned to one format, duplicates checked by phone number and lead ID, and every lead given an owner as soon as it arrives.
That’s how we build lead capture in a custom CRM, and it’s how leads from forms and Facebook ads come in when we connect your lead sources. The import is one day. Keeping the data clean is what makes the CRM worth opening every morning after that.
Want Us to Look at Your Setup?
Book a free 30-minute call on Google Meet. Tell us how leads reach you today, and we’ll suggest the first thing to fix.