Unicode Normalizer

NFC • NFD • NFKC • NFKD — 100% Client-Side

Length: 0
Length: 0

About Unicode Normalizer

A fast, private, zero-data-collection web tool that instantly normalizes any Unicode text to NFC, NFD, NFKC, or NFKD — entirely in your browser.

Unicode defines over 149,000 characters, and many of them can be represented in multiple equivalent ways. For example, “café” can be stored as a single precomposed é (U+00E9) or as e + combining acute accent (U+0065 U+0301). These forms are canonically equivalent — they look identical — but most programming languages treat them as different strings. This causes silent bugs in searches, database queries, authentication, and text comparison.

Unicode Normalizer solves this by giving you instant access to all four official normalization forms defined by the Unicode Consortium:

  • NFC – Canonical composition (recommended for storage & display)
  • NFD – Canonical decomposition (great for searching & collation)
  • NFKC / NFKD – Compatibility forms that also convert ligatures (fi, fl), circled numbers, Roman numerals, and full-width characters into plain ASCII equivalents

Unlike every other online normalizer, your text never leaves your device. We do not use servers, analytics, cookies (except optional theme), or logging of any kind. All processing uses the official JavaScript String.prototype.normalize() method, which implements the latest Unicode Standard.

Whether you’re a developer fixing collation bugs, a data engineer cleaning imports, a linguist studying combining marks, or just curious about invisible characters — this tool gives you immediate, trustworthy results with complete privacy.

Normalize early. Normalize once. Sleep well.

How to Use Unicode Normalizer

Four simple steps — no registration, no upload, no data sent.

  1. Paste or type any text into the large input box on the left. You can paste thousands of characters, entire documents, or even binary-looking data — everything is processed instantly.
  2. Choose a normalization form using the radio buttons: NFC (default), NFD, NFKC, or NFKD. The output updates in real time as you switch.
  3. Toggle “Show character-by-character differences” to see a full hex code-point table comparing original vs normalized text. Differences are highlighted in yellow — perfect for debugging invisible issues.
  4. Copy the result with one click:
    Copy Input — original text
    Copy Active — currently selected form
    Copy All Four — NFC + NFD + NFKC + NFKD in one go

The tool works offline once loaded (add to home screen for PWA experience) and supports every modern browser on desktop and mobile.

Frequently Asked Questions

No. Never. All normalization happens 100% in your browser using native JavaScript. We have no servers that receive your data, no logging, and no analytics.

NFC → recommended for storage and display (fewest characters)
NFD → best for searching and collation
NFKC/NFKD → when you need plain ASCII compatibility (ligatures, Roman numerals, full-width chars)

Because your font renders combining marks perfectly. Turn on “Show Differences” — the hex table will reveal the actual changes even when they’re visually invisible.

Absolutely! The tool is open-source (MIT license) and the algorithm is the official Unicode standard. Many teams use it for data cleaning, ETL jobs, and pre-commit hooks.

Yes! After the first visit, the site works as a full Progressive Web App. Click “Add to Home Screen” on mobile or “Install” on desktop for offline access forever.