Learn how to continue translating your software projects with PTC’s AI, to receive human-quality results at machine speed and cost. PTC (Private Translation Cloud) lets maintain the existing translations from ICanLocalize, and continue getting excellent translations, at a fraction of the cost.
Migrating from ICanLocalize to PTC
You can keep all your existing translations from ICanLocalize and import them into PTC. This way, your past investment in professional translations continues to serve as the foundation for your projects.
Step 1: Sign Up for PTC
PTC offers a 30-day free trial with no credit card required. During the trial, you can:
- Upload unlimited resource and translation files
- Translate as many files as you need
After the trial, you can continue using PTC for €30 per user per month.
Step 2: Choose How To Use PTC
When creating a project in PTC, you can choose from three ways to use it. All three workflows let you upload your existing translations. PTC will use the translations as the foundation for your project and will not overwrite them unless the source strings change.
Option | How it works | Benefits | What to be aware of |
---|---|---|---|
Manual File Upload | Manually upload your resource files and existing translation files. | Easy to use, no integrations required. Great for getting familiar with PTC. | You’ll need to re-upload resource files and translation files whenever your source text changes. |
Git Integration | Connect PTC to your GitHub, GitLab, or Bitbucket repository. PTC monitors your repository, generates translations for new/updated strings, and sends them back via merge requests. | Fully automated. No need to manually upload files. PTC automatically detects existing translation files in your repository. It always detects changes to source files and keeps translations in sync. | Requires granting PTC read and write access to your repository. May require a developer to set up the integration. |
API Integration | Send resource files to PTC via an API request and get translations back in the same request. | Maximum flexibility. Great for custom workflows and automated build systems. | Requires development work to set up and maintain the integration. |
Both the Git and API integrations automate the translation workflow. This means that when you add new source strings or update existing strings, you don’t need to manually upload updated resource files or request translations. PTC will:
- Detect the changes to source files
- Automatically generate translations for only the new or modified strings
This way, you continue building on the human translations you already invested in, while removing the manual overhead of managing translation updates.
Step 3: Provide Product Context (Critical for Future AI Translations)
Before you upload your files for the first time, PTC will ask for details such as:
- Your product name
- What it does
- Who it’s for
This step ensures that PTC’s AI can deliver context-aware translations in the future. Your imported translations will not be modified, but when you add new strings or update existing ones, the AI will use this information to generate translations that match your product’s tone and style.
Step 4: Upload Your Resource File
Upload your source resource files. PTC supports a wide range of formats, including:
- .pot / .po – WordPress themes and plugins
- .json – React, Angular, Vue, Node.js, and other JS frameworks
- .yaml / .yml – Ruby on Rails, Symfony, and backend frameworks
- strings.xml – Android applications
- .strings, .stringsdict,.xcstrings – iOS applications
See all supported resource file formats →
Step 5: Choose Your Translation Languages
PTC supports translation into 33+ languages. In the setup wizard, select all the languages you already have translations for. Optionally, add new languages. For these, PTC will generate human-quality AI translations.
Step 6: Upload Your Existing Translations
How you provide your existing translations depends on the workflow you chose in Step 2:
1. Manual File Upload – You’ll be prompted to upload your existing translation files for each language.
2. Git integration – PTC will automatically detect any translation files that are already in your repository. You can decide whether to:
3. API integration – With the API workflow, you’ll configure how translations are sent and received later as part of your CI/CD pipeline. Existing translations can be uploaded separately after the project setup is complete.
Step 7: View and Manage Translations in the PTC Dashboard
Once uploaded, you can access all your source and translation strings in the Translations tab of your PTC dashboard. Here, you can edit translations directly in a clean, table-style view. Any strings that exceed the length limit are highlighted in yellow. You can either keep them as is or ask PTC to generate shorter alternatives.
From the Resource Files tab, you can download all translations at any time as a ZIP archive. When you unpack the archive, you’ll see one translation file per target language, in the same format as your source file.
For example:
- If you uploaded a .json file, your translations will also be in .json files
- If you uploaded .pot or .po files, your translations will be in .po files
- The same applies to all other supported formats
- From your project’s dashboard, go to Translations → Paste to translate
- Select the type of text you want to translate
- Paste your content
- Click Translate
Translate Other Types of Text
Many projects include text outside of resource files, such as release notes, announcements, changelogs, or marketing emails.
You can translate these using PTC’s Paste to translate feature:
PTC will use your project context to produce translations that match your product’s tone and terminology. You can then copy the translations and paste them into the correct location in your project.
Frequently Asked Questions
I use ICanLocalize to translate content on my WordPress site. What now?
Your existing translations are stored in your site’s database and remain available through WPML. For new or updated translations, you can select PTC as your translation engine in WPML.