Diacritic Remover
TextEverything runs locally in your browser — nothing is uploaded
`Café` → `Cafe`, `naïve` → `naive`, `Tiếng Việt` → `Tieng Viet`. The method is Unicode NFD: `é` is decomposed into `e` plus a combining acute accent, then the combining marks are deleted. That beats maintaining an “é→e” table, which fails the moment it meets a Vietnamese letter carrying two stacked marks. ⚠️ Standalone letters such as `Ø`, `Đ` and `Ł` have no base letter to decompose to, so diacritic removal does not apply to them. The tool does not pass over this in silence: it lists those characters and explains why they are unchanged. Turning `Ø` into `O` is transliteration, a different job with language-specific rules, and is deliberately not done here. Everything runs in your browser; nothing is uploaded.
Features
- NFD decomposition plus combining-mark removal, covering English, French, German, Spanish, Vietnamese and more
- Not English-only: combining marks in any script are recognised
- Three modes: remove all, accents only (keeping ñ ç), or tone marks only
- Lists unchanged standalone letters such as Ø Đ Ł and explains why
- Reports how many characters were changed
- Code-point based, so emoji and multi-byte characters are untouched
- Shares one implementation with the slug generator, so behaviour cannot drift
How to use
- Paste text that contains diacritics
- Choose which marks to remove
- The result and the changed-character count appear immediately
- Any standalone letters left unchanged are called out
FAQ
- Why not use a lookup table?
- A hand-written “é→e” table only covers the letters its author thought of, and fails on something like Vietnamese, where a base letter carries two stacked marks. NFD is decomposition defined by the Unicode standard, so it holds for any language.
- Why are Ø Đ Ł unchanged?
- They are standalone letters, not “base letter plus mark”, so Unicode cannot decompose them and diacritic removal does not apply. Transliterating them to O, D, L is a different operation with its own rules, and is out of scope here.
- What is the difference between accents-only and tone-marks-only?
- The same code point plays different roles in different languages: the acute accent is an accent in French and a tone mark in Vietnamese. “Accents only” keeps letter marks such as ñ ç, while “tone marks only” removes just the Vietnamese and pinyin tone marks.
- Is anything uploaded?
- No. It is all computed in memory in your browser, no request is made, and it works offline.
Related tools
Slug Generator
WebTurn titles into URL-friendly slugs: strip diacritics, collapse separators, truncate at word boundaries, and turn Chinese into pinyin.
Text Cleaner
TextClean up a column pasted out of a log or spreadsheet: deduplicate, sort, drop blank lines, trim whitespace and strip line numbers, all in your browser.
Full/Half Width
TextConvert between full-width and half-width characters: letters, digits, punctuation, spaces and currency signs, all in your browser with nothing uploaded.
Text Diff
TextCompare two blocks of text online and highlight added, removed and unchanged lines, so only the lines that changed are marked. Runs in your browser.
Word Counter
TextCount Chinese characters and English words separately, alongside characters, lines, real UTF-8 bytes, reading and speaking time, and SMS segment counts.
Case Converter
TextConvert identifiers between fourteen naming styles. Words are split correctly first, so acronyms such as HTTPServer come out right, all in your browser.