FormatterHQ

UTF-8 to ASCII Converter

Make any Unicode text pure ASCII. Non-ASCII characters can become \uXXXX escapes, &#NNN; references, their closest plain letters, or be removed.

Input TEXT
Output TEXT
Ready.

How to use the UTF-8 to ASCII

  1. Paste the text with accented letters, symbols or other non-ASCII characters into the input editor, upload a file, or click Sample to load an example.
  2. Choose how to handle Non-ASCII characters: Unicode escapes, HTML references, Transliterate or Remove them.
  3. Click Convert in the options panel. With Auto update ticked, the result refreshes as you type.
  4. Copy the result from the output panel or download it as a file.

UTF-8 to ASCII in four ways

ASCII covers only 128 characters: English letters, digits, punctuation and control codes. Plenty of systems still accept nothing else — legacy mainframes, some payment and banking formats, file names on older systems, SMS gateways, barcode payloads. The UTF-8 to ASCII converter rewrites every character above U+007F using one of four strategies, while ASCII characters pass through untouched.

The options compared

Input: Crème brûlée costs €5 — “naïve” café in Zürich

ModeOutputReversible?
Unicode escapesCr\u00E8me br\u00FBl\u00E9e costs \u20AC5 \u2014 \u201Cna\u00EFve\u201D caf\u00E9 in Z\u00FCrichYes
HTML referencesCrème brûlée costs €5 — “naïve” café in ZürichYes
TransliterateCreme brulee costs EUR5 - "naive" cafe in ZurichNo
Remove themCrme brle costs 5 nave caf in ZrichNo

Unicode escapes

Writes \uXXXX, the notation used by JavaScript, JSON, Java and C#. Characters above U+FFFF become surrogate pairs. Use it for source code and configuration files that must stay ASCII.

HTML references

Writes decimal references like é for HTML and XML documents.

Transliterate

Replaces characters with the closest plain-ASCII look-alikes: accents are removed (é → e), ligatures and special letters are expanded (ß → ss, æ → ae, ø → o), typographic quotes and dashes become " and -, and € becomes “EUR”. Characters with no sensible equivalent, such as Chinese or Arabic script, become ?. Ideal for URL slugs, usernames, file names and legacy data exports.

Remove them

Deletes all non-ASCII characters. Use it with care: “Zürich” becomes “Zrich”, which can change meaning.

Which mode for which destination?

DestinationModeWhy
JSON, JavaScript or Java sourceUnicode escapesThe program still sees the original characters
HTML or XML in an ASCII-only templateHTML referencesBrowsers render the original characters
File names, usernames, legacy CSV importsTransliterateReadable and safe for systems that reject accents
URL slugsTransliterate, then lowercase with hyphensThe slug generator does both steps
Payment or bank files with a restricted character setTransliterateNames stay recognisable instead of losing letters

Reserve Remove them for cases where non-ASCII characters are known to be noise, such as stray symbols in log lines.

Doing the same in code

Transliteration by decomposition is a one-liner in most languages: s.normalize('NFD').replace(/\p{M}/gu, '') in JavaScript, or unicodedata.normalize('NFKD', s).encode('ascii', 'ignore') in Python. On the command line, iconv -f UTF-8 -t ASCII//TRANSLIT gives similar results. These remove accents but, unlike this tool, do not expand ß, æ or typographic quotes.

Tips

  • If you only want accents gone and other characters kept, the Remove Accents tool is gentler.
  • To check exactly which characters are non-ASCII, list them with Char to ASCII.
  • Transliteration is language-neutral: German “ü” becomes “u”, not “ue”. Adjust names by hand where local conventions matter.

The conversion runs in your browser and your text stays on your device.

Frequently asked questions

How do I remove accents but keep the letters?
Choose Transliterate. It strips diacritics (é → e, ñ → n) and expands letters like ß and æ, keeping the text readable in plain ASCII.
Why do some characters become a question mark?
Transliterate mode replaces characters that have no Latin equivalent, such as Chinese, Japanese or emoji, with ?. Use Unicode escapes or HTML references to keep them reversibly.
Which option can be converted back?
Unicode escapes and HTML references are lossless; they can be decoded to the original text. Transliteration and removal lose information.
Is ASCII the same as UTF-8?
ASCII is a subset of UTF-8. Every ASCII file is valid UTF-8, but UTF-8 text with characters above U+007F is not ASCII.

Last updated September 26, 2026

Related tools