Unicode Text Cleaner

Normalize text, remove unwanted hidden characters, fix whitespace and review every change before copying the result.

Your text is processed in this browser and is not submitted to UnicodeNow.

Processed locally in your browser
Cleaning preset

Presets choose transparent defaults. Changing an individual setting switches the preset to Custom.

Unicode normalization

NFC is the recommended default for most ordinary text storage and display. NFD and NFKD are advanced analytical forms.

Whitespace and line endings
Hidden and control characters

Safe cleanup removes accidental ZWSP and unexpected FEFF, while preserving joiners, variation selectors, combining marks and bidi controls.

Preview

Preview tokens are separate from the cleaned output and are never copied as cleaned text.

No cleanup is applied outside the selected preset and options.

Change report

Paste text and choose your cleaning options.

Unicode text cleaning transformations
ChangeCharacter or sequenceCode pointActionCountReasonRiskPositions

Visible-whitespace preview

What this tool does

The Unicode Text Cleaner can normalize Unicode representation, remove selected hidden characters, standardize whitespace, normalize line endings and show a detailed report of every transformation. No transformation is applied silently outside the selected preset and options.

Safe cleanup versus aggressive cleanup

Safe cleanup is designed for ordinary copied text. It preserves language shaping and emoji behavior by keeping ZWJ, ZWNJ, variation selectors, combining marks and bidi controls. Aggressive cleanup applies compatibility normalization and can remove more formatting controls; review the report before using aggressive output.

Which Unicode normalization form should I use?

None preserves the current code-point representation. NFC is the default for most ordinary text storage and display. NFKC is useful in selected search, comparison or identifier workflows, but it can be lossy because compatibility mappings may change full-width characters, ligatures, circled numbers or superscripts. NFD and NFKD are advanced analytical forms, not ordinary cleanup defaults.

Hidden characters and text shaping

U+200B ZERO WIDTH SPACE is often accidental in copied text. U+200C ZERO WIDTH NON-JOINER and U+200D ZERO WIDTH JOINER can be required for language shaping, and ZWJ is part of many emoji sequences. U+FE0F VARIATION SELECTOR-16 controls emoji presentation. Bidi controls can be valid in multilingual text but should be reviewed in source code, filenames and identifiers. Combining marks are normal in many accented characters.

Whitespace cleanup

Whitespace rules are separate. You can trim document edges, trim each line, collapse repeated ASCII spaces, convert selected Unicode spaces such as non-breaking spaces, preserve tabs, preserve line breaks, and choose LF, CRLF or unchanged line endings. These operations may affect layout, so the report labels them as formatting-related or potentially lossy where appropriate.

Example

Cafe\u0301  menu\u200B\n  today

With Safe cleanup, the expected result is:

Café menu
today

The decomposed e + U+0301 becomes composed é through NFC, repeated spaces are collapsed, U+200B is removed, leading indentation before today is removed, and the line break is preserved.

Common use cases

Technical details

Cleaning runs locally using JavaScript Unicode APIs and explicit transformation rules. The pipeline detects line endings, optionally normalizes line endings, applies selected Unicode normalization, removes selected hidden characters, replaces selected spaces, trims line and document whitespace, collapses repeated ASCII spaces, and then builds statistics and a change report.

Privacy

Your input remains in the browser. Text is not uploaded, stored, inserted into URLs or sent through analytics.

Frequently asked questions

What does the Unicode Text Cleaner change?

It changes only the transformations selected by the current preset and options, then reports what changed, how often, why, and whether it may be lossy.

Which cleaning preset should I use?

Start with Safe cleanup for ordinary copied text. Use Web form cleanup for form input, Plain-text cleanup for text files, and Aggressive cleanup only after reviewing the report.

Is NFC safe for normal text?

NFC is a common default for ordinary storage and display, but no normalization form is universally correct for every data type.

What is the difference between NFC and NFKC?

NFC uses canonical composition. NFKC also applies compatibility mappings, such as full-width letters, ligatures or circled numbers, and can be lossy.

Can Unicode cleaning remove accents?

Normalization does not normally remove accents. NFD may separate accents into combining marks, and removing combining marks is a separate explicit option.

Can cleaning break emoji?

It can if joiners or variation selectors are removed. Safe cleanup preserves ZWJ and variation selectors by default.

Can cleaning damage Arabic, Persian, Indic or other scripts?

Yes, if joiners, non-joiners, combining marks or bidi controls are removed without a documented policy.

Should zero-width joiners be removed?

Not by default. ZWJ can be required for emoji sequences and language shaping, so remove it only for a context that explicitly disallows it.

What is the difference between ZWSP, ZWNJ and ZWJ?

ZWSP is an invisible break opportunity, ZWNJ prevents joining, and ZWJ requests joining, including in many emoji sequences.

Does the cleaner change line endings?

Only when the selected line-ending option asks it to. Safe cleanup normalizes line endings to LF.

Can I see exactly what was removed?

Yes. The change report lists the changed character or sequence, code point, action, count, reason and risk label.

Is the operation reversible?

Some changes are not exactly reversible, especially removals, compatibility normalization and whitespace collapse. Keep the original when fidelity matters.

Is my text uploaded or stored?

No. Cleaning runs in your browser and does not submit input to UnicodeNow, store it in browser storage or put it in the URL.

Related tools

Whitespace Normalizer

Normalize tabs, special spaces, duplicate spaces and line endings.

Text CleaningProcessed locally

Control Character Remover

Remove control characters while optionally preserving tabs and line breaks.

Text CleaningProcessed locally

Clean Copied PDF Text

Repair common spacing, hyphenation and line-break issues from copied PDF text.

Text CleaningProcessed locally

Unicode Normalizer

Normalize Unicode text to NFC, NFD, NFKC or NFKD.

NormalizationProcessed locally

Unicode Character Inspector

Inspect each Unicode character, encoding, category, script and normalization form.

UnicodeProcessed locally

Unicode Sequence Analyzer

Analyze code points, grapheme clusters, bytes, scripts and directionality.

UnicodeProcessed locally