1. Help Center
  2. Setup
  3. I have set up localization via Phrase - What's next?

Working efficiently with Phrase

This guide provides an overview on how to work efficiently with your localization files via Phrase.

Working efficiently with Phrase - An introduction

So you have set up localization via Phrase for your technology stack - What’s next?

Of course you want to know how to work efficiently with your localization files via Phrase:

  • Where should the team enter new translations?
  • How can we add Phrase into a continuous workflow?
  • How does Phrase handle translation merge conflicts?
  • and many more.

Please note: Sample code shown on this page uses the .

Adding new source translations and keys

Typically new source translations or keys are introduced by developers. There are three recommended ways to add new keys to your Phrase localization project:

Adding keys manually via Translation Center

Use the Key Management section in Phrase Translation Center to add new keys to your project, along with a default translation.

Adding keys via file upload

Adding lots of new keys manually can be tedious, so you can always upload new keys and translations via file upload. When uploading files we only add new content to your Phrase project, unless specified otherwise. Uploading files can be done easily with the Phrase Command Line Client:

$ phrase push

Adding keys via API

You can also create keys directly via the API. Learn more about the available options when creating keys in the API documentation.

Adding keys and translations via In-Context Editor

If you’re building a web application, using the In-Context Editor to add new source translations to your project might be the most efficient solution.

Developers can simply introduce new keys in the templates and enter default translations via In-Context-Editor in their local environment. It’s easy and gives you a great idea how text will actually look on the site.


Once new source translations or keys are added to your Phrase project, translators typically start working in order to translate the content into the languages you want to support.

With your own team

If you have your own translation team, you might want to invite them into your organization and grant them access to the project.

With professional translations from our partners

If your team cannot handle all languages you want to support in your software, you can order professional translations from our partners, too.

This lets you support dozens of languages with just a few clicks.

Downloading translations

After translating you most likely want to download the completed translations in order to ship or deploy them with your software.

Download files via Translation Center

You can always download your most recent localization files in the language overview of your Phrase project in Translation Center. Choose any format you like and click the Download button.

Download files via API/command line

As a developer or more experienced user, you might want to use the Phrase Client to download files with a single command, e.g.:

$ phrase pull

You can also run this command from your CI server and pull translations regularly, e.g. once per hour.

For a complete list of all available options execute:

$ phrase

Merge conflicts

Phrase does not attempt to resolve any merge conflicts but always downloads the most recent versions of your translations from your Phrase project.

We recommend to avoid translating keys locally but instead always use the Phrase platform. This avoids (merge) conflicts and lets everybody in your team access all recent translations at all times.

Deploying translations

As a final step, you most likely want to release the new translations with your application. There is no need to have a connection to Phrase in your production environment whatsoever. We strongly advise against calling our API in production to retrieve localization data.

Instead, treat the localization files you received from Phrase like any other file in your code repository/project. You should:

  1. Check them into version control
  2. Run tests against your application (if available)
  3. Deploy and release your software as you would do normally

Further reading