Text Cleaner

Instantly remove extra spaces, blank lines, and invisible junk from text copied from web pages, PDFs, and Word.

Cleans up junk text copied from web pages, PDFs, and Word documents ยท Nothing is sent to the server
๐Ÿ“ Drag & drop .txt or .md files, or click to select
Files are read in the browser only ยท Max 8MB
Cleaned Result

Line Break Handling

Retains the original line structure.

Cleanup Items

Spaces ยท Lines
Invisible Characters ยท Symbols

Cleanup History

ItemCountDescription
Once text is pasted, processing counts per item will be displayed here.

Characters like Zero Width Space (U+200B), NBSP (U+00A0), and BOM (U+FEFF) are invisible on screen but still present. They can cause search failures or broken line breaks in editors, and are especially common in text copied from the web.

"Remove special characters" deletes all symbols except Korean, English, numbers, and basic punctuation. Do not enable this for text containing formulas, tables, or code.

What is the Text Cleaner?

Pasting text from a webpage, PDF, or Word document can create a mess. You get extra blank lines, double spaces, and invisible characters like zero-width spaces (U+200B) that break searching and formatting. This tool lets you selectively remove this junk. Just paste your text, and it's cleaned instantly as you adjust the options. A detailed 'Cleanup History' table shows exactly what was fixed, item by item. You can even merge broken lines from a PDF into proper paragraphs. Itโ€™s free, and since all processing happens in your browser, your text is never sent to our servers.

How to use

  1. Paste your text into the 'Original (Paste here)' input box, or drag and drop a file.
  2. Under 'Cleanup Items', check the boxes for the types of junk you want to remove.
  3. Under 'Line Break Handling', choose to 'Keep line breaks', 'Join paragraphs', or 'Remove all line breaks'.
  4. Review the 'Cleaned Result' and check the 'Cleanup History' table to see a count of changes for each item.
  5. Click 'Copy' to copy the cleaned text to your clipboard or 'Save' to download it as a .txt file.

Text Cleaner guide

How this tool is used in real work, and what to watch out for.

The Junk That Comes With Copying from the Web

Text you copy-paste from a browser often contains invisible characters that weren't on the screen. This is especially common with text from news sites, wikis, and Word or PDF documents. Because you can't see them, these characters are hard to diagnose, and you usually only discover them much later when they cause strange problems.

CharacterCodeCommon Sources
Zero-Width SpaceU+200BWeb pages with automatic line wrapping, some CMS editors
Non-Breaking Space (NBSP)U+00A0HTML's  , indentation copied from Microsoft Word
Byte Order Mark (BOM)U+FEFFFiles saved as UTF-8 from Notepad, some CSV exports
Soft HyphenU+00ADJustified text in PDFs and e-books
Smart QuotesU+2018โ€“201DAuto-correct in Word, some blog editors
Full-width AlphanumericsU+FF01โ€“FF5EJapanese documents, older government documents
Line break normalization (CRLF โ†’ LF) is always applied and does not have a checkbox. When you combine files created on Windows and macOS, you can end up with mixed line endings that look different in various editors. This is a problem with no good reason to disable the fix, so it's always cleaned up.

What Problems Do These Characters Actually Cause?

Many people's reaction is, "If you can't see them, what's the problem?" Here are some real-world examples of how things break.

  • Search doesn't work โ€” If you have the phrase "web design" in your text, but the space between the words is an NBSP, a user searching for "web design" with a regular space won't find it. The same applies to internal site search and database `LIKE` queries.
  • Duplicate data is created โ€” If a zero-width space is attached to the end of a tag or product name, the system will treat "design" and "designโ€‹" (with a U+200B) as two different values. This is a common cause of seeing what looks like the same tag twice in a list.
  • Pasting into code causes errors โ€” The classic reason for getting an `Unexpected token` error after copying a code snippet from a blog is an invisible NBSP character.
  • Line breaks are broken โ€” As its name implies, an NBSP prevents line breaks, which can cause long sentences to overflow off the screen on mobile devices.
  • Smart quotes are a problem in code and commands โ€” They might look like regular straight quotes, but shells and compilers treat them as completely different characters.
`Remove space before punctuation` is generally safe for English text, but you should not enable it for languages like French that place a space before punctuation marks, or for text that contains code.

Join Paragraphs โ€” For Text Copied from PDFs

When you copy text from a PDF, academic paper, or old webpage, a single sentence often gets pasted as several broken lines. This happens because the line breaks inserted to fit the screen width are carried over as actual characters. If you paste this into a blog, the paragraph looks like a staircase.

`Join paragraphs` preserves the paragraph boundaries (marked by blank lines) but removes the line breaks *within* each paragraph, joining them into a single line. The key is to fix the staircase effect while keeping the overall paragraph structure. In contrast, `Remove all line breaks` turns the entire text into one long line, so you should only use it when you need to paste into a single-line input field.

ModeParagraph BreaksUse Case
Keep line breaksPreserved as isWhen you only need to clean up spaces and special characters in already well-formatted text.
Join paragraphsPreserved (as blank lines)For text copied from PDFs, papers, or e-books where sentences are broken across multiple lines.
Remove all line breaksRemovedFor pasting into a single-line input field, meta description, or a single cell in a CSV.
When `Join paragraphs` or `Remove all line breaks` is enabled, the count for the `Multiple blank lines โ†’ single line` item will be 0. This is not a bug; it's because the line structure has already been rebuilt, so there's nothing left for that specific rule to do.

Options to Use with Caution

By default, only the safest cleanup options are enabled, while potentially destructive ones are turned off. The `Turn All On` button may seem convenient, but it can delete or alter your content depending on the text.

  • `Remove special characters` โ€” This deletes all symbols except Korean/Hangul, English letters, numbers, and basic punctuation. Never enable this for text containing mathematical formulas (โ‰ค ร— รท), currency symbols (โ‚ฌ ยฅ), or table-drawing characters. It will also remove symbols like circled numbers (โ‘ ) and arrows (โ†’).
  • `Remove emojis` โ€” Don't use this for social media drafts or blog posts that intentionally use emojis. That's why this is a separate option.
  • `Full-width alphanumeric โ†’ half-width` โ€” This will alter the appearance of Japanese documents or design-oriented text that intentionally uses full-width characters.
  • `Tabs โ†’ single space` โ€” Do not enable this for code where indentation is meaningful, such as in Python or YAML.
If the result looks wrong, first check the 'Cleanup History' table to see which option made how many changes. The one with an unusually high count is likely the culprit. The original text in the input box is never modified, so you can simply uncheck the option to immediately see the corrected result.

Frequently asked questions

Why are invisible characters a problem?

Invisible characters like Zero-Width Space (U+200B) can break search, cause code errors, or disrupt formatting. They are often found in text copied from web pages.

When should I use 'Join paragraphs'?

When text from a PDF has sentences broken across multiple lines. This option merges those lines into proper paragraphs, keeping the original paragraph separations.

What does 'Remove special characters' delete?

It deletes symbols other than letters, numbers, and basic punctuation. Use with caution, as it will strip characters from equations, source code, or tables.

Is my text sent to a server?

No. All cleanup and processing happens entirely in your browser. Nothing you paste is ever sent to a server, so your information remains completely private.