AI Text FormatterOpen the tool
ChatGPT → Excel

ChatGPT Table to Excel

Paste a ChatGPT table and get real Excel columns. Copy it for Excel, or download a .xlsx with numbers, percentages and currency typed, a bold frozen header, and every table from the answer on its own sheet.

How do I copy a ChatGPT table into Excel?

Copy the table in ChatGPT, paste it into the box above, and click Copy for Sheets / Excel; then paste into Excel and the cells land in separate columns with numbers recognised. For a file, click Download .xlsx: numbers, percentages and currency are typed and formatted, the header row is bold and frozen, and each table in the paste becomes a sheet. The conversion runs in your browser; nothing is uploaded.

Tip: select the table in ChatGPT (or on any web page) and paste it here. Markdown, tab-separated, CSV and copied web tables are all detected.

Coming from another assistant?Claude → ExcelGemini → ExcelPerplexity → ExcelDeepSeek → Excel

How to use it

  1. Copy the table in ChatGPT

    Select the table and copy, or use the copy button under the answer. Markdown pipes, a copied web table, tab- or comma-separated rows all work.

  2. Paste it above

    The table is detected as you paste and shown as a grid. Check the header toggle if the first row was not recognised as a header.

  3. Choose Excel's route in

    Click Copy for Sheets / Excel and paste into a sheet, or Download .xlsx for a typed file with every table on its own sheet.

  4. Add formulas in Excel

    Numbers, percentages and currency arrive typed, so SUM, sort and charts work straight away.

Frequently Asked Questions

Why does a ChatGPT table paste into Excel as one column?

ChatGPT writes tables in markdown: rows of text with the cells separated by | characters and a |---|---| line under the header. When you select and copy that, the clipboard holds plain text, and Excel puts each line into one cell because it has no idea the pipes are column dividers. This page reads the pipes (and tabs, commas or a copied web table) and gives Excel the table in a form it understands.

Does the .xlsx keep numbers as numbers?

Yes. With "Detect numbers" on, cells like 12,400, $8,120, 8.5% and (1,234) are written as typed numeric cells with the matching format — thousands separator, currency, percent — so SUM, sorting and charts work immediately. Codes with leading zeros and digit strings longer than fifteen characters are deliberately kept as text so nothing is corrupted. Turn the toggle off to write everything as text.

Can I convert several tables at once?

Yes. Paste a whole answer and every table in it is detected; tabs above the preview let you switch between them. Copy and CSV work on the selected table; the .xlsx download puts each table on its own sheet, named Table 1, Table 2 and so on.

What happens to dates?

In the .xlsx download, dates are written as text, because a date can only be typed correctly if the format and locale are known, and 1/2 is a different day in Chicago and in Madrid. Paste with Copy for Sheets / Excel instead and Excel applies its own date recognition, which uses your regional settings. ISO dates like 2024-03-01 are recognised everywhere.

Is the table uploaded anywhere?

No. The parsing, the copy and the .xlsx file are all produced in your browser with client-side JavaScript; the spreadsheet library loads only when you click Download. Nothing is sent to a server, stored or logged, which matters when the table is pricing, payroll or client data.

Will formulas from ChatGPT work?

Cells are written as values, not formulas. If ChatGPT wrote =SUM(B2:B4) in a cell, the .xlsx keeps that as text; when you paste into Excel instead, Excel treats a cell starting with = as a formula and evaluates it. Add totals and formulas in Excel after the data is in — that is the reliable order.

Why the table falls apart when you paste it

A table in the ChatGPT window looks like a table, but underneath it is markdown: one line of text per row, cells divided by vertical bars, and a line of dashes under the header. Select it, copy it, paste it into Excel, and Excel does the only thing it can do with plain text: one line per cell, pipes and all. You get a single column of | Widget Pro | $12,400 | 8.5% | strings. The copy button under the answer sometimes does better, because it also puts a rich version on the clipboard, but what arrives depends on the Excel build, and the numbers often come through as text with a stray space or a non-breaking space attached.

The manual repair is Data → Text to Columns with | as the delimiter, then trimming the spaces, then deleting the dashes row, then converting the number-shaped text to numbers. That is five minutes per table. This page does it on paste and hands the result to Excel in whichever form you want.

Three ways in, and when to use each

