TL;DR: AI translations go wrong in specific, predictable places: idiom and register, brand and product names, formality that some languages encode grammatically, gendered pronouns English doesn't force you to pick, and text that has to fit a button after it grows. The fix isn't a smarter model. It's giving the model a glossary, an explicit audience and register, and a back-translation check before you trust the output.
None of this is about which model translates best. It's about what breaks regardless of which one you use, and what to put in the prompt so it breaks less often.
Why Do AI Translations Still Go Wrong, Even When the Grammar Is Perfect?
Because fluent and correct are two different bars, and a model clears the first far more reliably than the second. Five failure modes show up over and over, and each one has a specific fix rather than a general "write a better prompt" answer: idiom and register, named entities, grammatical formality, gendered forms, and text that has to fit a fixed space after translation. None of these are exotic edge cases. They show up in ordinary business content: a support reply that needs the right level of formality, a product name that shouldn't be localized, a marketing line built on an idiom, a UI string that has to fit the same button in every language. The rest of this page takes them one at a time.
What Happens to Idiom and Register When AI Translates Literally?
A phrase can be grammatically flawless and still read as translated, because idiom carries meaning that isn't in the individual words. "Break the ice" translated word for word into most languages describes smashing frozen water, not easing social tension. A model that hasn't been told otherwise will often render the closest literal equivalent instead of the equivalent meaning, because nothing in a bare "translate this" instruction tells it that meaning outranks wording.
Register is the same problem at the sentence level rather than the phrase level. A casual English email and a formal English email use largely the same vocabulary; the target language may not let you get away with that. Naming the register you want, and giving explicit permission to reword rather than transliterate, is the fix for both: translate meaning and intent, not the words themselves, and rewrite freely where a literal rendering would sound obviously translated.
Why Does AI Mistranslate Names, Brands and Technical Terms?
Because a model has no built-in concept of "this word is special." A proper noun is just a token to it, and tokens get translated like anything else unless told not to be. This shows up as a brand name getting localized, a product name getting transliterated into a different script, or a technical term getting rendered as its nearest ordinary-language equivalent when the actual term needed to stay put.
The fix is a do-not-translate list: every brand name, product name, UI string and technical term you need preserved, named explicitly before the text to translate, in its original script. List placeholders and code too, like {count} or %s, and say plainly that they must never be translated, reordered or reformatted; a model asked to translate prose around a placeholder will sometimes treat it as ordinary text if nothing marks it as an exception. Our free translation prompt generator builds exactly this field into a reusable template if you want a ready-made version rather than writing one from scratch each time.
Can AI Get Formality and Politeness Right Without Being Told?
Rarely, on its own. English marks politeness with word choice and framing, "would you mind" instead of "do it," but doesn't force a grammatical choice the way many other languages do. Spanish and French both carry a formal-versus-informal second person built into the verb itself, tu or usted, tu or vous. German has du and Sie. Japanese carries several distinct levels of keigo layered on top of vocabulary and verb conjugation, not just one binary switch.
None of that is optional once you're actually writing the sentence, and a model has to pick something even if you never mention it. State the exact form by name and forbid the alternative explicitly: use tu throughout, never usted. A vaguer instruction like "keep it informal" gets interpreted loosely, and on a longer piece of text the model can drift back to the more common default partway through.
Why Does AI Guess the Wrong Gender in a Translation?
Because some source languages simply don't encode a gender the target language requires, and a model has to fill in a value that isn't actually present in the input. This isn't a hypothetical edge case; it's real enough that Google built a specific feature around it. In its own words: "Historically, it has provided only one translation for a query, even if the translation could have either a feminine or masculine form." The result skewed toward patterns already present in training data rather than anything in the sentence itself, defaulting one occupation masculine and another feminine for no reason connected to the actual text. Turkish, which has one genderless third-person pronoun for both "he" and "she," is the example Google itself uses: a sentence like "o bir doktor" has no gender marker anywhere in it, so an English translation that must pick one is guessing, not translating.
The direction of the problem reverses depending which way you're translating. Going from a genderless pronoun into English forces a masculine-or-feminine choice English itself doesn't require of the source. Going the other way, from English into a grammatically gendered language, forces the same choice in reverse, on adjectives and articles as well as pronouns. Either direction, the fix is the same: if gender is knowable, say so; if it isn't, ask for both forms rather than trusting a silent default.
What Happens When a Translation Has to Fit a Button or a Label?
It usually gets longer, and short strings expand the most. Guidelines published by IBM and cited in W3C's internationalization documentation give average expansion rates by source length:
| English source length | Average expansion |
|---|---|
| Up to 10 characters | 200-300% |
| 11-20 characters | 180-200% |
| 21-30 characters | 160-180% |
| 31-50 characters | 140-160% |
| Over 70 characters | 130% |
The shorter the string, the worse the squeeze. A word like "views" translated into Italian or French can run two to three times its English length, which is fine in a paragraph and a real layout problem inside a narrow tab or beside a form field. Some languages compound the issue structurally rather than just running longer: German commonly fuses a short English phrase into one unbroken word, so "Input processing features" becomes "Eingabeverarbeitungsfunktionen," a single string with no natural place to wrap.
Is Translating Text Inside an Image the Same Problem as Translating Prose?
No, and the two are worth keeping apart. Everything above is a language problem: meaning, register, grammar, the words a model chooses. Text rendered inside a generated image is also a rendering problem, because the model has to draw legible glyphs on a canvas, not just choose correct words.
Ideogram's own documentation is direct about this limit: "Foreign language support is limited." It adds: "Non-Latin scripts often produce unpredictable results." That's a statement about drawing text accurately inside a picture, not about the quality of prose translation, and the two shouldn't be quoted as evidence for each other. If you need translated text to actually appear inside generated artwork, treat English placeholder text plus manual typesetting as the reliable path, and don't assume a model that translates a paragraph well will also render that same paragraph legibly onto an image.
How Do You Actually Get a Better AI Translation?
Three things, in combination, do more than any single clever instruction: a glossary, explicit context about who's reading and how formal it should sound, and a back-translation check before you trust the result.
A working template puts all three in one place:
Translate the following [content type] from [source language] to [target language and locale].
Audience: [who reads this, and why it matters]
Register: [name the exact form — e.g. "tu, never usted" — not just "formal" or "informal"]
Do not translate: [brand names, product names, UI strings, placeholders — list them]
Instruction: translate meaning and intent, not word for word. Reword freely where
a literal version would sound translated.
Text:
[paste text here]
Then, as a separate step: translate your own output back into [source language],
and flag anything where a number, a name, or the meaning changed.
The template borrows the same Role, Task, Format, Constraints and Tone structure our ChatGPT prompt framework guide covers in general, applied here to one specific task. And our guide on non-English prompting covers a version of the same discipline from the other direction, stating the output language explicitly rather than trusting a default. Run the back-translation in a fresh conversation, not the same thread that produced the translation, so the check isn't just the model agreeing with itself.
If you'd rather the model surface audience and register questions on its own instead of you filling in the template by hand, how to get ChatGPT to ask you questions first covers exactly that pattern, and asking about audience and register before translating is precisely the kind of upfront question it's built for.
The glossary and register fields are worth building once and reusing, not rewriting per document. A recurring content type, product release notes, support replies, a pricing page, tends to hit the same handful of named entities and the same register every time, so a saved version of this template pays for itself after the second or third use rather than the first.
Back-translation is genuinely useful and genuinely limited. It reliably catches a dropped clause, a reversed negation, a wrong number or a mangled name, because those change the literal content enough to survive a round trip. It's much weaker on register: translating "usted" back into English produces "you," the same word English would have used for "tu," so the formality distinction simply disappears on the way back. Catching a register error needs a second check, ideally from someone who actually reads the target language, not another round of the same technique.
None of this requires knowing which model is "best" at translation, and this page deliberately doesn't rank one on that basis. Publishing a ranking honestly would mean scoring enough language pairs and content types, with a method we could show our work on, and no source we'd trust to cite does that today. What's above works the same way regardless of which one you're prompting. If you want a comparison of how ChatGPT and Claude handle prompt structure more generally, not translation quality specifically, see ChatGPT vs Claude: Which Writes Better Prompts. And a working glossary of prompt-engineering terms covers the vocabulary this technique borrows from, like prompt template and persona prompting, if any of the wording above was unfamiliar.
Stop rewriting prompts. Start shipping.
Works with ChatGPT, Claude, Gemini, Grok, Midjourney, Ideogram, Veo3 & Kling. 4.8★ on the Chrome Web Store.
Create An Account