Indent messy HTML into readable, consistently structured markup.
Compressed markup
A page fragment on one line
<div class="card"><h2>Title</h2><p>Some text</p><ul><li>One</li><li>Two</li></ul></div>Form with attributes
Long attribute lists get wrapped
<form action="/submit" method="post" class="form" id="signup" novalidate><input type="email" name="email" required placeholder="you@example.com"><button type="submit">Go</button></form>Nested table
Tables are where indentation matters most
<table><thead><tr><th>Name</th><th>Role</th></tr></thead><tbody><tr><td>Ada</td><td>Admin</td></tr></tbody></table>Compressed markup
A page fragment on one line
<div class="card"><h2>Title</h2><p>Some text</p><ul><li>One</li><li>Two</li></ul></div>Form with attributes
Long attribute lists get wrapped
<form action="/submit" method="post" class="form" id="signup" novalidate><input type="email" name="email" required placeholder="you@example.com"><button type="submit">Go</button></form>Nested table
Tables are where indentation matters most
<table><thead><tr><th>Name</th><th>Role</th></tr></thead><tbody><tr><td>Ada</td><td>Admin</td></tr></tbody></table>A full document or a fragment both work. Formatting begins as soon as the input is valid enough to parse.
The width controls when attributes wrap onto their own lines. Eighty to a hundred characters suits most editors.
Take the indented markup into your editor or template. Only whitespace changes, so rendering is unaffected.
Correct indentation turns a wall of tags into a visible tree, which is how you spot a div that was never closed.
Formatting matches what Prettier produces, so output stays consistent with whatever your project already uses.
The formatting engine is fetched only when this page is opened, so it adds nothing to the rest of the site.
Markup that arrives from a CMS export, a template engine or a view-source copy is usually one enormous line. This formatter re-indents it so nesting is visible, wraps long attribute lists sensibly, and leaves the content itself untouched. It is built on the same engine that formats code in most editors, loaded only when you use the tool so it costs nothing on any other page.
Keep going
Related pages in Developer Tools, plus what others are using right now.
More developer tools that pair well with this one.
Format and tidy CSS, SCSS and Less with consistent spacing and indentation.
Format JavaScript and TypeScript with the same rules your editor uses.
Indent and validate XML, with clear messages when tags do not match.
Format, validate and minify JSON, with errors that point to the exact line.
Tidy YAML indentation, validate structure and convert between YAML and JSON.
Format SQL queries across dialects, with consistent keyword casing and indentation.
Create strong random passwords with full control over length and characters.
Work out any percentage — of a number, as a share, or as a change.
Count words, characters, sentences and paragraphs as you type.
Convert between length, weight, temperature, volume, speed, data and more.
Count characters with and without spaces, against the limits that matter.
Find the mean, median, mode and range of a list of numbers, with the working shown.
Sample and population standard deviation and variance, both shown, with the working.
Turn a logo into favicon.ico, the PNG sizes a site needs, and the HTML to declare them.
Check a downloaded file against its published checksum, without uploading anything.
Stamp text like DRAFT or CONFIDENTIAL across a PDF, in your browser.
Escape text for HTML, or turn entities back into readable characters.
See how savings grow with compounding, including regular contributions.