CSV and Excel translator
Translate a CSV or Excel file, every row, only the columns you choose
Upload a CSV or Excel file, choose the columns to translate, and get the same file back with every row in place. IDs, SKUs, handles, prices, links, formulas and HTML tags stay exactly as they were; only the text changes. The first rows are free with no sign-up, and the whole file, up to 5,000 cells, is $5 as one payment, with no subscription. A chatbot handles a short list well, but a catalog with thousands of rows does not fit in one reply, so it tends to stop partway or change things it should not. This tool works through the file in blocks and checks every cell that comes back.
- First rows free, no account needed
- Whole file $5, one payment: up to 5,000 cells and 300,000 characters
- You choose the columns; IDs, SKUs, prices and links are never translated
- HTML in cells, such as Shopify Body (HTML), keeps every tag and attribute
- Placeholders like {name} and brand names you list are checked in every cell
- 41 languages, formal or informal tone, your own glossary
| A · Handle | B · Title | C · Title (German) | Variant SKU | Price | ||
|---|---|---|---|---|---|---|
| 2 | classic-linen-throw-blanket | Classic Linen Throw BlanketKlassische Leinen-Wohndecke | Klassische Leinen-Wohndecke | <p>A light throw woven from washed linen that gets softer with every wash.</p><ul><li>Pre-washed for a lived-in feel</li><p>Ein leichtes Plaid, gewebt aus gewaschenem Leinen, das mit jedem Waschen weicher wird.</p><ul><li>Vorgewaschen für ein angenehm weiches Tragegefühl</li> | BLA-0101-OAT | 88.05 |
| 3 | classic-linen-throw-blanket | BLA-0101-SAGE | 88.05 | |||
| 4 | classic-stoneware-mug | Classic Stoneware MugKlassischer Steinzeug-Becher | Klassischer Steinzeug-Becher | <p>A wheel-thrown mug with a matte outside and a glossy glaze inside. 🌿</p><ul><li>Holds 350 ml</li><p>Ein auf der Töpferscheibe gedrehter Becher mit matter Außenseite und glänzender Glasur auf der Innenseite. 🌿</p><ul><li>Fassungsvermögen: 350 ml</li> | MUG-0102-SAND | 15.88 |
| 5 | classic-merino-beanie | Classic Merino BeanieKlassische Merino-Beanie | Klassische Merino-Beanie | <p>A ribbed beanie knitted from fine merino wool that stays warm without itching.</p><ul><li>100% merino wool</li><p>Eine gerippte Beanie aus feiner Merinowolle, die zuverlässig wärmt, ohne zu kratzen.</p><ul><li>100 % Merinowolle</li> | BEA-0103-SM | 110.63 |
Every row back. Only the text changed.
Handles, SKUs, prices and empty variant rows come back exactly as they were. In the HTML column the tags stay where they are and only the words between them are translated.
Demo store made up for this page; the German text is real output from the tool, from a 200-row file.
What you get back
You get your own file back, in the same format and encoding, with a language code in the name, for example products.de.csv. Before you download, the translated rows are shown on screen next to the originals, and you can edit any cell.
- The same rows in the same order. Every cell outside the chosen columns is copied from your file unchanged, and so is the header row.
- CSV: the same delimiter, quoting, line endings and encoding (UTF-8, UTF-16 or Windows-1252). If a translation cannot be written in Windows-1252, the file is saved as UTF-8 with a byte order mark.
- Excel: every sheet, formula, style and merged cell is kept; only the translated cells change. A cell with mixed formatting, such as one bold word, comes back as plain text in that cell.
- Optional: the translated columns added next to the originals instead of replacing them. In Excel they are added after the last column of each sheet, so formulas keep pointing at the right cells.
- A warnings list (on screen and as CSV) of any cell where a placeholder, tag or listed name did not survive two tries. Those cells keep the original text, so the file never breaks.
Translating a spreadsheet with a chatbot, and with this tool
ChatGPT, Claude and Gemini translate product text well, and for a few dozen rows they are a fine choice. With a long file the problem is rarely the quality of one cell. It is getting every row back, in order, with codes and markup untouched, as a file you can import.
| Your situation | A chatbot | This tool |
|---|---|---|
| A list of 30 product names | Usually translates it well | Translates it and gives you the file back |
| A catalog with thousands of rows | The answer has to be as long as the file, so it tends to stop at the reply limit or ask you to continue | Translates the chosen cells in blocks of up to 60, up to 5,000 cells per job |
| Handles, SKUs, prices and image links | Rewrites the whole file, so any of them can change along with the text | Never sent for translation; copied from your file |
| Shopify Body (HTML) | Sees the tags and attributes and can change them | Tags are swapped for markers first; only the text between them is translated, then the tags are put back |
| Placeholders like {name} or {{count}} | Usually keeps them, but nothing checks | Checks every cell; a cell that loses one is translated again, then kept in the original and listed |
| An Excel file with several sheets and formulas | Usually rebuilds a new table without your formulas or formatting | Changes only the text cells; formulas, styles and other sheets stay |
How to translate a CSV or Excel file
-
1
Upload your file and choose a language
Drop a .csv, .tsv or .xlsx file, pick the language and tone, and add brand names to keep if you like. Text columns such as Title and Description are suggested for you.
-
2
Check the first rows free
The first rows appear on screen next to the original. Change the columns if needed, and edit any cell in place. No account is needed for this step.
-
3
Unlock and download
Happy with the first rows? Unlock the whole file for $5, then download it translated in place, or with the translated columns next to the originals.
Why long spreadsheets trip up general AI assistants
To translate a spreadsheet in a chat, the assistant has to write the whole file back out: every row, every column, the codes and prices it was not asked to change. The answer is as long as the file. A catalog of a few thousand rows is longer than one reply can be, so the assistant stops partway, asks you to continue, or quietly shortens the end.
Structure is the second problem. A CSV row must keep its exact number of fields, and quotes, commas and line breaks inside cells must stay where they are. A model writing the file freehand can merge two rows, drop an empty variant row, or turn a quoted cell into two. On a short list you would notice. On five thousand rows you would find out when the import fails.
This tool never asks a model to rewrite your file. It reads the file into cells, sends only the text of the chosen columns, in blocks of up to 60 cells, and requires one translation back for every cell under the same number. HTML tags are swapped for short markers first, so the model never sees an attribute it could change. Every answer is checked for its placeholders, markers and the names you listed; a cell that fails is asked again, and if it fails twice the original stays in place and the cell is listed for you. The file is then rebuilt from your original, so everything else stays byte for byte the same.
What people translate
- Shopify and WooCommerce product exports: titles, descriptions with HTML, image alt text, SEO title and description
- Shopify Translate & Adapt exports: the Default content column is translated into the empty Translated content column
- Marketplace listings and supplier catalogs before a launch in a new country
- Help-center articles, FAQ tables and email templates kept in a spreadsheet
- Survey answers and customer reviews, to read them in one language
- App or website strings kept in a sheet with a key column and an English column
What it does not do
It translates .csv, .tsv and .xlsx files. Old .xls files, .ods files and Google Sheets need to be saved or downloaded as .xlsx or .csv first. It does not translate the header row, sheet names, cell comments, charts or formula results, so imports and formulas keep working.
One file per job, up to 50 MB. One payment covers up to 5,000 translated cells and 300,000 characters; Unlimited covers up to 15,000 cells. Cells beyond the limit stay in the original language and the screen tells you how many before you pay.
It is machine translation, checked for structure, not for meaning. It is well suited to catalogs, listings and internal files. For legal, medical or safety text, have a person review it.
Getting a good result
Use the free rows as a test: check a few product names and the tone of one long description. List your brand and product line names under "Never translate" and add a short glossary for words your store already uses, such as checkout or wishlist. Choose formal or informal for languages that have both, such as German or French.
Keep the columns that identify a product untouched. Handle, SKU, barcode, price and image columns are never suggested; Shopify option values (Option1 Value) are not suggested either, because a store matches variants by them. If you do want them translated, tick them yourself on the next screen.
By language and situation
What it costs
First rows
Free
Shown on screen, no account. 1 job a day, or 3 a day with a free account.
Whole file
$5
One payment for one file: up to 5,000 cells and 300,000 characters. No subscription, never expires.
Unlimited
$29/month
Every tool on the site, with files of up to 15,000 cells. Or $180 a year.
Questions and answers
Can ChatGPT translate a CSV file?
A short one, yes, and usually well. A long file has to come back in one reply, so a chatbot tends to stop partway, and nothing checks that every row, code and tag survived. This tool translates the chosen cells in blocks, checks each one, and rebuilds the file from your original.
How many rows can I translate?
One payment of $5 covers up to 5,000 translated cells and 300,000 characters; a cell is one piece of text in a column you chose, and empty cells, numbers and codes do not count. A 2,000-product Shopify export with title and description is about 4,000 cells. Unlimited covers up to 15,000 cells per file.
Will my Shopify import still work?
The file keeps the same header row, columns and rows, so it imports the same way. Handles, SKUs, prices, image links and option values are not translated unless you choose them. Body (HTML) keeps every tag and attribute; only the text between the tags changes.
Which files can I upload?
CSV and TSV files with a comma, semicolon, tab or pipe delimiter, in UTF-8, UTF-16 or Windows-1252, and Excel .xlsx files, up to 50 MB. The delimiter and encoding are detected for you and kept in the result.
Can I keep the original column and add the translation next to it?
Yes. After unlocking, download "With original columns" instead of "Translated file". In a CSV each translated column is inserted right after its original; in Excel the translated columns are added after the last column of each sheet.
Can I keep brand names and use my own terms?
Yes. Names you list under "Never translate" are kept as written and checked in every cell. Glossary lines such as checkout = Kasse are given to the translator for every block.
Which languages can it translate into?
41 languages, including Spanish, French, German, Italian, Portuguese (Brazil and Portugal), Dutch, Polish, Swedish, Japanese, Korean, Chinese (Simplified and Traditional), Arabic and Hebrew. The source language is recognized from the text.
Is it free?
The first rows of every file are translated free and shown on screen, with no account. The whole file, with the download, is $5 paid once. Unlimited, at $29 a month or $180 a year, covers every tool on the site.
Are my files private?
Only you can open your job. The text of the chosen columns is sent to an AI model provider for the sole purpose of translating it, through routes that do not use your data for training. Jobs uploaded without an account are deleted after 7 days, and you can delete any job yourself at any time.
Updated October 20, 2026 · APPFACT STUDIO LTD