Text Tools
Diacritic Remover
Remove accents and diacritics from text in your browser. NFC, NFD, NFKC, NFKD normalize, transliterate special letters, ASCII fold for slugs and filenames.
Diacritic remover and Unicode normalizer
Presets
One-click options for the most common jobs. Each preset sets the normalization form plus the toggles below.
Normalization form
Unicode defines four normalization forms. Pick how aggressively you want to decompose or fold the text before any diacritics are removed.
Options
Each option runs after normalization in the order shown.
How the pipeline works
- 1. Normalize. Run String.prototype.normalize() with the chosen form. NFD and NFKD split precomposed letters into a base plus combining marks, which is what makes the next step work.
- 2. Strip diacritics. Match every code point that has the Unicode Diacritic property (combining acute, grave, tilde, cedilla, ring, ogonek, horn, dot, breve, hook, double acute, and dozens more) and delete it.
- 3. Transliterate special letters. Apply an explicit map for characters that have no canonical decomposition (German eszett, Nordic stroked O and L, Polish stroked L, Croatian and Vietnamese stroked D, the AE / OE / IJ ligatures, the typographic fi / fl / ffi / ffl ligatures, the Old English thorn and eth, the Sami eng and stroked T, IPA schwa and open vowels, and the digraph letters of Serbo-Croatian).
- 4. ASCII filter. Optionally drop anything outside printable ASCII for systems that only accept 7-bit text.
- 5. Re-normalize. Compose what remains back to NFC so the output is in the form HTML, JSON, and most databases expect.
How to use
- Paste text with accents, diacritics, or special letters into the input area. Anything from a single name to a full document works.
- Pick a preset (ASCII fold for slugs and filenames, Strip accents only to keep base Unicode, Pure ASCII for legacy systems, Normalize to NFC, or Fold ligatures and forms) or fine-tune each option below.
- Choose the Unicode normalization form: NFC for web text, NFD or NFKD if you also plan to strip diacritics, NFKC to fold ligatures and compatibility characters without decomposing accents.
- Toggle strip diacritic marks, transliterate special letters, drop any remaining non-ASCII, and recompose to NFC at the end as needed.
- Read the result text and the stats panel (diacritics removed, letters mapped, non-ASCII dropped, length change). Copy the result, or use Use result as input to chain another pass.
About this tool
Diacritic Remover and Unicode Normalizer is a focused text tool for cleaning accented and special letters out of text. The two most common jobs are covered with one-tap presets: ASCII fold (slug-safe) flattens absolutely everything into plain ASCII, ready for URL slugs, filenames, database keys, search indexes, and CSV columns; Strip accents only removes the combining marks but leaves the base letters as Unicode, which is what blog editors, content management systems, and anyone preparing copy actually wants. Behind the presets is the full Unicode normalization pipeline: pick the form (NFC, NFD, NFKC, NFKD), then independently toggle the strip-diacritics step (which deletes every code point with the Unicode Diacritic property, including the acute, grave, tilde, cedilla, breve, ogonek, caron, ring, dot, horn, hook, double acute, and double grave families), the transliterate-special-letters step (which maps non-decomposable characters that the Unicode tables do not break apart: German eszett to ss, Nordic stroked O to o, Polish stroked L to l, Croatian and Vietnamese stroked D to d, the AE / OE / IJ ligatures, the typographic fi fl ffi ffl ligatures, the Old English thorn and eth, the Sami eng and stroked T, IPA schwa and open vowels, and the Serbo-Croatian digraph letters Lj, Nj, Dz), an aggressive ASCII-only filter for systems that reject any non-ASCII byte, and a final recompose to NFC so the result sits in the form HTML, JSON, and modern databases expect. The result panel shows the cleaned text, an inline tally of how many diacritics were removed, how many letters were transliterated, how many bytes were dropped, and the input vs output length in both characters and Unicode code points so the change is auditable. A built-in catalog of test samples covers Spanish, French, Vietnamese, Polish, German, Icelandic, and a mixed-accents-and-ligatures string so the pipeline behavior is easy to verify before you run it on real content. Everything runs locally in your browser using String.prototype.normalize() and the Unicode property regex \p{Diacritic}: the text you paste here never leaves your device.
Free to use. Works in your browser. No signup, no login.
Related tools
You may also like
Slug Generator
Turn titles into clean URL slugs.
Open tool
TextText Cleaner
Remove duplicate lines, blank lines, extra spaces, tabs, and invisible characters.
Open tool
TextCase Converter
Convert text between six common cases at once.
Open tool
TextUnicode Character Inspector
Per-character breakdown with code points, UTF-8/UTF-16 bytes, and hidden character detection.
Open tool
TextMojibake Fixer
Repair UTF-8 text misread as Windows-1252 or Latin-1, no signup.
Open tool
TextSmart Quotes Converter
Convert curly quotes, dashes, and ellipsis between smart Unicode and plain ASCII.
Open tool