Excel Broke the Phone Numbers in My CSV
The quick answer: a phone column is the one place Excel makes four of its worst guesses at once. It drops the leading 0 from 07911123456, strips the + from +441234567890, squashes a long number into 4.47E+11, and replaces the tail of anything past 15 significant digits with zeros. All four happen because a CSV is plain text and Excel decides each cell’s type for you — and it reads a phone number as a quantity. The fix is to import the phone column as Text (Data → From Text/CSV, then Transform Data and set the column’s type to Text) so Excel never parses it. Below: exactly why each symptom happens, an honest table of what you can and can’t recover after a save, and the click-by-click import.
The four symptoms at a glance
Every broken phone column is one of the four rows below. The right-hand column is the honest part — whether the damage can be undone after the file has been saved back to CSV.
| Symptom | Why it happens | Recoverable after save? |
|---|---|---|
Leading 0 dropped: 07911123456 → 7911123456 | Read as a number; a number has no leading zero | Only if every number should be the same width — re-pad to that width |
+ stripped: +441234567890 → 441234567890 | The + reads as a formula/number sign, not a character | Only if you know every number is international — re-add the + |
Scientific notation: shows 4.47E+11 | 12+ digits displayed in scientific notation | Yes, if 15 or fewer digits were kept — expand it |
16+ digit number truncated: tail becomes 0 | Excel keeps only 15 significant digits | No — the lost digits are gone; re-export from source |
Why Excel does it
A CSV file is plain text. There is no place in it to write “this column is phone numbers, treat every character literally,” so when Excel opens the file it guesses the type of each cell — and a run of digits looks like a number. That single guess is the root cause of every row in the table above:
The leading 0. A UK mobile such as 07911123456 is stored as the number 7911123456, because the value zero-followed-by-digits as a number is just the digits. The zero was never wrong in your file; it was removed the moment Excel decided the cell was numeric. This is the same mechanism that eats ZIP codes and SKUs, covered in our leading-zeros fixer.
The + sign. A leading + is how Excel begins a positive number or, historically, a formula, so it treats +441234567890 as the numeric value and discards the plus, usually leaving 441234567890. The dialling + is a character to a human and a sign to Excel, and Excel wins.
The 4.47E+11. Once a cell is a number, Excel’s default General format shows anything of 12 or more digits in scientific notation — at any column width, so dragging the column wider will not bring the digits back. A UK international number such as 447911123456 is exactly 12 digits, which is why phone columns hit this constantly. At 15 significant digits or fewer the compression is display only, so the digits are still in the sheet and reformatting the column as Number with 0 decimal places shows them again. The trap is the save: CSV has no formatting layer, so Excel writes the string it is displaying, and 4.47E+11 is what lands in the file. But Excel keeps at most 15 significant digits, so a 16-or-more-digit value has its final digits replaced with zeros on the way in; Microsoft documents this 15-digit limit directly. See our scientific-notation fixer for the display side of this.
Import the column as text
The one reliable prevention is to stop Excel parsing the column at all — bring it in as Text. Double-clicking the CSV does the damage before you can object, so use the import route instead:
- Open Excel with a blank workbook. Don’t double-click the CSV file.
- Go to Data → From Text/CSV, select your CSV, and click Import.
- In the preview window click Transform Data. This step is not optional: the preview dialog itself offers only File Origin, Delimiter and Data Type Detection — there is no per-column type control on it. In the editor that opens, select the phone column and set its type to Text.
- Click Close & Load. The
+, the leading0and every digit arrive exactly as written.
The same idea applies if you are building the file yourself: protect the phone column as text before you save, not after. A value stored as text will sit left-aligned and may show Excel’s green “number stored as text” triangle — that warning is harmless here and is exactly what you want for a phone column. We cover it in number stored as text in Excel, and the wider “open without breaking” routine in open a CSV in Excel without breaking it.
Repair the phone column before Excel touches it
Cleaner than fighting the import: fix the raw file first, then bring it in as text. Our free browser tool re-pads dropped leading zeros to the width you choose and expands scientific notation back to full digits — all locally, nothing is uploaded.
Open the leading-zeros fixer →🔒 Your file never leaves this tab — we can’t read, store or leak what we never receive. See the proof →
What you can recover after a save
This is where honesty matters, because a saved CSV has already discarded whatever Excel dropped. Recovery depends entirely on which symptom you had:
A dropped leading 0 can be re-added, but only if you know every number should be the same width. A UK mobile is 11 digits, so =TEXT(A2,"00000000000") re-pads 7911123456 back to 07911123456. If the column mixes landlines, mobiles and international numbers you cannot safely guess the width, and re-padding will invent wrong zeros.
A stripped + can be re-added only if you know every value is international — then prefixing + is safe. If some rows were national and some international, the + is genuinely gone, because nothing in the saved file records which rows had it.
Scientific notation expands cleanly whenever 15 or fewer digits were kept: widen the cell, or better, re-import the column as text and the full digit string returns. Our scientific-notation tool does this on the raw CSV.
A 16-or-more-digit number that was truncated is the one unrecoverable case. Once Excel replaced the tail with zeros and you saved, those digits are stored nowhere in the file. No formula or tool can rebuild them — the full story is in Excel changed my long number’s last digits to zeros. You must re-export from the original source; better still, import as text next time so it never happens.
Frequently asked questions
Why did Excel remove the + from my phone numbers?
A leading + makes Excel treat the cell as a positive number or a formula, and the + is not part of a stored number, so it is dropped — +441234567890 usually becomes 441234567890. A CSV is plain text with no way to say “keep the plus”, so Excel guesses. Import the column as text instead: Data → From Text/CSV, then Transform Data, then set the phone column’s type to Text. The + stays.
Why did my mobile numbers lose their leading 0?
Excel read the cell as a number, and a number has no use for a leading zero, so 07911123456 is stored as 7911123456. The zero was correct in your CSV; it was removed the instant Excel decided the cell was numeric. Importing the column as text keeps it. If it is already gone, you can re-pad to a fixed width with =TEXT(A2,"00000000000") only when every number should be the same length.
Why does a phone number show as 4.47E+11?
That is scientific notation. In its default General format Excel shows any number of 12 or more digits compressed, at any column width, so the 12-digit 447911123456 displays as 4.47E+11. If the number has 15 significant digits or fewer the digits are still in the sheet, and reformatting the column as Number with 0 decimal places or importing it as text shows them again. Widening the column does not. Save to CSV while it still reads 4.47E+11, though, and that string is what gets written to the file. A number of 16 or more digits also loses its final digits to Excel’s 15-significant-digit limit, and that loss is permanent.
How do I import phone numbers into Excel without breaking them?
Import it as text rather than double-clicking the CSV — the full Data → From Text/CSV steps are in opening a CSV in Excel without breaking it. Done that way, the +, the leading 0 and every digit arrive exactly as written, because Excel never parses the column as a number.
Sources: community discussion of keeping the plus sign when importing a CSV; Microsoft’s note that the last digits change to zeros past 15 significant figures.