Visualize a page outline
Turn fetched or pasted HTML into a readable H1–H6 hierarchy before editing the page.
Free, no signup. See the heading outline readers and crawlers receive, spot skipped levels and empty headings, then preview a practical table of contents.
A calibrated check: multiple H1s and title/H1 differences are not automatic SEO errors. This separates those normal patterns from genuine outline problems.
The server fetches only the public URL; analysis happens in your browser. JavaScript-injected headings will not appear in this raw-HTML check.
Checks run from our server; we fetch the URL you enter and don't keep the results. Pasted HTML stays in your browser; URL mode sends only the URL to retrieve its HTML. Anonymous run-level outcome counters may be used for aggregate research; URLs, domains, IPs, and identifiers are never included, and no statistic is released below 100 runs.
Illustrative example — generated from the HTML shown here
<h1>Technical SEO audit</h1>
<h3>What should I fix first?</h3>
<p>Fix pages that cannot be crawled or indexed before polishing metadata.</p>
<h2></h2> Saved targets, named lists, and recent check summaries remain only in this browser.
A question heading is only a candidate; the following paragraph should answer it directly and independently.
The checker parses the supplied HTML in your browser, extracts semantic h1 through h6 elements in document order, and builds a nested outline from their levels. The same detector registry evaluates missing, empty, repeated, and skipped-level patterns. It does not infer headings from bold or large text.
URL mode reads raw HTML, not the rendered DOM, so JavaScript-added headings are absent. The preview assesses structure, not whether the copy is accurate, useful, or aligned to search intent. It also cannot determine visual styling or screen-reader behavior beyond the supplied markup. Use Render Gap when headings may be injected by JavaScript →
No. Multiple H1 elementsWhen a single web page contains more than one <h1> element. The HTML standard permits non-nested sibling h1s, and Google treats multiple h1s as a low-priority ranking concern — but nested h1 patterns are non-conforming, and one clear h1 is still the accessibility default. are valid in modern HTML and are not automatically an SEO problem. A clear primary page heading is still useful for readers, so the checker reports multiple H1s as context rather than treating them as an error.
A skipped level such as H2 to H4 usually signals a confusing document outline. It is not a direct ranking penalty, but correcting the hierarchy improves navigation and accessibilityWeb accessibility means designing sites so people with disabilities can use them, per the W3C's WCAG guidelines. It overlaps with SEO in specific, checkable ways — alt text, heading structure, descriptive link text, captions, and page speed all serve both audiences — but Google has said accessibility itself is not a ranking factor, and most WCAG success criteria (keyboard focus order, ARIA live regions, form labels) have no SEO effect at all..
URL mode analyzes the raw HTML response and does not render JavaScript. Paste the rendered HTML from your browser if a client-side application adds headings after load.
Not by itself. Heading structureHeader tags (heading tags) are the HTML elements <h1> through <h6> that mark the structural hierarchy of a page's content. They help users, search engines, and screen readers understand what each section is about. helps communicate organization and meaning, but useful content and search intent matter more than changing an H3 to an H2 in isolation.
Upvote what you want most. New ideas can be submitted from the floating Feedback menu; requests appear here once approved, and the most-wanted rise to the top.
You won't be emailed about that request anymore.
Loading…
New requests are reviewed before they appear here.
Where this tool helps
Turn fetched or pasted HTML into a readable H1–H6 hierarchy before editing the page.
Find level jumps, blank headings, and other structural problems that make the outline harder to follow.
Check whether the visible primary heading and document title describe a coherent page purpose.
Preview a heading-based contents list and use it to spot unclear or repetitive section labels.
Watch the full workflow
Heading tags help readers and assistive technology understand a document’s organization, but common rules are often overstated. I’ll show you how to paste or fetch H-T-M-L, read the nested outline, distinguish context from genuine issues, preview table-of-contents links, evaluate question-and-answer candidates, understand raw-H-T-M-L limits, and plan useful corrections.
Use this checker when planning a table of contents, auditing accessibility, reviewing a content template, or debugging a confusing page outline. It reads semantic H-one through H-six elements in document order; bold or visually large text does not count.
Paste H-T-M-L for a local fragment, staging output, or rendered D-O-M copied from your browser. Fetch a U-R-L to inspect a public page’s raw server response. Pasted markup stays in the browser; U-R-L mode sends only the U-R-L for retrieval.
Multiple H-ones and title-versus-H-one differences are not automatically SEO problems. The checker reports those patterns as context. Empty headings and confusing level skips are stronger structural defects because they create unlabeled or misleading navigation.
This example contains a clear primary heading, nested sections, a question with a direct answer, a skipped level, one heading without an I-D, and an empty heading. Select Check headings to parse the markup locally and build the report.
Start with the observed heading count and title context. In fetched mode, partial acquisition is labeled, and absence checks become not evaluated when the complete page was not available. This prevents a captured prefix from becoming a false clean bill of health.
Read the outline as a reader would: each H-two should introduce a major section, and deeper levels should belong beneath it. A level number is not decoration. The structure should reflect the relationship among ideas, not merely the desired font size.
The table-of-contents preview includes labeled headings and shows whether each has a durable fragment I-D. Missing I-Ds do not make a heading invalid, but stable fragments improve sharing, deep linking, keyboard navigation, and generated table-of-contents behavior.
Checks use calibrated states. Pass means the observed pattern is structurally sound. Information adds context. Warnings flag likely usability issues such as skipped levels. Errors identify clear defects such as empty headings. Needs review means the response lacked enough evidence.
Question headings become answer-ready candidates only when the following paragraph answers directly and can stand on its own. This is a drafting prompt, not a guarantee of search visibility or inclusion in an answer feature. Judge accuracy and usefulness separately.
For repeated issues, trace the markup to the C-M-S component or page template. For one-off content, edit the document outline. Do not patch visual styling by choosing the wrong semantic level; use C-S-S for appearance and heading tags for structure.
U-R-L mode does not render JavaScript, so client-injected headings may be absent. The tool cannot judge whether the writing is accurate, useful, or aligned with intent, and it does not simulate visual styling or complete screen-reader behavior. Paste rendered H-T-M-L when needed.
Remove empty headings, rename vague labels, close genuine level gaps, and add stable fragment I-Ds where navigation needs them. Rerun the checker on the final rendered markup, test table-of-contents links and keyboard navigation, then review the outline against the page’s actual ideas.
Update the source template or content so every heading labels a real section, the hierarchy follows the ideas, and durable fragment I-Ds support navigation. Recheck the rendered H-T-M-L when JavaScript is involved, test the table of contents and keyboard flow, and review the wording with actual readers.