RouteBest forWhat arrives
Copy for Sheets / ExcelDropping a table into a sheet you already have open. Excel reads the rich copy straight into cells and recognises numbers, percentages and dates itself.Header row, column order, cell text
Download .xlsxA file to send, archive or import. Numbers are typed, % and $ € £ get formats, the header is bold and frozen, and every table in the paste becomes its own sheet.Typed numbers + formats, sheets
Download .csvImports into other systems — accounting software, a database, a CRM. One table per file, UTF-8 with a byte-order mark so Excel reads accents correctly.Plain values, universal

Copy puts both a rich table and a tab-separated version on the clipboard, so it also pastes correctly into Numbers, LibreOffice and Google Sheets.

Copy for Sheets / Excel is the everyday route. The clipboard carries an HTML table, which Excel reads directly into cells: the header row becomes the first row, each cell becomes a cell, and Excel runs its own recognition on the text, so 12,400 becomes a number and 2024-03-01 becomes a date in your regional format. It is the same thing that happens when you copy a table from a web page, done cleanly.

Download .xlsxis for when you want a file: to attach to an email, to import into a system that wants a workbook, or to keep. The file is built in your browser from the parsed cells, which means the typing is done by the tool rather than by Excel’s guesswork: numbers are numeric cells with a thousands-separator format, percentages are stored as fractions and formatted as percentages, currency keeps its symbol as a format rather than as text, the header row is bold and frozen so it stays visible while you scroll, and column widths are set from the content. If the answer contained three tables, the workbook has three sheets.

Download .csv is the lowest common denominator. One table, plain values, commas and quotes exactly as the CSV standard says, with a byte-order mark at the start so Excel opens accented names correctly instead of as mojibake. Use it when the destination is not Excel at all.

What happens to numbers, percentages and currency

The point of a spreadsheet is that the numbers add up, so the tool is careful about which cells it treats as numbers. The rules below apply to the .xlsx download and to the right-aligned preview; when you paste instead, Excel applies its own, similar recognition.

In the tableIn the .xlsx
12,40012400, shown with a thousands separator
$12,400 / €950 / £1,200A number with a currency format, so the column sums
8.5%0.085 formatted as 8.50%; 14% becomes 0.14 shown as 14%
(1,234) or −1,234-1234 (accounting negatives and the Unicode minus both work)
007, 02134, 1234567890123456Text, on purpose: codes and long IDs lose leading zeros or precision as numbers
2024-03-01, 1/2Text in the .xlsx; Excel recognises them as dates when you paste instead
1.234,56 (European)Text — only the 1,234.56 convention is read as a number

Two of those rules are worth a sentence each. Leading zeros are the classic spreadsheet accident: a ZIP code of 02134 becomes 2134 the moment it is typed as a number, so anything that starts with a zero stays text. And a sixteen-digit account or card number cannot be held exactly in a spreadsheet number, which rounds past fifteen digits, so those stay text too. Switch “Detect numbers” off if you would rather have every cell as text and type the columns yourself.

Several tables, several sheets

ChatGPT answers often contain more than one table: a summary and a breakdown, a before and an after, one table per region. Paste the whole answer and each table is found separately — the count and a row of tabs appear above the preview. Copy and CSV act on the table you have selected; the .xlsx download writes all of them, one per sheet, in the order they appeared. Prose between the tables is ignored, so there is no need to trim the answer before pasting.

Cleaning that happens on the way

Cells are cleaned the same way the rest of this site cleans AI text. Bold markers, backticks and other inline markdown are removed, so a header written as **Revenue** arrives as Revenue. Links become their text with the address in brackets. Line breaks inside a cell, which markdown writes as <br>, become real line breaks. And the hidden characters that ride along with copied AI output — zero-width spaces, non-breaking spaces, the narrow space in “3 PM” — are stripped, which is what makes the number recognition reliable: a non-breaking space glued to 12,400 is the usual reason a pasted number refuses to add up.

Not only ChatGPT, not only markdown

The detector reads whatever table shape it is given. Markdown tables from Claude, Gemini, Copilot and Perplexity look the same as ChatGPT’s. ASCII tables drawn with +---+ borders or box-drawing characters, which some models and most command-line tools produce, are read too. Tab-separated text from a terminal or a log, comma- or semicolon-separated CSV pasted from a file, and a table selected on any web page all parse. If you have a table from a Claude or Gemini answer, this is the page for it as well.

Related tools

Private and free

Parsing, copying and building the .xlsx all happen in your browser with client-side JavaScript. Your table is never sent to a server, stored or logged. No account, no limits, no watermark.