Heading Structure Checker
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.
Sample report
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> - Warning: H1 jumps to H3; the H2 level is skipped.
- Error: one empty heading creates an unlabeled section.
- Answer-ready candidate: “What should I fix first?” has a direct following paragraph.
- TOC preview: only labeled headings appear; headings without an ID have no durable fragment link.
How to use it
- Choose Paste HTML for a local or rendered fragment, or Fetch a URL for a public page's server response.
- Run the check and read the outline before the issue list. Confirm that the hierarchy matches the ideas on the page.
- Use the table-of-contents preview to spot vague labels and headings without durable fragment IDs.
- Review question headings with their following paragraphs; a question is only answer-ready when the next paragraph answers it directly.
Site passport Local context for this saved site
Local data
Saved targets, named lists, and recent check summaries remain only in this browser.
Heading outline
Table of contents preview
Checks
Question headings → answer-ready candidates
A question heading is only a candidate; the following paragraph should answer it directly and independently.
Rate this tool
What the results mean
- Pass means the observed raw-HTML pattern is structurally sound.
- Information supplies context, such as multiple H1s, without calling it an error.
- Warning identifies a likely usability issue worth reviewing, including skipped levels.
- Error identifies a clear defect such as an empty heading.
- Needs review means the response did not contain enough evidence for that check.
How it works
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.
Features
- Paste and URL-fetch modes.
- Nested heading outline and practical table-of-contents preview.
- Calibrated findings that avoid labeling every multiple-H1 pattern an error.
- Question-heading candidates paired with the next paragraph.
Limitations
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 →
Frequently asked questions
Is more than one H1 always bad for SEO?
No. Multiple H1 elements 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.
Do heading levels have to increase one at a time?
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 accessibility.
Why are JavaScript-injected headings missing?
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.
Does changing a heading tag improve rankings?
Not by itself. Heading structure helps communicate organization and meaning, but useful content and search intent matter more than changing an H3 to an H2 in isolation.
Feature requests for Heading Structure Checker
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…
➕ Request a feature
New requests are reviewed before they appear here.
Araç hakkında
HTML yapıştırın veya herkese açık bir URL alın; başlık hiyerarşisini görselleştirin, atlanan seviyeleri ve boş başlıkları bulun ve pratik bir içindekiler önizlemesi oluşturun.
Özellikler
- Belgedeki h1–h6 öğelerini sırayla çıkarıp iç içe başlık yapısı oluşturun.
- Atlanan seviyeleri, boş veya yinelenen başlık örüntülerini ve soru başlığı adaylarını işaretleyin.
- Başlıkları ve izlenebilir parça kimliklerini içindekiler önizlemesinde inceleyin.
- Birden çok H1 ile title/H1 farklarını otomatik hata saymadan bağlam olarak raporlayın.
Nasıl çalışır
Yerel veya oluşturulmuş bir parça için HTML yapıştırın ya da herkese açık URL’nin sunucu yanıtını alın. Kontrolü çalıştırıp önce başlık taslağını, sonra bulgu listesini okuyun. Hiyerarşinin sayfa fikirleriyle eşleştiğini doğrulayın; içindekiler önizlemesinde belirsiz etiketleri ve kalıcı parça kimliği olmayan başlıkları kontrol edin. Soru başlıklarını izleyen paragrafla birlikte inceleyin.
Sınırlamalar
- URL modu ham HTML yanıtını analiz eder ve JavaScript’i çalıştırmaz; istemci tarafında eklenen başlıklar için oluşturulmuş HTML’yi yapıştırın. Önizleme metnin doğruluğunu, yararını, görsel stilini veya ekran okuyucu davranışını doğrulamaz.
- Atlanan H2’den H4’e geçiş genellikle kafa karıştırıcı bir taslak işaretidir, ancak doğrudan sıralama cezası değildir; birden fazla H1 modern HTML’de geçerli olabilir.
Sık sorulan sorular
Başlık seviyeleri ardışık olarak artmak zorunda mı?
Her durumda değil, ancak H2’den H4’e atlamak genellikle kafa karıştırıcı bir belge taslağına işaret eder. Araç bunu kullanılabilirlik ve erişilebilirlik için uyarı olarak gösterir; doğrudan sıralama cezası iddia etmez.
Birden fazla H1 SEO için her zaman kötü mü?
Hayır. Modern HTML’de birden fazla H1 geçerlidir ve otomatik olarak SEO sorunu değildir. Okuyucular için açık bir birincil sayfa başlığı yine yararlıdır; araç birden fazla H1’i hata değil bağlam olarak raporlar.
Bir başlık etiketini değiştirmek sıralamayı artırır mı?
Tek başına hayır. Başlık yapısı düzeni ve anlamı iletir; yararlı içerik ve arama amacı, yalnızca H3’ü H2’ye çevirmekten daha önemlidir.
JavaScript ile eklenen başlıklar neden eksik?
URL modu ham HTML yanıtını analiz eder ve JavaScript’i oluşturmaz. İstemci tarafı uygulama yüklemeden sonra başlık ekliyorsa tarayıcıdan oluşturulmuş HTML’yi yapıştırın.
Kontrolün sonucunu nasıl okumalıyım?
Pass gözlemlenen ham HTML örüntüsünün yapısal olarak sağlam olduğunu gösterir. Information, birden fazla H1 gibi bağlamı hata saymadan verir; Warning incelenmesi gereken olası kullanılabilirlik sorununu, Error açık kusuru, Needs review ise yeterli kanıt olmadığını belirtir.