Localizing a French app or website into Vietnamese
💡 French teams have a built-in advantage when localizing into Vietnamese: both languages use Latin script. The critical gap is Vietnamese's six-tone diacritic system. Your entire stack must be UTF-8 end-to-end and your fonts must cover the Latin Extended Additional block (U+1E00-U+1EFF). Set those up first and the rest of the workflow is straightforward.
Key takeaways
- Both languages use Latin script, but Vietnamese adds 6 tones as diacritics: your stack must be UTF-8 end-to-end or tone marks will corrupt silently.
- Use
hreflang="fr"andhreflang="vi"(BCP 47) on every page pair to avoid duplicate-content issues with Google. - Vietnamese UI strings typically run shorter than French equivalents, so text overflow is rarely a layout problem in this direction.
- CAT tools Trados Studio, memoQ, Crowdin, and Phrase all support the French-Vietnamese language pair with full TM and glossary workflows.
- MT (DeepL, Google Cloud Translate) covers informational content adequately; legal, medical, and product-critical copy needs a native Vietnamese reviewer.
Why French teams have an encoding head start when going into Vietnamese
Unlike Chinese-to-Vietnamese projects, French already uses Latin script, so your text-rendering pipeline is in the right family from day one. The critical difference is block coverage: French accents (é, à, ê, ç) live inside Basic Latin and Latin-1 Supplement (U+0000-U+00FF), while Vietnamese tone marks (ề, ộ, ặ, ứ) require the Latin Extended Additional block (U+1E00-U+1EFF).
Any legacy system that used ISO 8859-1 encoding will silently corrupt Vietnamese text: those code points simply do not exist in Latin-1. The W3C recommends UTF-8 for all new web content, and for Vietnamese that recommendation is non-negotiable. Declare <meta charset="UTF-8"> on every page and confirm your database, API responses, and file exports all use UTF-8 before you write the first translated string.
For fonts, Be Vietnam Pro (Google Fonts) is designed specifically for Vietnamese, and Noto Sans covers the full Vietnamese character set. If your product already uses a French-specific typeface, verify its Vietnamese character coverage before launch: missing glyphs display as empty boxes with no other error signal.
What are the biggest differences between French and Vietnamese for software localization?
French is an inflected language: nouns have grammatical gender, verbs conjugate, adjectives agree with nouns. Your localization platform's plural rules, gender-aware templates, and conditional logic are likely built around those features. Vietnamese is an analytic, isolating language with none of them. No grammatical gender. No verb conjugation. No plural suffixes. Many of your string templates simplify rather than complicate when translated into Vietnamese.
What Vietnamese adds is a kinship-based pronoun system that marks social register. The word for "I" shifts depending on the speaker's relationship to the listener: tôi (neutral formal), em (junior), mình (informal). For a B2B SaaS product, the convention is: first person tôi and second person bạn. Define this in a Vietnamese style guide before translation starts so all translators stay consistent across every string.
Number and date formats also differ from French. French uses a non-breaking space for thousands and a comma for decimals. Vietnamese uses a period for thousands and a comma for decimals (e.g., 1.000.000,50). The authoritative source is the Unicode CLDR vi locale, which provides the canonical patterns your i18n library (Intl.NumberFormat, ICU MessageFormat, next-intl) should consume directly.
The complete French-to-Vietnamese localization checklist
Work through these steps in order. Each one is a real go/no-go gate, not a style suggestion.
- Encoding audit: verify UTF-8 end-to-end: HTML meta charset, HTTP Content-Type header, database character set, and all file exports.
- Font coverage check: confirm your typeface covers U+1E00-U+1EFF (Latin Extended Additional). Test with a sample like "ề ộ ặ ứ ẵ ị".
- hreflang setup: add
rel="alternate" hreflang="fr"andhreflang="vi"to every page pair plus anhreflang="x-default"fallback, following Google Search Central international targeting guidance. - Locale wiring: register the
vilocale in your i18n library and test date, number, and currency rendering against CLDR vi data. - Style guide: define pronoun register (tôi/bạn), terminology preferences for your domain (Sino-Vietnamese vs. pure Vietnamese), and formality level before translation starts.
- Glossary build: create a 100-200 term bilingual fr-vi glossary in your CAT tool before the first string is translated.
- UI layout check: test button labels and text truncation points: some Vietnamese strings run slightly longer than French equivalents.
- Native review: have a native Vietnamese speaker spot-check the output: six tones mean a misplaced diacritic produces a different word with no spell-checker alert.
Which tools work for both French and Vietnamese?
Most professional CAT and TMS platforms handle the French-Vietnamese pair natively. The practical difference is the quality of existing translation memory and glossary data available at project start.
Trados Studio and memoQ both support fr-FR and vi-VN locale codes and handle XLIFF, PO, JSON, and Android/iOS resource formats common in app projects. memoQ's term base is the right place to enforce consistent Sino-Vietnamese versus pure Vietnamese terminology choices.
Crowdin and Phrase (formerly Memsource) offer continuous localization workflows connected to your Git repository. Both support fr and vi language codes and can push updated Vietnamese strings to translators automatically when French source strings change.
For WordPress sites, WPML and Polylang both support the vi_VN locale. WPML's Translation Management module connects to professional translators; Polylang suits smaller sites managed in-house. For a broader comparison, see our Vietnamese website localization guide.
For machine translation, Google Cloud Translation has supported Vietnamese (language code vi) for years with its NMT models, and DeepL added Vietnamese as its 36th language in 2025. Both are viable for informational content with native post-editing, but neither should be used without review for legal, medical, or product-critical text.
What can you do in-house, and when is a native Vietnamese specialist worth it?
Your technical team can handle the full setup independently: UTF-8 configuration, font selection, hreflang markup, locale wiring, and the build pipeline for translation files. None of that requires language expertise.
Where in-house limits appear: Vietnamese has six tones encoded as diacritics. A wrong tone mark creates a completely different word. Spell-checkers do not catch tonal errors. MT tools introduce tonal errors silently, especially for domain-specific terms where training data is sparse. For B2B software, a wrong term on a button or in an error message erodes user trust in ways that are hard to measure and hard to undo.
The two areas where a native Vietnamese specialist gives the highest return are glossary setup and MTPE review. A single session with a native translator to build a 100-200 term glossary for your core domain vocabulary prevents months of inconsistent terminology. After that, MTPE (machine translation post-editing) by a native reviewer is a cost-effective model for ongoing content: faster than full human translation while retaining the tonal and cultural accuracy that pure MT misses.
FAQ
Do I need vi-VN or is the "vi" language tag enough?
For most web and app projects, the BCP 47 tag vi is sufficient. Vietnam is the primary country for Vietnamese, so the bare language tag covers your audience. Use vi-VN only if your platform explicitly requires a region subtag or you need to distinguish standard Vietnamese from overseas varieties.
Will my French WordPress theme break when I add Vietnamese text?
Not if it uses UTF-8, which all modern WordPress themes do. The risk is in older plugins or page builders that clip text at a byte count rather than a character count. Test your theme with Vietnamese text containing tone marks (ề, ộ, ặ) before committing to a full translation.
How do I handle register and pronouns in B2B Vietnamese software?
For a formal B2B interface, the standard convention is: first person tôi (I/my), second person bạn (you), and quý khách for formal external-facing copy. Document this in your Vietnamese style guide and share it with every translator working on the project to prevent inconsistency across strings.
Should I use North or South Vietnamese?
Standard written Vietnamese follows the Northern dialect and is intelligible across the whole country. Spoken pronunciation differs significantly by region, but for app and website text, standard Northern Vietnamese is the correct and expected choice for a national Vietnamese audience.
Do Vietnamese strings run longer or shorter than French?
Vietnamese UI strings typically run shorter than French equivalents, since French is already around 15-20% longer than English. For most button labels and navigation items, going from French to Vietnamese will reduce string length. Some compound noun phrases may run slightly longer, so test your specific strings rather than assuming a single direction.
Official Sources
- W3C: Language tags in HTML and XML (BCP 47) - BCP 47 format for
frandvilanguage tags. Verified October 2026. - W3C: Declaring character encodings in HTML - UTF-8 requirement for multilingual web content including Vietnamese. Verified October 2026.
- Unicode CLDR: Common Locale Data Repository - Vietnamese (vi) locale patterns for numbers, dates, and currency. Verified October 2026.
- Google Search Central: International targeting and hreflang - hreflang implementation for multilingual sites. Verified October 2026.
Written by Dao Huy (Lucas), Vietnamese translator & localization specialist (EN · ZH · FR → Vietnamese). See translation services →
