HTML to Plain Text Converter
Strip HTML tags and decode entities to get clean readable text.
HTML Input
Plain Text Output
Characters: 0
How HTML is stripped to plain text
Block-level elements (p, div, h1–h6, li…) become line breaks to preserve structure. Inline elements (span, strong, em, a) are stripped — their text content is kept. Script and style blocks are removed entirely. HTML entities (&, , ©…) are decoded to their Unicode equivalents. Multiple consecutive blank lines are collapsed to one. All processing runs in your browser — HTML is never sent to a server. Related: Markdown to HTML converter and HTML entity encoder.
Built and maintained by Meet Shah · Last updated
What this tool is used for
- Extracting readable text from a scraped page or an email body.
- Producing a plain-text alternative part for an HTML email.
- Getting the words out of markup for a word count or a readability check.
- Stripping formatting from content pasted out of a web page.
- Reducing a page to text so it can be diffed against another version.
Frequently Asked Questions
- How is this different from just stripping tags?
- Stripping tags leaves a wall of text with no structure. Proper conversion turns block elements into line breaks, list items into bullets, and preserves paragraph spacing — so the result reads rather than merely lacking markup.
- What happens to links?
- The choice matters: drop the URL and lose the destination, or append it in brackets. Email clients generating a plain-text alternative usually append it, since a link with no address is useless in plain text.
- Are entities decoded?
- They must be, or literal & and appear in the output. Note should become a normal space rather than being deleted — it is a space character, and removing it runs words together.
- Why is a plain-text version of an email needed?
- Because a multipart/alternative message with both parts improves deliverability — HTML-only mail scores worse with spam filters — and some clients and accessibility tools still prefer the text part.
- What happens to tables?
- They degrade badly. Plain text has no columns, so a table becomes a run of cell contents unless the converter pads them into fixed-width columns — which only works if the reader uses a monospace font.
- How should a list be rendered in plain text?
- With a marker and a line per item, so the structure survives — `- item` or `1. item`. Stripping the tags alone runs every item into one paragraph, which loses the only thing the list was expressing.
- How wide should the output be wrapped?
- Around 72 to 78 characters for email, since many clients do not wrap for you and a long line displays badly in a narrow window. That convention is why plain-text email still looks the way it does.
Common errors and gotchas
- Losing structure entirely, where headings and list items run into one paragraph.
- Keeping script or style content as text because the stripper only removed tags.
- Dropping link targets, so the text says 'click here' with nowhere to go.
- Leaving HTML entities undecoded, so the output contains ampersand sequences instead of characters.
- Collapsing whitespace inside a `pre` block, where it was significant.
Related Text Tools tools
Case Converter
Convert between Sentence, Title, camelCase, snake_case, and more.
Word Counter
Count words, characters, and analyze keyword density.
Text to Binary
Convert text into its 8-bit binary representation.
Binary to Text
Decode 8-bit binary back into readable text.
Text Reverser
Reverse text by characters, words, or lines.
Remove Duplicate Lines
Delete repeated lines and keep your list unique.
Remove Empty Lines
Strip blank and whitespace-only lines from text.
Sort Lines Alphabetically
Sort lines A–Z or Z–A, case-sensitive or not.