Visual Studio CodeVS Code Extension available! Install now

Translate gettext PO/POT files online

Upload your .po files to SimpleLocalize, add languages, auto-translate and download one .po file per language in seconds.

Translate PO file
No credit card required14-day free trialTracking-free service
# Single line msgctxt "My translation context" msgid "My translation key" msgstr "My translation message" # Multiple lines msgid "" "The input text " "split to several " "lines" msgstr "" "Translation " "can also be splitted."
# Single line
msgctxt "My translation context"
msgid "My translation key"
msgstr "My translation message"

# Multiple lines
msgid ""
"The input text "
"split to several "
"lines"
msgstr ""
"Translation "
"can also be splitted."

What is the gettext PO/POT format?

gettext PO files pair every msgid with a msgstr and support plural forms, contexts and translator comments. They are the standard in Python, PHP, WordPress, Django and desktop Linux software.

It is used by Django, WordPress, PHP, Python, GNU tools. SimpleLocalize reads and writes it natively, so you keep your existing project structure. Format value for the CLI and API: po-pot. Read the format documentation.

How to translate gettext PO/POT files

  1. Create a free account and a project. The Community plan covers small apps with no credit card.
  2. Import your .po file in the web editor, or push it from the terminal with the CLI.
  3. Add target languages and run auto-translation. Use DeepL or Google Translate for speed, or OpenAI, Claude and Gemini with your own API key for context-aware translations.
  4. Review in the editor with QA checks, glossary and screenshots, then download the PO files or publish them to the translation hosting CDN.

Sync PO files from CI

Add a simplelocalize.yml to the repository and run simplelocalize upload and simplelocalize download in your pipeline or GitHub Action:

# simplelocalize.yml apiKey: YOUR_PROJECT_API_KEY uploadFormat: po-pot uploadPath: ./locales/{lang}.po downloadFormat: po-pot downloadPath: ./locales/{lang}.po
# simplelocalize.yml
apiKey: YOUR_PROJECT_API_KEY
uploadFormat: po-pot
uploadPath: ./locales/{lang}.po
downloadFormat: po-pot
downloadPath: ./locales/{lang}.po

Convert PO to other formats

The same project can export translations in more than 30 formats, and the free online converter works without an account:

All conversions and free translation tools.

Start translating PO files

  • Native gettext PO/POT import and export
  • Auto-translation with DeepL, Google, OpenAI, Claude and Gemini
  • Translation editor, QA checks, CLI and CDN on the free plan
Start for free
No credit card required5-minute setup
"The product
and support
are fantastic."
Laars Buur|CTO
"The support is
blazing fast,
thank you Jakub!"
Stefan|Developer
"Interface that
makes any dev
feel at home!"
Dario De Cianni|CTO
"Excellent app,
saves my time
and money"
Dmitry Melnik|Developer