How to Translate CSV Files with PTC

PTC delivers Better Than Human AI translations for .csv resource files often used in software like Shopify and Magento (Adobe Commerce). Learn how to prepare your CSV file and translate it automatically with PTC.

Translating CSV Files with PTC: First-Time Setup

If this is your first time using PTC, you’ll need to prepare your CSV file, connect your Git repository, and provide basic project details. After that, PTC automatically translates your files and keeps translations up to date whenever your source file changes.

Step 1: Store Translatable Text in a Structured CSV File

Each row in the CSV must contain a unique key and the original string.

Correct – Keys clearly identify each string

key

source_text ( English)

welcome_message

Welcome to our app!

button_submit

Submit

error_invalid_login

Invalid username or password.

notification_update_available

A new update is available.

Incorrect – No keys, inconsistent layout

source_text ( English)

Welcome to our app!

Submit

Invalid username or password

PTC uses the key column to track and match strings across languages. Without it, translations may be lost, overwritten, or shown in the wrong context.

Step 2: Use Placeholders Consistently

Use placeholders to mark where dynamic content (like usernames or numbers) will appear. Make sure you follow a consistent format such as {username} or {0} and use the placeholder format your product expects — such as {username}, %s, or %1.

Correct – Consistent placeholder format

key

source_text ( English)

welcome_user

Welcome, {username}!

time_left

You have {0} minutes left

Incorrect – Missing or malformed placeholders

key

source_text ( English)

welcome_user

Welcome username!

time_left

You have minutes: 5

PTC keeps placeholders intact in all target languages. If placeholders are missing or unclear, PTC may treat them as regular text and output a broken translation.

Step 3: Use Separate Keys for Plurals 

Use separate rows and keys for singular and plural versions. You should also use clear keys like item_singular and item_plural for context.

Correct – Separate entries for plural forms

key

source_text ( English)

item_singular

1 item

item_plural

{count} items

Incorrect – Combining both singular and plural forms into one line

key

source_text ( English)

item_count

1 item or {count} items

PTC treats each row as a standalone string. If you combine multiple plural forms, translations won’t adapt to the grammar rules of other languages.

Step 4: Escape Special Characters

Enclose values in double quotes if they contain commas, quotes, or newlines. Escape inner quotes by doubling them.

Correct – Proper CSV escaping

key

source_text ( English)

quote_example

“She said, “”Hello!”””

newline_example

“Instructions:\n1. Open the app\n2. Log in”

Incorrect – Unescaped special characters

key

source_text ( English)

quote_example

She said, “Hello!”

newline_example

Instructions: 1. Open the app 2. Log in

If you don’t escape quotes, commas, or newlines properly, you may see formatting issues in translations. For example, rows may break or fields may shift.

Step 5: Save Your CSV File in UTF-8 Encoding

Use UTF-8 encoding when you save your CSV file. This allows PTC to read all characters correctly, including accents, emojis, and non-Latin scripts.

If you use the wrong encoding, characters may show up as ???, boxes, or broken symbols in your translations.

You can use validation tools like CSVLint to validate your file and catch errors.

Step 6: Create a PTC Account and Connect Your Repository

Once you prepare your CSV files, sign up for a free 30-day trial of PTC. You’ll get unlimited and full access to all features. 

To start using PTC, connect your code repository. PTC works by integrating directly with your GitHub, GitLab, or Bitbucket repository. You need to grant PTC read and write access so it can:

  • Detect your CSV resource files
  • Translate them automatically
  • Push translated files back to your repo via a merge request

Step 7:  Choose Target Languages and Describe Your Product

PTC will ask for:

  • The languages you want to translate into – you can translate into any of the 33+ supported languages
  • A short description of your product and who it’s for

PTC uses this info to adjust tone, terminology, and level of formality across languages based on your product and audience. For example, if you built your app for teenagers, PTC might use casual phrasing like “You’re all set!”. But if your app helps professionals apply for jobs, PTC will choose a more formal tone.

Step 8: Check the Output Files in the Merge Request

PTC sends a merge request with the translations. 

Check the merge request to confirm:

  • You received a translated file for each language you selected
  • The translated files appear in the correct location in your repository
  • The files follow the same format as your original .csv

If files are missing, in the wrong location, or not named as expected, go to PTC → Settings and update the file paths and branches you want PTC to watch.

Step 9: Translate App Store Listings or Help Docs

PTC can also translate content that isn’t stored in .csv files — like your app listing description, help center articles, or setup instructions. You should also translate these elements so users can find and understand your product in their language.

Go to Translations → Paste to translate in your PTC dashboard, paste the text, select your languages, and PTC will return translated versions.

 You can copy and use the translations anywhere. For example, if you have a Shopify app:

  1. Go to the App Listing section of your Shopify Partner Dashboard
  2. Click Add translation and choose the target language
  3. Paste the translated content into the appropriate fields
  4. Save your changes

PTC Keeps Translations Up to Date

Once you set PTC up, it continues working in the background by:

  • Watching your Git repository for changes
  • Detecting new or modified strings automatically
  • Sending a new merge request with updated .csv files for each target language

Translate your project in minutes

Translate your .csv files with AI built for software projects. Try it free for 30 days — just connect your repo and go.

Scroll to Top