Overview
Introduction
Accented characters like é, ñ, or ü are essential for correct spelling, but they can cause problems in filenames, URLs, or systems that only expect plain ASCII.
This tool strips them down to their base letters, and runs entirely client-side, so nothing you paste is ever uploaded to a server.
What Is Diacritics Remover?
A diacritics-stripping tool that converts accented letters to their unaccented base form, using the standard JavaScript Unicode normalization approach.
It's part of this site's String Tools collection and works entirely in your browser.
How Diacritics Remover Works
The tool first decomposes the text with `.normalize("NFD")`, which splits each accented character into a base letter followed by separate combining diacritical mark characters.
It then strips those combining marks with a regex matching the Unicode combining diacritical marks block, and recomposes the result with `.normalize("NFC")` to produce clean, standard text.
When To Use Diacritics Remover
Use it when generating ASCII-safe filenames, URL slugs, or identifiers from text that contains accented characters.
It's also useful for making search or comparison logic accent-insensitive by normalizing both sides first.
Often used alongside Whitespace Trimmer.
Features
Advantages
- Uses the standard, spec-correct Unicode normalization approach rather than a hand-maintained character lookup table.
- Handles a broad range of Latin-script accented letters automatically.
Limitations
- Characters without a canonical decomposition (some ligatures or non-Latin scripts) are left unchanged.
- Removing accents can change meaning or create ambiguity in languages where diacritics are semantically significant.
Examples
Best Practices & Notes
Best Practices
- Only strip diacritics when ASCII-safety or accent-insensitive matching is genuinely required; otherwise preserve the original accented spelling.
- Combine with a slugify tool afterward if the end goal is a URL-safe slug.
Developer Notes
The implementation is `input.normalize("NFD").replace(/[\u0300-\u036f]/g, "").normalize("NFC")`. NFD decomposition separates combining marks from their base characters so a single regex can strip exactly those marks without touching the base letters.
Diacritics Remover Use Cases
- Generating an ASCII-safe filename from a title with accents
- Building a URL slug from international text
- Making search or comparison accent-insensitive
Common Mistakes
- Applying this to text where the accents carry meaning, which can produce a misleading or incorrect result.
- Assuming it strips all non-ASCII characters; it only removes decomposable diacritical marks, not unrelated symbols or scripts.
Tips
- Test round-trip behavior on your specific character set before relying on this for anything user-facing, since some languages depend heavily on diacritics for correct spelling.