What is a non breaking space?
A non-breaking space, usually abbreviated as NBSP, is the Unicode character U+00A0. It normally draws a blank gap between visible characters, much like the regular U+0020 space produced by a spacebar. Its important difference is line behavior: it asks a layout system to keep the surrounding text together instead of using that position as an ordinary wrapping opportunity.
This makes NBSP useful when a break would make text harder to understand. A number and its unit, a short title and name, or parts of a compact label may need to stay on one line. The same behavior becomes a problem when an NBSP is pasted into a form, spreadsheet, text editor, or data field that expects regular spaces. The text may look normal while wrapping, searching, sorting, or exact comparison behaves differently.
Regular space: 25[U+0020]kg
The line may wrap at the space.
Non-breaking space: 25[U+00A0]kg
The number and unit are normally kept together.NBSP is blank, but not zero-width
A non-breaking space is sometimes described as an invisible character because it has no drawn mark of its own. That description can be misleading: U+00A0 normally occupies visible width. It is not the same as a zero width space (U+200B), which creates a potential wrap without drawing a gap, or a word joiner (U+2060), which discourages a break without adding width.
That distinction matters during cleanup. Replacing an NBSP with a regular space preserves a visible separator but changes wrapping behavior. Removing it completely joins the neighboring text. Removing zero-width controls is a different operation with different risks.
Non-breaking space versus regular space
| Property | Regular space | Non-breaking space |
|---|---|---|
| Unicode code point | U+0020 | U+00A0 |
| Typical appearance | Blank horizontal gap | Blank horizontal gap |
| Normal line wrapping | Usually permits a break | Normally keeps surrounding text together |
| HTML notation | A literal space or   | or   |
| Safe default cleanup | Keep or collapse according to the document | Convert to U+0020 when the no-break behavior is unwanted |
Where unexpected NBSP characters come from
- Web pages: HTML authors can use the named character reference
, which representsU+00A0. Copying rendered text usually places the Unicode character on the clipboard rather than the letters in the entity name. - Word processors: editing and typography features may protect short phrases, names, punctuation, or number-unit pairs from splitting across lines.
- PDF extraction: copied text can retain no-break or typographic spacing even when the pasted result no longer needs the original page layout.
- Spreadsheets and imported data: a cell can contain an NBSP that looks like a normal space but prevents an exact match or survives a cleanup rule aimed only at
U+0020. - Templates and rich text: a protected separator can be copied repeatedly into labels, product data, or content-management fields.
Related no-break spaces
Not every protected gap is U+00A0. The narrow no-break space U+202F has similar line-breaking behavior with a narrower displayed width and can be meaningful in language-specific typography. Figure space U+2007 is designed around digit width and keeps numeric material together for line breaking. Treating all three as ordinary spaces can be appropriate for plain-text cleanup, but it can also remove intentional typography or numeric alignment.
The dedicated Remove Non-Breaking Spaces tool audits U+00A0, U+202F, and U+2007 separately before changing them.
How to detect a non breaking space
- Keep an unchanged copy of the original text.
- Paste a small affected sample into the NBSP audit.
- Check the counts for NBSP, narrow no-break space, and figure space.
- Compare the visible text and wrapping before and after conversion.
- Test the result in the destination application, especially when exact matching or numeric formatting matters.
Searching visually for a blank gap is unreliable because several characters can render similarly. A character-specific count is more informative than repeatedly pressing Backspace or running a broad whitespace replacement.
Convert to regular spaces when
- Words still need a visible boundary.
- Text wraps badly after copying from a web page or document.
- A form, search, or comparison expects U+0020.
- Plain-text consistency matters more than typography.
Remove completely when
- A validated identifier must contain no separator.
- The neighboring characters are intended to form one value.
- You have confirmed that no word boundary is needed.
- You can review the joined output against the source.
When you should keep the NBSP
Do not normalize a protected space merely because it is unusual. It may be carrying intentional line-breaking or language-specific typography. Names, units, dates, narrow punctuation spacing, aligned figures, and published layouts deserve review. Source code, localization files, and structured data may also assign meaning to a particular character or delimiter.
When the only problem is unwanted wrapping, conversion to a regular space is usually less destructive than deletion. When the text contains many kinds of spacing and the intended structure is unclear, start with the Unicode whitespace guide.
Frequently asked questions
Is the same as a non-breaking space?
In HTML, the named character reference represents U+00A0. In rendered or copied text, you usually encounter the Unicode character rather than the entity notation.
Why does normal Find and Replace miss the gap?
A search for a regular U+0020 space does not necessarily match U+00A0, U+202F, or U+2007. Use a character-aware audit or paste the exact character into the search field.
Will removing NBSP delete line breaks?
The dedicated NBSP tool changes only the three supported no-break spacing characters. It leaves tabs, ordinary spaces, line endings, and zero-width controls unchanged.
Is the old zero width no-break space the same thing?
No. U+FEFF has a historical zero width no-break role and is also used as a byte order mark. Unicode recommends U+2060 WORD JOINER when an invisible character is needed only to prevent a break. Use the zero-width character tool for that category.