I translated a few SaaS pricing pages into Chinese this month — as samples, because nobody has hired me yet. The same five failures showed up every time. None of them were grammar mistakes. All of them were the kind a fluent reader notices in half a second and a machine never will.
Here they are, with the fix for each.
1. The discount changes value.
A supplement retailer's Chinese page advertised 74 折酬宾. In Chinese, 74 折 is not a discount at all — it is a number that means nothing. 7.4 折 (74% of the price) or 7.4折 would have been right. The machine kept the digits and dropped the decimal point, and the offer became unreadable. On a page where the entire decision is a number, that is not a translation bug. It is a pricing bug.
2. A term gets translated into a different industry.
fulfillment fee came out as 履行费. No Chinese seller says that. The word is 配送费 — the fee for picking, packing and shipping. 履行 does exist in Chinese, which is exactly why a translator model picks it: it is a correct dictionary mapping and a wrong term. Terms live in a domain, not in a dictionary.
3. A word with two meanings takes the wrong one.
Subscription spread became 订阅传播. Spread here means spreading a subscription cost across orders — 摊薄. 传播 means spreading news. One word, two directions, and the model has no idea which page it is on.
4. A placeholder survives into production.
A watch brand's cart button reads 查看我的購物車({0}). The {0} is a template variable that never rendered. This one is not a translation problem at all, which is why it is the most useful example: it proves nobody read the Chinese page before it shipped. A native reader would have caught it in the first three seconds.
5. The register is wrong, even when the words are right.
Enter your real numbers becomes 输入你的真实数字. Every character is correct and the sentence is dead. 输入 is what a database does; a person 填. And not the optimistic ones is not 不是乐观的数字 — Chinese says 别填你希望的数. Same instruction, and the second version sounds like a person talking to you.
Why this costs more than it looks
A pricing page is the one page where a user is already deciding. If the sentence that explains the price is unreadable, you do not get a complaint — you get a bounce, and you never learn why. Support tickets tell you about broken features. They almost never tell you about a sentence that read like a form letter.
The other thing: these five failures have nothing in common technically. Term choice, disambiguation, number formatting, template variables, register. A glossary fixes the first two. It cannot fix the other three. That is why "translate it with the same tool we use for everything" keeps producing pages that look translated.
What actually helps
- Build the glossary before the first sentence. 20 terms, chosen by whoever owns the product, not by the translator.
-
Translate the page, not the strings.
per seatis每人on a pricing page and something else in a licensing doc. - Keep the number visible in both units. If the price is monthly-but-billed-annually, write the annual total in Chinese. Users compute it themselves otherwise, and sometimes they compute it wrong.
-
Declare the language.
hreflang="zh-CN"and a correct<html lang>cost nothing and are the difference between the page being indexed and being ignored. - Have one native reader look at the rendered page. Not the diff. The page.
I built a small free checker for the mechanical half of this: it takes a URL and flags untranslated strings, leftover {0}-style placeholders, Japanese kana leaking into a Chinese page, a missing hreflang, and a <html lang> that does not match the content. Ten seconds, no signup, nothing stored: promptgeam.com/checkup/
It will not tell you whether your Chinese sounds like a person. That still needs a person. If you want that opinion on your own copy, send one paragraph — I will send it back in Chinese within 24 hours, free. That offer is the whole reason the checker exists.
— Eric Lin, promptgeam.com
Top comments (1)
which mistranslation hurt most, price or plan names?