Content structure analyzer

Measure the heading outline, paragraph lengths and enumerable content on a real page — not a checklist you fill in yourself.

The page is fetched and its DOM measured. You are not asked to describe your own page. Free, no sign-up, the full result is shown.

How this page is measured

The tool fetches your URL, strips the navigation, header, footer and sidebars, then measures what is left: the heading outline, the paragraph lengths, the lists, the tables and the word count. Every finding below comes from that measurement. You are never asked to describe your own page, because an assessment of your content that you supplied the answers to is a quiz, not an analysis.

There is no score. Eight independent structural facts cannot be added into one number out of a hundred without a weighting, and any weighting we chose — how much a missing H1 counts against a long paragraph — would be a number we made up and you acted on. Each check reports pass, warning or error, names the rule, and quotes the text it failed on.

Limits worth knowing. The analysis reads the HTML the server returns. Headings and copy rendered by client-side JavaScript after load are not counted — which is also true of some crawlers, so a heading that only exists after hydration is a real finding rather than a false negative. If the page has no <main> or <article> element the whole body is measured, which can pull template text into the counts.

The rules and thresholds this tool applies

This is the complete rule set. Nothing is applied that is not listed here, and every threshold is stated so you can decide whether you agree with it.

CheckThresholdWhy it matters
Exactly one <h1>single-h11The H1 is the one unambiguous statement of what the page is about. Zero leaves it to guesswork; several leave it contested.
No heading level is skippedheading-hierarchyEach heading is at most one level deeper than the one before itSkipping from H2 to H4 breaks the nesting a parser uses to work out which passage sits under which topic.
At least one heading per 300 words of body textheading-density≥ 1 per 300 wordsHeadings are the boundaries an extractive answer is cut along. Long unbroken runs of text give it nowhere to cut.
Median paragraph lengthparagraph-length≤ 80 wordsA quotable passage has to fit in an answer. Paragraphs that run past roughly 80 words tend to be paraphrased rather than quoted.
Paragraphs over 150 wordslong-paragraphs0A single paragraph carrying several distinct claims cannot be cited for any one of them.
At least one list or tablelists-and-tables≥ 1Enumerable and tabular data is the shape an assistant can lift directly and attribute cleanly.
Headings phrased as questionsquestion-headings≥ 1People ask assistants questions. A heading that matches the question makes the passage under it an obvious answer.
Body text present and substantialbody-length≥ 300 wordsBelow roughly 300 words there is usually not enough on the page for anything to be extracted from it.

Why structure decides what gets quoted

An assistant answering a question does not read your page the way a person does. It looks for a passage that answers the question on its own, without the surrounding context, and it prefers passages it can reproduce without rewriting. Structure is what makes such passages exist.

Concretely: a heading tells the model what the text beneath it is about, so a heading phrased the way people actually ask turns the paragraph under it into a candidate answer. A paragraph short enough to quote gets quoted; one that runs three hundred words and carries four claims gets paraphrased, and a paraphrase is far less likely to carry your name with it. A table of specifications or prices is the single most liftable thing you can put on a page, because the model does not have to decide what the numbers mean.

None of this makes a thin page worth citing. Structure decides whether good content is usable. It cannot manufacture something worth using.

How to fix each failure

  • No H1, or several. Give the page one H1 that states its subject in the words a reader would use. Demote the extras to H2. Do not use the H1 for your logo or site name.
  • A skipped heading level. Almost always a heading chosen for its font size rather than its depth. Fix the level and style it with CSS. The heading hierarchy validator reports the same defect in more detail if the outline is tangled.
  • Too few headings for the length. Add a heading wherever the subject changes. If you cannot name a section, that is usually a sign the section is doing two jobs.
  • Long paragraphs. Split at the point where the paragraph starts making its second claim. Put the claim first and the qualification after it, so the first sentence stands alone.
  • No lists or tables. Anything you wrote as "first… then… finally" or as a prose comparison is already a list or a table pretending not to be one.
  • No question headings. Take the questions your sales team actually gets asked and make them headings, then answer each one in the first sentence beneath it.
  • Very little body text. Structure cannot help a page with nothing on it. That is a content problem, not a markup one.

Questions people ask about this check

Why does the word count look lower than my page?

Navigation, headers, footers, sidebars, forms and scripts are removed before counting, and if the page has a <main> or <article> element only that element is measured. The number describes the article, not the template around it.

Does passing every check mean I will be cited?

No, and nothing that claims otherwise is being straight with you. These checks establish that a quotable passage could exist and that a parser can find it. Whether an assistant then uses it depends on whether the crawler was permitted, whether the page answers a question people ask, and whether it is the best source available on that question. This tool covers the second of those.

My page is a landing page, not an article. Do these thresholds apply?

Partly. The H1 and heading-hierarchy checks apply to any page. The length and density thresholds assume a page written to be read and quoted, so a short landing page will report warnings that are correct measurements and wrong advice for that page. The thresholds are printed above precisely so you can make that call yourself.

Do you store the pages I analyse?

No. The page is fetched, measured inside the request and the result returned to your browser. There is no account, no email field and no saved history — the shareable link re-runs the same measurement.

Where to go next

See Where You Rank in AI Search Results

Get your free AI visibility report in 60 seconds. Track how often ChatGPT, Claude, and Google AI mention your brand—and discover exactly what your competitors are doing to outrank you.