---
title: "Translate CSV and TSV files"
description: "Translate .csv and .tsv files up to 60 MB into one or several languages in one job. Identifier columns, quoting and row order stay intact. Example instructions included."
canonical: "https://ai-glot.com/docs/formats/csv"
updated: "2026-10-12"
---

# Translate CSV and TSV files

CSV and TSV files (`.csv` and `.tsv`) are accepted up to **60 MB**, the largest ceiling of any format. You say which columns hold words and which hold data, and AI Glot translates the words and returns every other cell exactly as it was.

> **Tip: Try it free**
>
> Drop a file of up to 2 MB on the free [CSV translator](https://ai-glot.com/file-formats/csv-translation) to try it with no account, five files a day. The app, the API and the CLI take CSV files up to 60 MB.

## What is translated, and what is left alone

| Translated                                                  | Left as it was                                               |
| ----------------------------------------------------------- | ------------------------------------------------------------ |
| The columns you name or that clearly hold text for people   | SKUs, handles, IDs, prices, URLs and any column out of scope |
| Cells that contain HTML: the words, with tags kept in place | Header row, column order and row order                       |
| Several languages at once, as new columns                   | Quoting, delimiter and line endings                          |

Strict UTF-8, comma, semicolon or tab delimiters and RFC 4180 quoting are supported, and every column needs a unique header. See [Files and formats](/docs/platform/files-and-formats#csv-specifics) for the full list.

## What you can ask

**Name the columns**

Scopes the plan to the columns that hold copy, in several languages at once.

Translate the name and description columns into French, German and Spanish. Leave sku and price unchanged.

**Fill only the gaps**

Translates cells that are empty in the target column and keeps the rest.

Fill the empty cells of the name\_fr column from the name\_en column. Keep the cells that are already translated.

**Only the changed rows**

Returns just the rows that were written, for a small import.

Translate the description column into Italian and return only the rows you changed.

**HTML in cells**

For a CMS export: tags stay, words are translated.

Translate the body column into Portuguese. Keep the HTML tags and attributes exactly as they are.

**Brand voice**

Sets register and protects product names.

Translate the headline and subject\_line columns into German. Keep the tone short and energetic, and leave the brand name Acme in English.

## Good to know

- **Several languages in one job.** CSV can take several target languages at once: each one is written to its own column. This is the main difference from single-language formats.
- **Output filter.** Available. Ask for "only the rows you changed" and you get a smaller file back. Without it, the whole file comes back with the same name pattern.
- **Tabs.** A `.tsv` file is read like a CSV and the tabs are kept.
- **A large file** such as 200,000 rows is split into batches internally and reassembled. The plan shows the row count and the word volume before anything runs.
- **A long cell.** Each value selected for translation can hold up to 50,000 characters. Split longer content into several cells first.
- **Prepare the export.** [Files and formats](/docs/platform/files-and-formats#preparing-a-spreadsheet-export) lists four checks that avoid most surprises.

## Related

- [Excel](/docs/formats/excel) for workbooks, and [OpenDocument](/docs/formats/opendocument) for ODS.
- [JSON, ARB and JSON Lines](/docs/formats/json) for the same data as records.
- [All file formats](/docs/formats)
