Skip to content
Ghostchars

Free tool

Narrow no-break space checker

Paste text to find U+202F NARROW NO-BREAK SPACE and U+00A0 NO-BREAK SPACE. The checker reveals their exact positions and can replace them with regular spaces.

Updated

Nothing is uploaded. The cleaning happens on this page.

Your text is analysed in the browser. Press Clean text to see results below.

Cleanup level

Standard removes only characters you cannot see. Maximum also rewrites text you can see (look-alike letters, quotes, dashes and spacing), so it is a choice, not a default.

The defaults already remove every character that is invisible and doing no work: zero-width characters, byte-order marks, soft hyphens, invisible math operators, bidi overrides, free-floating tag characters and variation selectors, noncharacters, and other format controls. Everything below goes further than that: it either changes text you can see or removes characters that are doing a job, so you decide.

Whitespace & layout

Non-breaking, thin, and ideographic spaces become a plain space. Off because NBSP is often deliberate.
CRLF, CR, NEL, and Unicode line/paragraph separators become a plain newline.
Spaces parked at the end of a line can encode a hidden message (the SNOW technique).
Double spaces between words can carry binary data. Off because it changes fixed-width layouts.

Letters & punctuation

Cyrillic а in "аpple" becomes Latin a. Only acts inside words that mix scripts, so ordinary Russian or Greek text is untouched. Off by default because it rewrites letters.
Em dash, curly quotes, ellipsis and minus sign become ASCII. Often used as an "AI tell", but also just good typography.
Composed vs. decomposed accents (é as one character or two) can encode bits. NFC picks one form.
Also folds fullwidth, superscript and ligature forms. Changes more than you might expect, and supersedes NFC.

Controls

We already remove bidi overrides, and marks in left-to-right prose. This one also removes the marks sitting next to Hebrew or Arabic, where they do real layout work.
C0 and C1 controls other than tab and newline.
Breaks icon fonts and some brand glyphs, which is exactly where these normally live.

Aggressive

Removes every zero-width joiner and variation selector, including the ones holding 👨‍👩‍👧 together and the ones Persian, Hindi and flag sequences need. Only use this when you want plain letters and nothing else.

ZWSPTAG U+E0053

Press Clean text and we'll show you exactly what was hiding in there, in plain language first, with the codepoints underneath if you want them.

Paste the text into the cleaner above, open Advanced, switch on Convert exotic spaces and press Clean text. U+202F and U+00A0 become regular spaces, and Show what's hidden lists every position. Nothing is uploaded.

What it finds

  • U+202F NARROW NO-BREAK SPACE

    French typography can place it beside punctuation, and copied text can carry it into systems that expect a regular space.

  • U+00A0 NO-BREAK SPACE

    Web pages and editors use it to keep words together, but it can make search and exact comparison miss an otherwise identical phrase.

Example

Before cleaning

Price:\u202F24 EUR and 10\u00A0pages

After cleaning

Price: 24 EUR and 10 pages

Questions

Is U+202F a ChatGPT watermark?

No. U+202F is an ordinary Unicode spacing character used in real typography. Its presence can show where formatting travelled, but it proves nothing about authorship.

How do I replace narrow no-break spaces?

Open the cleaner, turn on the spacing option under Advanced, and clean the paste. U+202F and U+00A0 become regular spaces, as the example on this page shows.

Can this checker tell whether text was generated?

No. It checks characters and removes the ones you target. The prose report measures habits, emits no score or probability, and gives no verdict.

Anonymous usage stats?

Ghostchars processes your text in the browser and never uploads it. We would like to count page views with a self-hosted, cookie-light analytics endpoint. No content, ever.