Word HTML Cleaner - Clean Up Markup from Word and Google Docs

Two paragraphs from a colleague, forty kilobytes of markup, and a CMS that now renders them in Calibri for reasons nobody can explain. Paste it here and get back the HTML you thought you were pasting.

What to clean up

Frequently asked questions

What does it actually remove?

The parts Word wrote for Word: mso- properties, class names like MsoNormal, Office namespace tags such as <o:p>, conditional comments, font tags, empty paragraphs and the inline styles that pin every word to Calibri 11pt. Your headings, paragraphs, lists, links, tables and emphasis stay.

Should I paste the document or the HTML code?

Either. When you copy from Word or Google Docs your clipboard carries the markup as well as the words, and this page asks for the markup rather than letting the text box throw it away. If you paste HTML source instead, there is no second version to ask for and it arrives exactly as typed.

Why do Word's bullet lists come out as paragraphs in other cleaners?

Because Word does not write lists. It writes ordinary paragraphs with a bullet character glued to the front and a note in the style attribute saying which list and which level it meant. A cleaner that strips styles without reading that note leaves you with paragraphs that begin with a middle dot. This one reads the note and rebuilds real <ul> and <ol> elements, nesting included. Untick the option if you would rather keep the paragraphs.

Does it work with Google Docs as well?

Yes, and there is a specific trap it avoids. Docs expresses bold and italic as inline styles and nothing else, so removing the styles first would silently delete every emphasis in the document. Styling is promoted to real <strong> and <em> tags before anything is thrown away. The invisible wrapper Docs puts around a copied selection is removed too.

Do I need to change any of the settings?

Usually not. The three ticked boxes are the ones almost everyone wants, and the result you get without touching anything is the one that suits a CMS: headings, lists, links, tables, bold and italic kept, everything Word wrapped around them gone. The one unticked box is for a less common job: tick it when you want the outline of the document and nothing else, because you intend to do the formatting yourself. Bold, italic and underlining are all kept until you ask for them to go.

I want the HTML gone entirely, not cleaned. Where do I go?

The front page. This tool is for markup you want to keep in better condition; the front page is for text you want the markup taken off altogether.

Is my document uploaded anywhere?

No. The parsing and cleaning happen in your browser, in JavaScript, and nothing is posted to this server or anywhere else. If you want to check, open your developer tools, switch to the Network tab and clean something. It matters here more than on most pages, because a document pasted into a cleaner is usually one that has not been published yet.