118 locales, ready today

Your product speaks every language.

General Translation builds full-stack infrastructure for localizing apps, docs, and websites.

npx gt@latest
Talud, tablero, stair · ordered dither

Cursor, Ramp and Profound ship in over thirty languages

  • Cursor
  • Ramp
  • Mintlify
  • Profound
  • Partiful
  • ClickHouse

The T component

Wrap the markup once. The build ships every locale from the same source file.

app/page.tsx
import { T, Num, DateTime } from 'gt-next';export default function Home() {  return (    <T>      <main>        <h1>Hello, world!</h1>        <p>          <DateTime>{new Date()}</DateTime>        </p>        <p>          GT has everything you need to ship your          product in <Num>{118}</Num> languages.        </p>      </main>    </T>  );}
  • ¡Hola, mundo!

    es
  • Bonjour, le monde !

    fr
  • Hallo, Welt!

    de
  • こんにちは世界!

    ja
  • 你好,世界!

    zh
  • مرحباً بالعالم!

    ar
  • Numbers1.234.567,89de
  • Currencies1.280,00 €de
  • Dates29 juil. 2026fr
  • Plurals1 plik · 4 plikipl
  • Routing/fr/a-proposfr
  • en
  • es
  • fr
  • de
  • ja
  • zh
  • ar

Everything localization needs.

Libraries, the CLI, the dashboard, and Locadex, as they ship.

Libraries

Six first-party SDKs, one import each.

  • Next.jsgt-nextnpm i gt-next
  • Reactgt-reactnpm i gt-react
  • React Nativegt-react-nativenpm i gt-react-native
  • TanStack Startgt-tanstack-startnpm i gt-tanstack-start
  • Node.jsgt-nodenpm i gt-node
  • Pythongt-fastapipip install gt-fastapi

CLI

One config file and one command per build.

gt.config.json
{  "defaultLocale": "en",  "locales": ["es", "fr", "ja", "de", "zh"],  "files": {    "json": { "include": ["public/_gt/[locale].json"] }  }}
$ npx gt translate --dry-run128 strings · 6 locales · 0 tokens billedesfrjadezh

Dashboard

Glossaries, directives, and review in one workspace.

TermLocalePinned as
VaultdeVault
VaultesVault
VaultjaVault

directive Formal register (Sie) for de

Locadex

The agent that internationalizes your repo in guarded pull requests.

export function Receipt() {  return <p>Payment received</p>;  return (    <T>      <p>Payment received</p>    </T>  );}
PR #2186 localesmerged
  • 118locales, ready today
  • 6first-party SDKs
  • <1sover-the-air updates
  • $0to start

100+ languages, and the variants that matter

zh-Hant is not zh-Hans. Both ship.

arArabic
  • ar-AE
  • ar-EG
  • ar-LB
  • ar-MA
  • ar-OM
  • ar-SA
zhChinese
  • zh-CN
  • zh-Hans
  • zh-Hant
  • zh-HK
  • zh-SG
  • zh-TW
deGerman
  • de-DE
  • de-AT
  • de-CH
ptPortuguese
  • pt-BR
  • pt-PT
and the long tail
  • cnrMontenegrin
  • cyWelsh

78 base languages, 129 distinct locale tags.

Browse All Supported Locales
  • Holaespañoles
  • Bonjourfrançaisfr
  • こんにちは日本語ja
  • 안녕하세요한국어ko
  • 你好中文zh
  • مرحباالعربيةar
  • नमस्तेहिन्दीhi
  • HalloDeutschde
  • Oláportuguêspt
  • Приветрусскийru
  • Ciaoitalianoit
  • Γεια σαςΕλληνικάel
  • สวัสดีไทยth
  • שלוםעבריתhe
  • MerhabaTürkçetr
  • Cześćpolskipl
  • Hejsvenskasv
  • HaloBahasa Indonesiaid

Source beside translation

Revision state is carried by type and chips. One workspace holds every string of the project.

workspace · es-4194 strings
source · entranslation · esstate

Hello, world!

¡Hola, mundo!

approved

Launch in every language

Lanza en todos los idiomas

approved

End-to-end localization for the world's best companies

Localización de extremo a extremo para las mejores empresas del mundo.

Localización integral para las mejores empresas del mundo.

edit

By continuing you agree to our Terms of Service.

Al continuar, aceptas nuestros Términos de Servicio.

approved
⌘K searchhistorydownloadagent · locadex

One project, one config, one bill

Build time, runtime, and review share one context, from the organization down to the component.

gt cliapp/page.tsx
$ npx gt translate128 strings · 3 new · 2 changedesfrjadezh640 translations · 6 locales
  1. OrganizationGlossary and tone set once.Locadex is the GT agent. Do not translate.
  2. ProjectLocales and files per project.locales: es, fr, ja, de, zh
  3. ComponentOne attribute reaches the agent.<T context="Playful, upbeat tone">
traceone commit, on the clock
  1. committedapp/page.tsx
  2. extractedhash 0f3a92
  3. pr openedlocadex · #218
  4. translated6 locales · 3.4 s
  5. approvedreview · @mira
  6. publishededge · 3 regions
  7. renderedde · 38 ms

Start at $0. Pay per token.

The price of a translation is knowable before you run it.

Usage rates

WorkflowRateGT libraries
Build time$10 / 10k input tokens$20
Runtime$1 / 10k input tokensnone
Development$1 / 10k input tokens$4
Google Slides layout processing$0.50 / 10k input tokensnone
Project context surcharge+$0.10 / 10k tokens per 500 tokens of contextnone
Locadex$5 / LCUnone
Credits$1 = 1,000,000 creditsnone

Starter

$0per month

Unlimited users, projects and languages. Editor, GitHub integration and Locadex included. Minimum top-up $10.

  • Every SDK and the translation CLI
  • Dashboard, glossaries, and the editor
  • Locadex agent runs on your repo
Get Started

Enterprise

Customannual

Forward-deployed engineers, custom workflows for any format or framework, shared context across projects.

  • SSO, RBAC, webhooks, custom SLA
  • SOC 2 Type II, GDPR, ISO 27001
  • Support from the engineers who build it
Contact Us

A Usage Limit is a hard cap. It blocks billing even with auto-reload on.

npx gt translate --dry-run prints what would be translated and bills 0 tokens.

Compare Plans and Usage Pricing