Excel to Text: When You Want the Contents, Not the Table
Not every spreadsheet question is a spreadsheet question. Sometimes the workbook is just a container — a support export where the useful part is 4,000 free-text complaint descriptions, a product catalogue where you need the copy rather than the SKUs, a survey dump where every interesting answer lives in one wide column of prose. Rendering that as a table adds structure nobody asked for and charges you tokens for it.
Converting Excel to plain text gives you the values and nothing else. No pipes, no separator rows, no alignment padding. Just the contents of the cells, sheet by sheet, in a form you can grep, chunk, embed, diff, or pipe into a script without stripping anything first. Upload an .xlsx or .xls above — free, no sign-up, 50 MB limit, nothing kept.
The Token Argument, Which Is the Main One
A Markdown table pays a per-cell tax. Every value gets wrapped in delimiters and spacing, and that cost multiplies by rows. On a twelve-row summary it's invisible. On a 20-column, 8,000-row export it's a substantial share of the output — punctuation occupying context you'd rather spend on data.
Plain text drops that overhead entirely. Same values, meaningfully fewer tokens, which in practice is the difference between a sheet that fits in one prompt and one that doesn't. The token counter under the output makes the comparison concrete: convert the same file both ways and you'll see the gap immediately. The format toggle at the top of this page carries your file across to Excel to Markdown without a re-upload, so that comparison costs you about five seconds.
What You Give Up — Be Honest About It
Flat text loses reliable column identity. Once the delimiters are gone, the third value on a line is only implicitly the "Region" field, and a model answering "average revenue for the North region" has to hold that mapping in its head across thousands of lines. It'll often manage. It will also sometimes drift, especially where a cell is empty and the positions shift under it.
So the rule is straightforward. If your question is column-wise — filtering, comparing, aggregating, cross-referencing two fields — use the Markdown version, and accept the token cost. If your question is content-wise — what are people saying, what themes appear, does this phrase exist anywhere, find me the rows about shipping delays — plain text is the better tool and the cheaper one.
Where Flat Spreadsheet Text Earns Its Keep
- Embeddings and retrieval. Chunk a catalogue or a knowledge-base export into passages and vectorise them. Table syntax in a chunk is noise that shifts the vector without carrying meaning, and it eats positions in a fixed-size embedding input.
- Bulk text analysis. Sentiment over customer feedback, theme clustering across open survey responses, extracting entities from a column of case notes. The unit of analysis is a paragraph, not a row.
- Search indexing. Most search engines want a clean text blob per document. Feeding them pipe tables gives worse tokenisation and no benefit.
- Feeding scripts. Line-oriented text is what regexes, word counts, language detectors, and quick Python one-liners expect. No parsing step, no escaping edge cases.
- Diffing two exports. Pull last month's and this month's workbooks as text and run a diff. Changes stand out; in table form, a single inserted column shifts every line and the diff becomes useless.
- Very large sheets. Sometimes flat text is simply the only version that fits.
Excel Quirks That Show Up Specifically in Text Output
Some of Excel's habits are invisible on screen and obvious the moment the formatting layer is stripped off:
- Leading zeros are already gone. If a postcode, phone number, or account ID was typed into a General-formatted cell, Excel stored 01204 as the number 1204 long before you got here. The text output faithfully reports what's in the file. Check a sample against the source system if IDs matter.
- Scientific notation on long numbers. Sixteen-digit references and some barcodes get stored as floats and can surface as 1.23457E+15, with the tail digits genuinely lost. The fix is upstream: store those columns as text in Excel before saving.
- Formatting is a mask. A cell reading 15/03/2024 holds a day-count serial number; one
reading 12.5% holds 0.125; one reading £1,250 holds 1250. Without the table layout to hint at what a
column is, bare serial numbers in the middle of a text stream are especially confusing. Converting
date columns to ISO text with
=TEXT(A2,"yyyy-mm-dd")before export is the reliable workaround. - Merged cells leave holes. Merged content lives in the top-left cell of its range and the rest are truly empty, so a category label merged down eight rows appears once and the following seven records look unlabelled.
- Hidden rows, columns, and sheets still convert. Extraction doesn't respect visibility. That old "Scratch" tab and the columns someone hid rather than deleted will be in your output. Worth a skim before you share the result — hidden sheets are a genuine source of accidental disclosure.
- You get values, not logic. Formula cells contribute their last cached result, so the output is a snapshot of the workbook rather than a description of how it computes. A file written by a script that never opened Excel may have no cached values at all and can come through blank.
Multiple Sheets Without the Table Scaffolding
Workbooks are rarely one tab. Extraction walks every sheet in the workbook and labels each with its tab name, which stays useful even in flat text — "Raw Data", "2023 Archive", and "Notes" tell you and the model how much to trust what follows, and they give you obvious split points if you're chunking the output.
One practical move: if only one tab matters, copy it into a fresh workbook and convert that. You'll cut the output dramatically, avoid dragging in a dozen lookup tables and pivot caches, and sidestep the hidden-sheet problem in one step.
.xls, .xlsx, and the CSV Shortcut
Both are supported. The legacy binary .xls format still turns up constantly from banking portals and older ERP systems; it holds at most 65,536 rows, so anything larger has already been truncated somewhere upstream — worth checking if a row count looks suspiciously round. Modern .xlsx is XML inside a ZIP and parses more predictably, so resaving before conversion is a reasonable habit.
And if the data was a CSV before someone opened it in Excel, use CSV to text on the original instead. Excel silently reinterprets things on import — turning codes into dates, trimming zeros — and once you've saved over the file that damage is baked in.
Frequently Asked Questions
How do I convert an Excel file to a txt file?
Drop the .xlsx or .xls into the converter above and the sheet contents come back as plain text, downloadable as .txt. Free, no sign-up, 50 MB per file. Both the modern XML format and the older binary .xls work, so you do not need to re-save an inherited file first.
What happens to my columns when Excel becomes plain text?
They stop being columns. Values arrive in reading order separated by whitespace, and which header each one belonged to is no longer encoded anywhere. For a single-column list of names or SKUs that is exactly what you wanted. For a financial model with twelve columns, it destroys the thing that made it a model — use Excel to Markdown instead.
Do I get formulas or the calculated values?
The values. A cell containing =SUM(B2:B40) converts as 1,284, not as the formula that produced it. That is the right default for analysis and almost never what you want for auditing a spreadsheet's logic — if the formulas are the point, no text conversion will help and you need the workbook itself.
Are all the worksheets included or just the active one?
Every sheet in the workbook is processed, not just whichever tab was open when it was saved. Worth remembering with files that carry a hidden Assumptions or Raw Data tab — the contents of those come through too, which is convenient for analysis and something to check before sharing the output.
Should I convert Excel to text or to CSV first?
If your destination reads tabular data, export CSV from Excel and skip this page — you keep delimiters and the column structure. Plain text is for the other case: when something downstream wants prose-shaped input, like an embedding pipeline or a keyword sweep across a folder of workbooks.
Everything Else in the Suite
File2Txt accepts any supported format from one page if you'd rather not choose. Related jumping-off points: JSON to text for API exports of the same data, PDF to text for the report the figures were published in, and PowerPoint to text for the deck that summarised them.
For code and web sources there's the GitHub to text converter, GitLab converter, and Web2Txt for scraping pages. The file to text converter guide covers how to decide between formats in general.
Repo2Txt is built and maintained by v12hero, an independent developer building privacy-first native and web apps.