The right model for every language, and every content type.
For teams that ship a product in many languages. Each language and content type goes to the model you choose, with your own context beside every string, and comes back checked, in the format you sent.
Which model translates best, by language and content type?
Share of strings in which professional linguists found no errors. Higher is better.
The best model changes from row to row, so you can set one for each language and content type. How routing works
AI in a typical TMS vs Localize.io
| What | Localize.io | A typical TMS with AI |
|---|---|---|
| What it costs | Localize.ioEvery model call is recorded with its cost. See it in the tour: The record | A typical TMSModel spend is often hidden, or shown only as a total. |
| Long files | Localize.ioSplit into batches sized to each model's output limit. See it in the tour: Send work | A typical TMSTypically sent in one request: a long answer gets cut off, and is still paid for. |
| When a check fails | Localize.ioEvery attempt is logged, at most three; a string that still fails comes back flagged, and you pay only for the model calls, not for the translation. See it in the tour: Checks | A typical TMSThe model is often re-asked silently, and billed again. |
| What the model did | Localize.ioThe prompt, the reply, the tokens and the cost are visible on every call. See it in the tour: The record | A typical TMSPrompts, reasoning and tokens typically stay inside the platform. |
| Which model | Localize.ioYour configuration picks the model, per language, content type, project and pass, and every job shows which setting decided it. See it in the tour: Routing | A typical TMSThe platform picks the model, and how it decides isn't shown. |
Models
Pick a model for each language and content type.
Interface strings, help articles and marketing copy are different work. Give each the model that handles it best, and add a second model to review the draft.
Set it once. Change it any time: the next job uses the new setting.
A route is set by
ui and Spanish marketing apart.Change a route, and the next job follows it:es-ES marketingMistral Large 4GPT-5.6 Sol
How it works
Send strings or a file. Get them back translated, in the same format.
Strings through the API, a line of plain text, or a file from your own tooling. Whatever shape it arrives in, it comes back in the same one.
Your format in, your format back
{ "sign_in": "Sign in" }{ "sign_in": "Iniciar sesión" }sign_in: Sign in
sign_in: Iniciar sesión
<string name="get_key">Get API key</string>
<string name="get_key">Obtener clave de API</string>
Context
Each string gets only the context it needs.
A screenshot when the screen explains the string, a glossary term when the string uses it, a past translation when one is close, a rule from your style guide when the tone matters. The same goes for design specs, product docs, reviewer notes and whatever else you keep.
Approved wording is reused. Outdated or wrong memory isn't.
Step 2: your assetsThe examplesExample 3: translation memory
Three strings, three different contexts
A button or a noun? The screen says: the button under the Pro plan.
The name of the page has to match the name in your product.
A close line from last year's campaign: its tone carries over, “business” doesn't.
- Less setupNo converting, sorting or preparing first. Bring what you have.
- New material counts from the next jobAdd a glossary or screenshots for the whole account or one project, whenever you like.
- Every result is checkedBefore it comes back to you, not after someone notices.
- A full recordHow each translation was made: the route, what the model was shown, what it answered, the checks, the cost.
- Fits how you workA REST API for your pipeline, MCP for your agents.
Connect in minutes. One key per integration, over REST or MCP.
Read the docsTranslate your first strings in a few minutes.
White label, on-premises or your own models? Enterprise →