Localization is a must if you want your content to be accessible to an international audience. Machine translation using machine learning offers high-quality translations for a fraction of the cost compared to professional human translators.
CSV files are perfect for storing structured data and are used by most applications to export your data into a generic format.
Product catalogs can be exported to CSV files. CMS articles can be extracted into flat files.
👉 CSV has become the de facto format for sharing generic data between applications.
But you can't translate a CSV file as a simple text file. Some columns might be names, or dates and must be kept unchanged. How do you translate some columns from a CSV file?
I’ll show you how to translate your CSV for 35x cheaper than Google Translate or DeepL.
In this guide, we’ll go through these steps:
- How to import your CSV file on Datablist
- How to translate the text on a CSV column to another language
- How to deal with complex translations (HTML/JSON texts)
- Export your translated data as CSV or Excel files
Let's dive in.
Step 1: Import your CSV file
In this guide, all the work will be done online with Datablist CSV Viewer and Editor.
I will use a "Book Summaries" CSV file in this example. The demo CSV file is accessible here.
Start by creating a new collection. The collection will hold your CSV data. Click on the + button in the sidebar or the "Start with a CSV/Excel file" shortcut on the home page.
When using the "+" in the sidebar, select "Import CSV/Excel" to go to the CSV importer.
After loading your CSV file, Datablist lists the columns found. Every column is analyzed to detect its data type. On the column with your data to translate, select the "Long Text" data type if not already selected.
With "Long Text", you will have a better user experience managing your texts.
Review your data and import your CSV content into Datablist.
Step 2: Select the items to translate
Datablist offers "Enrichment" to interact with your data. You can enrich Facebook leads or clean email listings directly from your data.
Three translation providers are integrated into Datablist: Google Translate, Deepl Translate, and ChatGPT Translator. You can use one of them, or try them all to find the best suited for your texts.
Important - Enrichments are only available for registered users. Sign up for free to start translating your CSV files.
Enrichments are available with the "Enrich" menu. Enrichments will run on all your items or on the selected items.
Translate all items
By default, the actions available with the "Enrich" button will run on all of your items. Translation actions will translate all of your listed items.
Select specific items
To translate only some of your items, click and move on the checkboxes while holding the click.
Step 3: Translate your CSV file
To list the machine translation providers available on Datablist, filter the enrichments by clicking on the "Translations" section.
Here are shortcuts for the 3 translation providers:
- Translate a CSV file using Google Translate
- Translate a CSV file using Deepl
- Translate a CSV file using ChatGPT - 35x cheaper
Translate a CSV file using Google Translate
Select "Google Translate" in the listed enrichments to open the configuration drawer.
Before translating your CSV, you need to fill out the settings and define the input.
For the settings, you must define:
- Source Language - Optional - If not defined, the source language will be auto-detected. If your texts are in different languages, keep the source language unselected.
- Target Language - Mandatory - Select the target language. Language names are listed with English names. See supported languages.
Then, in "Input Property", select the property from your CSV file with the texts to translate. The other columns won't be translated. This is perfect to translate a single CSV column and preserve the others.
In this example, the book summaries are listed in the "Description" property. I select "Description".
📕 Important
Only Text/Long Text properties are translatable. Other data types are ignored.
Click on "Continue to outputs configuration" to define where the translated texts will be stored.
Here, click on the "+" button to create a new property in your collections.
📘 Notes
Your source property (= column) will not be updated. The output property cannot be the input property as it would overwrite its data. You will be able to manage your properties in the last step to have the desired column names.
Once configured, click "Run on first 10 items" to run the translation enrichment on a test batch of 10 items.
This step is very useful to ensure your settings configuration is correct. Scroll the data table to see your translated texts. If the translations are not good, please review the "Source Language" or the input property.
If the translated texts are good for the ten first items, click "Run enrichment on all items" to process the remaining items.
Translate a CSV file using Deepl
Deepl is a machine translation service launched in 2017. Deepl is known for its accuracy compared to Google Translate. Under the hood, Deepl uses a different kind of neural network called convolutional neural networks (CNNs). This technology keeps the context as it processes long texts. So, Deepl is better suited for longer texts and Google Translate for texts with unrelated sentences.
To use Deepl, follow the same process as Google Translate but select the new Deepl action.
Translate a CSV file using ChatGPT (35 times cheaper!)
ChatGPT is a language model developed by OpenAI. One of its many uses is for translation. It comprehends the nuances of language, allowing it to grasp the context and meaning behind sentences. This contextual awareness enables ChatGPT to produce accurate and contextually appropriate translations.
ChatGPT comes in different models, each with a different pricing.
On the 18th of July, 2024, OpenAI released the GPT-4o mini model. A very cost-effective model returning high-quality translations.
Since August, 2025, GPT-5 models are live — faster and with bigger context windows. GPT-5 nano is the cheapest option for translating texts.
Compared with Google Translate or Deepl, ChatGPT is 35 times cheaper and the translations are of almost equivalent quality to Google Translate. Deepl is still first in translation quality but by a small margin.
I recommend you give it a try on a subset of your items to evaluate the translation quality. If like me you find the results accurate, ChatGPT is an economical choice for CSV translations.
How to select a different ChatGPT model for translation?
Datablist lets you choose between different ChatGPT models when translating your CSV data.
Here is how to choose:
- GPT-5.5, GPT-5.4, GPT-5.2, GPT-5.1, GPT-5 - Best for difficult translations. Use them for long text, nuanced tone, legal or technical content, or files with HTML/JSON structure. They cost more.
- GPT-5 mini and GPT-5.4 mini - A middle ground. Use them when you want stronger context handling than nano models without paying for the flagship models.
- GPT-5 nano and GPT-5.4 nano - Cheapest GPT-5 options. Use them for large CSV files, product descriptions, short text, reviews, and simple content.
- GPT-4.1 - Strong older model. Use it when you want a proven model for complex text.
- GPT-4.1 mini and GPT-4.1 nano - Cheap options for high-volume translations. GPT-4.1 nano is still a good budget choice.
- GPT-4o - Strong, reliable, and more expensive.
- GPT-4o mini - Default model. Good price/quality ratio for most translation jobs.
💡 Tip
Start with a nano or mini model when translating a large CSV file. If the sample has tone or context issues, switch to a stronger model.
To select a different model:
- In the "Translate with OpenAI/ChatGPT" enrichment, click on “Advanced Settings”.
- Under the "GPT Model" selection, pick the version you want to use.
Each model has a trade-off. Stronger models understand context better. Smaller models cost less and work well for clean, repetitive text.
💡 My advice?
Start with GPT-5 nano or GPT-5.4 nano. Run a test on a few rows. If the translation looks good, use it for the full file. If the text needs better tone or context, try a mini model. For legal, technical, or brand-sensitive content, use a flagship model and review the output.
How to deal with complex translations?
Some texts are easy to translate. Others… not so much.
You’ve probably hit snags when translating:
- HTML code
- JSON-formatted content
- Business text with English jargon
- Product names or company names
- Form labels or placeholders
- Sentences with variables like
{first_name}or[LINK]
These are what I call “don’t break it” translations. You want the words in another language, but you don’t want the structure or key terms to change.
This is where custom instructions help.
When using the “Translate with OpenAI/ChatGPT” action in Datablist, you can write your own custom instructions that will be sent to ChatGPT. It controls how the translation works.
Let me show you some real-world examples.
1. Don’t translate business terms
You often want to keep words like “API”, “CRM”, “lead”, “SaaS”, etc.
2. Keep HTML and variables safe
If your text has HTML tags or variables, ChatGPT might break them unless you tell it not to.
👉 Input:
<p>Hello {first_name}, welcome to <b>Our App</b>!</p>
👉 Custom instruction:
✅ Result (Spanish):
<p>Hola {first_name}, bienvenido a <b>Nuestra App</b>!</p>
3. Translate JSON or structured content
JSON is tricky. One broken quote and your JSON is invalid. JSON is ofter used for product catalogs, or when you translate an application.
If your source file is raw JSON rather than CSV, convert it first with the JSON to CSV Converter, then translate the resulting columns.
👉 Input:
{
"title": "Your payment was successful",
"description": "You can now access premium features."
}
👉 Custom instruction:
✅ Result (French):
{
"title": "Votre paiement a été effectué avec succès",
"description": "Vous pouvez maintenant accéder aux fonctionnalités premium."
}
4. Keep product names or brands
Let’s say your app is called Formly and you don’t want it translated.
👉 Custom instruction:
5. Adjust tone or formal level
Want to sound formal in German, but casual in Spanish?
👉 Custom instruction:
Pro tip: Stack instructions
You can mix them!
👉 Example:
Custom instructions let you control how ChatGPT works. Without them, it guesses. With them, you’re the boss.
Process your list step by step
Got a big CSV to translate? Or maybe you're testing different instructions or models? You don’t have to process everything at once.
Instead, you can run the enrichment on just a few items at a time.
Use the "Number of items to process" setting to control how many rows you want to process in a single run.
Continue where you left off
Once you've processed a chunk, you can come back later and run the enrichment again.
Click on the enrichment column, then select "Run Enrichment".
It opens the enrichment drawer with the same settings you used before.
By default, it skips already processed items. This is handy when you're working through your file bit by bit.
To reprocess everything or a specific set, use the "Run on" option and choose what should be processed.
Want to redo previous results?
Maybe you want to try another GPT model. Or update your custom instructions.
In that case, change the "Existing data rule" to Overwrite existing data in output properties.
That way, old values get replaced with the new ones.
💡 Use case tip
When testing multiple prompts, run each on a small batch. Compare results. Pick the best. Then run it on the whole list.
Step 4: Review your translations
Translated texts are saved in the "Translated Texts" output property.
Automatic translations are convenient but error-prone. A manual review of your translations is important.
Check the translated texts to:
- Find names and domain-specific vocabulary - Google might translate product names or technical words. Note: words beginning with a capital letter are usually not translated.
- Review variable placeholders - If your texts are used for software applications, check variable placeholders that must not be translated.
To quickly read and edit your translated texts, press "Enter" on a cell to enter edit mode.
Or open the details drawer.
Step 5: Export your translations as CSV or Excel files
The final step is to export your data back to a file to reimport it into your application. See our documentation to export your data in CSV or Excel files.
To export your data with the same CSV columns as the imported file: edit your properties to match the original columns.
Click on the properties management button.
Then:
- Rename the source property
- Hide the source property
- Rename the new property with translated text to match the source name
See the video below for a step-by-step guide.
Everything you need to know about CSV file translations
How to get the number of characters to translate?
Datablist provides an easy tool to perform calculations on your data. Use the "Characters Count" calculation to get the sum of characters for a property.
Click on the property column, and select "Perform calculation".
Then, pick "Characters count".
The result is displayed directly in the drawer.
Notes
Calculations run on the current view. If you have filters or selected items, the calculation will run on those instead of all items.
How much do the translation providers cost?
Use the number of characters you got above to get an estimation of the translation cost.
Google Translate and Deepl cost 35 credits per 1000 characters. One credit costs $0.001 (less with higher top-ups).
So, the calcul is:
(NumberCharacters/1000)*35 = TotalCreditsCost
Then,
TotalCreditsCost*0.001= TotalCostDollar
For example, for 300 000 characters:
(300000/1000)*35*0.001 = $10.5
ChatGPT costs 1 credits per 1000 characters. With the same calcul, we get for 300 000 characters:
(300000/1000)*1*0.001 = $0.3
That is 30 times cheaper with ChatGPT (10.5/0.3 = 35).
Which translation provider should you use?
Datablist lets you translate CSV files with Google Translate, DeepL, and ChatGPT. The best choice depends on your content.
Use Google Translate when:
- You need broad language coverage
- Your text is short and simple
- You want a fast baseline translation
Use DeepL when:
- You translate European languages
- Tone and fluency matter
- You translate marketing copy or long paragraphs
Use ChatGPT when:
- You want a lower cost for large CSV files
- You need custom instructions
- Your text contains HTML, JSON, placeholders, or product names
- You want to keep business terms such as API, CRM, SaaS, or leads unchanged
- You translate product descriptions, app strings, support tickets, or reviews
For many CSV translation jobs, ChatGPT is the best first test. Run it on 10 rows, review the output, then decide if you need DeepL for a higher-quality pass.
When ChatGPT is better for CSV translation
ChatGPT is useful when the translation needs rules, not only language conversion.
For example, you can tell ChatGPT:
- Keep
{first_name}unchanged - Keep HTML tags
- Translate only JSON values, not keys
- Keep brand names in English
- Use formal German
- Use casual Spanish
- Keep product SKUs unchanged
This matters for ecommerce catalogs, app localization files, landing page copy, email templates, and support macros.
The Translate with ChatGPT/OpenAI enrichment includes advanced settings for HTML/XML, JSON, and custom instructions.
CSV translation use cases
CSV files often contain more than plain text. They mix product fields, IDs, dates, tags, URLs, and text columns.
Here are common files you can translate with Datablist:
- Ecommerce product catalogs with titles, descriptions, and bullet points
- Shopify, WooCommerce, or Magento exports
- App localization files with labels and messages
- Customer reviews from marketplaces or survey tools
- Support tickets and helpdesk messages
- Blog or CMS exports
- Sales notes, CRM notes, and company descriptions
- Job descriptions and recruiting messages
Translate only the text columns. Keep IDs, SKUs, prices, URLs, and dates unchanged.
Bulk CSV translation checklist
Before running a large translation job, check these points:
- Select the right text column.
- Keep the original column unchanged.
- Write translations to a new column.
- Set the source language if the text is short.
- Use custom instructions for placeholders, HTML, JSON, or brand terms.
- Run the first 10 rows.
- Review names, product terms, links, and variables.
- Process the remaining rows.
- Export only the columns you need.
This avoids the most common translation issues: broken placeholders, translated IDs, overwritten source text, and inconsistent tone.
Common CSV translation mistakes
Avoid these mistakes when translating a CSV file:
- Translating the full file as one text block
- Translating IDs, SKUs, dates, or URLs
- Overwriting the source column before review
- Forgetting to preserve placeholders such as
{name}or{{email}} - Translating JSON keys instead of values
- Running a large file before testing 10 rows
- Skipping review for product names and industry terms
CSV translation works best when you translate one text column at a time and keep the rest of the structure unchanged.
Why use CSV files for bulk translations?
CSV is a format to store structured data using text files. In a CSV file, each line is a data record. And each record is made of fields separated by commas (or sometimes by semicolons ";" or tabular keys).
CSV files are a common way to transfer data between applications. Because it relies on text files, the CSV format is a simple way to export database or spreadsheet data. Any text editor can open it but you need a CSV editor to avoid errors when manipulating CSV files.
You can export your data in CSV in most applications, translate specific columns, and reimport the translated CSV file back into your application.
Any structured listings with text columns are perfect to be represented with CSV.
For example:
- Translating a Product Catalog with text columns such as title and description
- Translating blog articles using structured files with title and article content
- Translating a list of User Reviews
How many translations can I perform for free?
Datablist uses Google Translate API and Deepl which have a cost. As much as we would like to offer this service for free, we have to set a limit for free translations.
Free users can translate up to 50 items per month for free. Upgrade to the Standard plan for unlimited translations.
Can I use my own Deepl API key?
If you already have a Deepl account, you can use it directly on Datablist. An option to set your custom Deepl API Key is available for Standard users.
With a custom Deepl API Key, the action doesn't use Datablist credits. The action calls Deepl API on your behalf.
This option is perfect when you have large datasets to translate.
Human translation vs machine translation
Machine translation is powered by automated software that translates source content into target languages. The best automatic translation providers use artificial intelligence and machine learning to offer high-quality translations.
Human translations by professional translators shine on complex texts. When the context is important, the text is long, and when vocabulary is technical or specific, machine translation is surpassed.
I like hybrid translation, combining machine translation with human review and rewrite. The hybrid translation is perfect for webpage internationalization.
What languages are supported?
Datablist relies on Google Translate API, Deepl API, and ChatGPT API for automatic translations. The accepted languages for Google Translate are listed on this page. At the time of writing, 111 languages are available. Translations from and to any of the listed languages are possible.
Deepl supports fewer languages. Currently 28 languages are available.


























