Remove Vietnamese Accents (Diacritics)

Paste Vietnamese text below to strip the tone marks and diacritics. The conversion happens as you type, in your browser.

What this tool does

Vietnamese writes tone and vowel quality with combining marks: Tiếng Việt carries a circumflex and a tone on each syllable. Some systems — older databases, file names, URL slugs, cross-language matching, OCR post-processing — work poorly with those marks. This tool maps the text to its plain Latin base letters so it can be matched and stored reliably.

Method

The text is first decomposed into Unicode NFD, which splits each accented character into a base letter plus combining marks. Every combining mark in the range U+0300–U+036F is then removed, and the text is returned. Two letters, đ and Đ, have no decomposition, so they are mapped to d and D explicitly.

Decomposing first is what makes this reliable: it handles the full Vietnamese repertoire in a single pass rather than relying on a hand-built replacement table that silently misses rarely used combinations.

Doing it in Excel or Google Sheets

Spreadsheets have no built-in “remove accents” function. Three practical options:

ApproachFormula / stepNotes
Helper column=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A1,"á","a"),"à","a"),"ả","a") …Correct but long; you must cover every marked letter.
Apps Script (Sheets)A short custom function that calls normalize('NFD')Works on the whole column; needs script permission.
This pagePaste the column, copy the result backFastest for a one-off batch; nothing is uploaded.

Example

InputOutput
Tiếng ViệtTieng Viet
Đà NẵngDa Nang
Hà Nội, Việt NamHa Noi, Viet Nam
Phở bòPho bo

Why Vietnamese needs its own tool

Most accent-stripping can be done with Unicode decomposition: decompose to NFD, drop the combining marks, recompose. Vietnamese defeats that approach in one place — đ and Đ are not a Latin letter with a mark. They are separate letters in the Vietnamese alphabet, encoded as their own code points (U+0111 and U+0110), so decomposition leaves them intact and a generic strip produces Đà Nẵng → Đa Nang with the Đ still there.

This tool maps those two characters explicitly to d and D, then applies the standard decomposition for everything else. That is the only difference from a generic accent stripper, and it is the difference between usable output and output with one letter wrong.

The tone marks

Vietnamese is a tonal language with six tones, and the tone is written as a diacritic above or below a vowel. A single vowel can carry two marks at once — a tone and a quality mark — which is why Vietnamese text is the stress test for any Unicode handling.

WordWithout accentsWhat changed
Việt NamViet Namtone marks removed
Đà NẵngDa NangĐ mapped, tone marks removed
Phở bòPho botone marks removed
Hà NộiHa Noitone marks removed

The result is not “Vietnamese without tone” in a linguistic sense — removing tone changes meaning, just as it does in Mandarin. It is a practical ASCII form for people who cannot type the marks: the spelling most Vietnamese speakers use in informal chat, and the form a search box will match when the input method is unavailable.

When you want this, and when you do not

Use it for search keys, usernames, filenames, URL slugs, and any field that must stay ASCII. Do not use it for display text, where the accented form is the correct spelling and the unaccented one looks like an error to a Vietnamese reader. A site that stores unaccented Vietnamese and shows it as a heading is visibly wrong.

The usual pattern is to keep both: the original for display, the stripped form for matching. That is how a search box can accept pho bo and find Phở bò.

Typography and the old encoding

Before Unicode, Vietnamese was written in encodings such as VNI and TCVN3, where the marks were encoded as separate characters in a private layout. Text in those encodings will not convert correctly with this tool — the bytes have to be transcoded to Unicode first. If the output looks scrambled rather than merely accented, the input is in a legacy encoding, not a Unicode form.

Frequently asked questions

What exactly gets removed?

All combining diacritical marks (the tone marks and vowel modifiers) are stripped, and the letters đ/Đ become d/D, which are not decomposable. The base letters are left untouched.

Is this reversible?

No. Removing tone marks is lossy: “má”, “mà”, “mả” and “mã” all collapse to “ma”. If you need the original, keep a copy before converting.

Why is it used?

Diacritic-free text is easier to match across systems, sort in databases, use in file names and URLs, and search when the keyboard cannot type Vietnamese.

Can I do this in Excel or Google Sheets?

There is no single built-in function. The reliable approaches are a helper column with nested SUBSTITUTE calls, a VBA/Apps Script function, or this page for a one-off batch.

Does it work on uppercase text?

Yes. Both cases are handled, including uppercase đ.

Is my text uploaded?

No. The conversion runs in your browser; nothing is sent to a server.

Sources

  • Unicode Standard, normalisation forms NFD/NFKD and the Combining Diacritical Marks block (U+0300–U+036F).
  • Vietnamese orthography: the Latin script with tone marks and the non-decomposable letter đ.

Everything runs in your browser — nothing you type is uploaded.