Type a tool name, for example "keyword density" or "transcript".
Remove HTML tags and decode entities to get clean plain text.
Use this tool to strip HTML tags from a snippet or a full page and get clean plain text in one click. Paste your markup, choose whether to keep line breaks, show links as text [url] and collapse extra spaces, then copy the result. It is free and needs no sign-in.
Stripping HTML tags means deleting the markup browsers read, such as <p>, <strong> and <a>, so only the text people actually see stays behind. Tags tell a browser how to display content. They carry no meaning once the words move into an email, a spreadsheet cell or a plain text field.
Good tag removal does more than delete angle brackets. It also decodes entities, the codes that stand in for characters, such as & for an ampersand, for a non-breaking space and © for the copyright sign. And it drops content that was never meant to be read, such as script and style blocks. This tool removes the tags, turns entities into real characters, and discards everything inside script, style and noscript elements.
You can convert HTML to plain text in a few clicks, and the options match what you see on the page.
If you click Strip Tags with an empty box, the tool tells you to paste some HTML first.
Here is a realistic input, the same sentence the tool shows as its placeholder:
<p>Hello <strong>world</strong>! Visit <a href="https://example.com">our site</a>.</p>
With the default settings, the output is Hello world! Visit our site. The counter reads 86 chars in and 28 chars out, because the paragraph, bold and link tags are gone and only the words remain.
Now tick Preserve links as text [url] and run it again. The output becomes Hello world! Visit our site [https://example.com]. and the counter shows 50 characters out. You keep the destination of the link, which is handy when the plain text version will be read in an email or a document where nobody can click.
Paste <ul><li>Apples</li><li>Pears</li></ul> with line breaks on and you get two lines: Apples, then Pears. Turn line breaks off and the items run together as ApplesPears. That difference is the most common surprise, so check this setting first when output looks wrong.
The result is plain text in the Plain Text panel, and each option changes it in a predictable way.
| Option | Default | Effect |
|---|---|---|
| Keep paragraph / line breaks | On | Starts a new line after blocks and br tags |
| Preserve links as text [url] | Off | Adds the href after the link text |
| Collapse extra spaces | On | Reduces repeated spaces and tabs to one |
With breaks on, paragraphs, divs, list items, headings and table rows each end with a newline, and br tags become line breaks. Three or more blank lines in a row are reduced to a single blank line, so the text stays tidy. Use this setting for articles, emails and anything a human will read.
Only links that have an address are rewritten, in the form anchor text followed by the address in square brackets. A link with no href simply keeps its text. Leave this option off when you only want the words, for example when counting words or writing a meta description.
Collapsing spaces removes the odd gaps left by indented source code. The counter compares input length with output length. A big drop means heavy markup was removed. A tiny drop means the input was mostly text already, or the tags were written as escaped text (more on that below).
Use it any time markup is getting in the way of the words. These are the situations where it saves the most time:
If you need to keep structure rather than lose it, try the HTML to Markdown converter instead, which turns headings and lists into readable Markdown.
Most odd results come from one of a handful of causes, and each has a quick fix.
This happens when Keep paragraph / line breaks is off, or when the source uses elements that do not add a newline, such as table cells or spans. Cells in the same row are joined without a separator, while each row ends with a new line. If you need cells separated, add a space or comma to the source first, or tidy the result by hand.
If the input contains escaped markup such as <b>, it is not a tag. It is text that displays as a bracketed tag, so decoding turns it into literal characters. Run the output through the tool a second time to remove them. To go the other direction and turn raw symbols into safe entities, use the HTML encoder. To decode entities without removing tags, use the HTML decoder.
Anything inside script, style or noscript is deleted completely, and comments are not included. If the missing text sat inside one of those elements, it was removed on purpose. Image alt text and attribute values such as title are also left out, because they are not visible text content.
If the source is minified into one long line and you want to inspect it first, the HTML formatter makes it readable. For the opposite job, shrinking markup before publishing, see the HTML minifier.
This tool extracts visible text; it does not judge whether your markup is valid or safe. Broken or unclosed tags are handled the way a web browser would handle them, which usually works well but can produce surprises on badly damaged input.
List items come out as separate lines without bullet or number markers, and headings come out as ordinary lines with no styling. Text that a page adds later with scripts will not appear, because only the markup you paste is read. Plain text output is also not a substitute for properly sanitizing user input before you publish it somewhere. The tool works on pasted text only, so copy the source first if your HTML lives in a file.
When you need clean words without the markup, paste your HTML into the box above, pick your options and click Strip Tags. For more utilities like this one, browse the Web Developer Tools collection.
Your report has been submitted. We will look into this issue.
A VPN changes your network exit. It does not guarantee anonymity.
Themes, plugins, code, video, audio, graphics & more from 90,000+ authors.
Web Development
Design & Media
Unlimited Access
Explore Envato Market