NFKC (Normalization Form KC) goes beyond canonical equivalence and folds compatibility variants such as ligatures, full-width letters, superscripts, and circled characters into their plain equivalents, then composes any combining marks. It is the form to use when you want visually styled look-alikes to be treated as the same text. This tool applies NFKC and shows the code points before and after.
How it works
NFKC is a compatibility decomposition followed by a canonical composition:
1. Compatibility Decompose fi -> f i A -> A ² -> 2
2. Canonical Compose recombine base letters + combining marks
The compatibility step replaces characters that are not identical but are
considered equivalent for many purposes, then composition tightens the result
back into precomposed characters where possible. Processing uses the engine’s
native String.prototype.normalize("NFKC").
Notes and example
Folding the ligature fi produces the two letters f and i, the full-width
A becomes A, and the superscript ² becomes 2. Because this discards
styling it is not reversible, so reserve NFKC for matching, deduplication, and
security checks rather than for storing display text. For the same folding
without recomposition, where every combining mark stays separate, use the NFKD
tool.