HTML to Text

Turn HTML into clean plain text, keeping paragraphs, bullets, tables and links

Your files are processed in your browser. They are never uploaded, and nothing is stored after you close the page. How we handle privacy

Conversion
Paragraphs and headings get their own lines, lists become bullets and tables become rows.
Words in the text
Paste HTML to see the text.

Runs entirely in your browser. Nothing you type or upload is sent to us or stored.

Results are for general guidance. Please check anything important before relying on it. Terms of use

How to Use

  1. Paste your HTML into the HTML box, or drop an .html file (a saved web page or an email template) on the upload box under it.
  2. Pick Keep layout to get paragraphs, headings, bullets and table rows, or Strip tags only to remove the tags and nothing else.
  3. Choose the options you want: show link addresses as text (url), leave out scripts, styles and menus, and separate table cells with tabs or " | ".
  4. The plain text appears on the right as you paste, with the word count above it.
  5. Click Copy text, or Download .txt to save it as a file.

What the HTML to text converter does

This HTML to text converter takes web page code and gives you the readable words, laid out the way a person would type them. Paste the source of a newsletter, a blog post from your CMS or a page you saved from the browser, and you get clean plain text you can put into an email, a Word file, a WhatsApp message or an SMS template.

It also decodes HTML entities. & becomes &,   becomes a normal space and ₹ becomes โ‚น, so you don't end up with codes in your text.

How each part of the page is written out

In Keep layout mode the converter walks through the page one element at a time and writes each kind in a fixed way:

In the HTMLIn the text
Paragraphs, headings, quotesTheir own block, with a blank line before and after
<br>A line break
Bulleted list items"- " at the start of the line, indented two spaces per level when lists are nested
Numbered list items"1. ", "2. " and so on, following the list's start number
Table rowsOne line per row, cells split by a tab or " | "
Layout tables (the ones emails use to position everything)Read cell by cell as ordinary blocks, so a newsletter doesn't end up on one long line
Linkslink text (address), when the option is on
<pre> code blocksCopied with their spacing untouched
Bold, italics, spansPlain words, kept on the same line

Extra spaces and line breaks in the source code are squeezed into single spaces, just as a browser does when it shows the page. Hidden elements are skipped.

A quick example

<h2>Documents</h2><ul><li>PAN card</li><li>Address proof</li></ul>
<p>Upload on <a href="https://example.in">our portal</a>.</p>

comes out as:

Documents

- PAN card
- Address proof

Upload on our portal (https://example.in).

Keep layout or strip tags only?

Use Keep layout for almost everything. It gives you text that reads well on its own. Strip tags only is for when you want the source exactly as it was, minus the tags: line breaks stay wherever they were in the code, and two paragraphs written on one line will run together. People use it to pull text out of HTML that was already laid out by hand, or to compare two versions of a template.

Is it safe to paste any HTML?

Yes. The code is read with the browser's DOMParser, which builds a separate, inactive copy of the page. Scripts in it never run, images and trackers in it never load, and nothing is added to the page you're on. The conversion happens on your device, so the HTML isn't sent anywhere. Turn on "Leave out scripts, styles and menus" (it's on by default) to drop JavaScript, CSS and <nav> menus from the result.

Tips

  • Choose tab-separated tables if you plan to paste the result into Excel or Google Sheets. Each cell lands in its own column.
  • Turn link addresses off when the text is going into an SMS or a print-out, where long URLs only add clutter.
  • The word count ignores bullets and separators, so it's a fair count for an article you're checking against a word limit.
  • For a whole web page, use your browser's "Save page as" (HTML only) and drop the file here instead of copying the source by hand.

Frequently Asked Questions

Use Keep layout mode. Paragraphs and headings get a blank line around them, list items become "- " bullets and table rows go on separate lines, so the text still reads in the same order as the page.

No. The HTML is parsed into an inactive document with the browser's DOMParser, so scripts don't run and images don't load. With the default setting, script and style content is also left out of the text.

Yes. With "Show link addresses" on, each link is written as its text followed by the address in brackets, like "our portal (https://example.in)". If the link text is already the address, it isn't repeated.

Each row becomes one line. Cells are separated by a tab, which pastes neatly into Excel, or by " | " if you pick that option.

No. Pasted HTML and opened files are converted in your browser and never leave your device.