Skip to content

Tool 36 / Clean up

Plain letters, same words.

Strip accents and diacritics for search keys, slugs, filenames, or older systems that only accept ASCII. Keep the meaning and the rest of the text intact.

  • Free to use
  • Unicode-aware
  • Runs locally
Live workbench4 characters changed

Accents are removed with Unicode normalization. Special letters cannot be decomposed that way, so the expansion option handles the common Latin cases explicitly. Scripts outside the Latin alphabet are left untouched.

Accent-free text

What is removed

The tool strips combining marks from characters such as é, ñ, ü, and ç, then recomposes the result. It also expands a small set of Latin letters that do not decompose, including æ, œ, ø, ł, đ, and ß, when that option is enabled.

It is not a transliteration engine. Greek, Cyrillic, Arabic, Hebrew, Devanagari, Chinese, Japanese, Korean, and emoji pass through unchanged. A name that relies on a mark for meaning may lose that distinction.

102 characters in105 characters out4 changedyes non-Latin keptUnicode-aware · never uploaded

What it does

This tool removes diacritical marks from Latin-script text. É becomes E, ñ becomes n, ü becomes u, and ç becomes c. It is the cleanup step you need when a name, address, or title has to fit into a system that only stores plain ASCII, or when you want a search key that matches both the accented and unaccented spelling.

It is not a translation or a language model. It does not know that a particular spelling is preferred, and it does not decide which of two names is correct. It applies a deterministic Unicode transformation, reports how many characters changed, and leaves everything it does not recognize alone.

How accents are removed

Unicode can represent é as a single precomposed character or as e followed by a combining acute accent. The tool normalizes the text to the decomposed form, removes the combining marks, and recomposes the result. That handles the common accents in one pass: acute, grave, circumflex, tilde, diaeresis, cedilla, caron, ring, and their relatives.

Because the operation is character-based, it works on any amount of text and does not need a dictionary. It also preserves line breaks, capitalization, and punctuation. The character count can get shorter when a combining sequence becomes one letter, but the visible words are the same.

Special letters

Some Latin letters are not a base letter plus a mark. Æ, Œ, Ø, Ł, Đ, and ß are distinct letters, so normalization alone leaves them in place. Turn on “expand special letters” to map the common ones to ASCII: æ to ae, œ to oe, ø to o, ł to l, đ to d, and ß to ss.

That mapping is a convenience, not a universal transliteration standard. Danish ø and Norwegian ø may be better represented differently in a specific catalog, and German ß is sometimes written ss and sometimes left alone. If a downstream system has its own rules, use them. The option gives you a sensible default and shows exactly what it changed.

Examples

Strip accents and expand special Latin letters
Expand special letters on · quote cleanup off

Before

Café, naïve, résumé
Straße and Æsir
Łódź

After

Cafe, naive, resume
Strasse and AEsir
Lodz

Café becomes Cafe, naïve becomes naive, and résumé becomes resume. Straße becomes Strasse because ß expands to ss, Æsir becomes AEsir, and Łódź becomes Lodz. The line breaks and capitalization are preserved. Without the expansion option, Straße, Æsir, and Łódź would keep their special letters.

Normalize curly quotes for code or a database
Normalize quotes on

Before

“Hello,” she said. “It’s fine.”

After

"Hello," she said. "It's fine."

Curly quotation marks and apostrophes are common in text copied from a word processor. Some code, CSV, and database workflows expect the straight ASCII characters. The optional normalization converts the curly single and double quotes but does not remove them, so the sentence still reads the same.

Limits worth knowing

  • Unaccented is not always correct. A person’s name, a brand, and a place name may be officially spelled with the mark. Use the result as a key or a fallback, not as a replacement for the display name.
  • It is Latin-focused. Greek, Cyrillic, Arabic, Hebrew, Devanagari, Chinese, Japanese, Korean, and other scripts are not transliterated. They pass through unchanged unless their own combining marks can be removed safely.
  • It is not a security tool. Removing accents does not normalize all lookalike characters, and it does not protect against homoglyph attacks. Two strings that look alike after this conversion are not necessarily the same identifier.
  • Some languages treat the mark as a separate letter. In Swedish, å and ä are distinct letters, not decorative accents. Stripping them changes the alphabet and can change the meaning. Keep the original when the language matters.
  • No automatic filename safety. The tool removes accents, not slashes, colons, question marks, or other characters that a filesystem may reject. Use a dedicated slug or filename cleaner for the rest.

Page updated

Questions, answered

What is the difference between an accent and a diacritic?

An accent is a kind of diacritic. The word “diacritic” covers any mark added to a letter to change its pronunciation or identity: acute, grave, circumflex, tilde, diaeresis, cedilla, caron, and others. This tool removes combining marks in the Unicode NFD form, so it handles the whole family, not just the acute accent.

Does it remove accents from names correctly?

It produces the unaccented spelling, which is not always the correct spelling of a person’s name. José becomes Jose, Müller becomes Muller, and Łódź becomes Lodz. Use the result for search keys, slugs, or legacy systems that cannot store the original characters. Keep the original name for display.

Why do æ, ø, ł, and ß need a separate option?

Those letters are not an ordinary Latin letter plus a combining mark, so Unicode normalization cannot split them into ASCII. The tool has a small expansion table for common Latin special letters. With the option on, æ becomes ae, ø becomes o, ł becomes l, and ß becomes ss. With it off, they are left as they are.

Does it transliterate Cyrillic, Greek, Arabic, or Chinese?

No. It removes combining marks and expands the Latin special letters in its table. It does not romanize other scripts. A Cyrillic name stays Cyrillic, a Greek word stays Greek, and Chinese characters are untouched. That is intentional: transliteration is a language-specific decision, not a formatting cleanup.

What happens to emoji and punctuation?

Emoji and ordinary punctuation pass through unchanged. The optional curly-quote cleanup converts curly apostrophes and quotation marks to ASCII, which is useful for code and older databases. It does not remove the punctuation, only normalizes the character used to represent it.

Is the text sent anywhere?

No. The conversion runs in your browser with the built-in Unicode normalization API and a small local table. Nothing is uploaded, and the page does not keep a copy after you close it.

All tools →