Pre-publish Comparison

Free, no signup. Compare a draft HTML export with the current live HTML you supply before approving a release.

Supply both HTML documents

1 MiB maximum per document. Oversized input is rejected in full; it is never silently shortened. Use HTML only—do not paste credentials, access tokens, personal data, or confidential source comments.

Runs entirely in your browser — nothing you paste is uploaded or stored. The tool does not fetch URLs, call AI, use credentials, persist input, or include source HTML in exports. 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.

Feedback
Report a bug

Found something broken in Prepublish Comparison? Let us know what happened — this goes straight to a private triage queue, not a public list.

What will be sent
 No tool inputs, uploads, pasted source, complete results, query parameters, or URL fragments are attached automatically. You can edit or remove the selected passage above. Browser and anti-abuse metadata is processed for spam prevention. 

Sample report

Fabricated draft and live HTML

Regression: the draft removes one live hreflang declaration.

Changed: the title and heading outline differ.

Not evaluated: AI-crawler posture is not observable from the supplied HTML.

How to use it

  1. Export or view the complete HTML for the draft and current live page.
  2. Paste both documents or choose two local .html files. Inputs over 1 MiB are rejected.
  3. Compare the normalized signal rows. Investigate regressions first, then confirm whether each changed row is intentional.
  4. Download CSV or JSON rows for a release checklist. The exports omit the supplied source HTML.
Local data

Saved targets, named lists, and recent check summaries remain only in this browser.

How it works

The parser scopes title, description, canonical, robots, hreflang, and JSON-LD evidence to the document head. Commented tags, script strings, and body-level decoys are ignored. HTML entities are decoded, JSON-LD object keys are normalized structurally, and heading levels plus text are compared as an ordered outline.

Limits

The result covers only the two supplied documents. It does not fetch a live URL, render JavaScript, inspect HTTP headers, read robots.txt, verify hreflang reciprocity, validate schema eligibility, or determine whether a release should proceed. Malformed or unavailable evidence remains not evaluated.

Frequently asked questions

Does this fetch either page?

No. Supply each HTML document by pasting it or choosing a local .html file. Both documents and the comparison stay in this browser; neither page nor its contents are fetched or uploaded. A bounded anonymous usage ping may be sent after a run, but it contains no supplied HTML, URL, domain, IP, or identifier.

What happens when a signal cannot be evaluated?

The row stays not evaluated. A missing or malformed head, malformed JSON-LD, and crawler posture that HTML cannot establish are not treated as matches.

What counts as a regression?

The conservative regression label is reserved for removed observed evidence, removed hreflang declarations, a shorter heading outline or lost H1, and newly restrictive robots or crawler directives. Other differences are labeled changed for human review.

Why is AI-crawler posture not evaluated?

A pasted HTML document does not prove the site robots.txt policy or edge behavior for AI crawlers. The row is retained to make that evidence boundary explicit.

What does an export contain?

Exports contain only the normalized comparison rows and their states. They never include either pasted HTML document.

Feature requests for Prepublish Comparison

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.

Loading…

➕ Request a feature

New requests are reviewed before they appear here.

Araç hakkında

Yayınlamayı onaylamadan önce taslak HTML dışa aktarımını sağladığınız güncel canlı HTML ile yerelde karşılaştırın; başlıkları, açıklamaları, canonical ve robots yönergelerini, hreflang’ı, başlık ana hatlarını ve yapılandırılmış veriyi inceleyin.

Özellikler

  • Taslak ve canlı belgeleri normalize edilmiş head sinyalleri, başlık yapısı ve JSON-LD ile satır satır karşılaştırın.
  • Eşleşme, değişti, regresyon veya değerlendirilmedi durumlarını ayrı gösterin ve muhafazakâr regresyon kanıtını açıklayın.
  • İsteğe bağlı HTML dosyası seçimiyle yapıştırma veya yerel dosya akışını kullanın; tüm karşılaştırmayı tarayıcıda tutun.
  • Yayın kontrol listesi için normalize edilmiş CSV veya JSON satırlarını indirin; kaynak HTML dışa aktarımlara dahil edilmez.

Nasıl çalışır

Yayınlamayı planladığınız taslak HTML’yi ve mevcut canlı HTML’yi yapıştırın veya iki yerel .html dosyası seçin. Compare seçeneğini çalıştırın ve title, description, canonical, robots, hreflang, heading outline ve JSON-LD satırlarının durumunu inceleyin. Önce regresyonları araştırın; sonra her changed satırın bilerek yapıldığını doğrulayın. Yayın kontrol listesine eklemek için CSV veya JSON satırlarını indirin; girdilerin 1 MiB sınırını ve dışa aktarımda kaynak HTML bulunmadığını unutmayın.

Sınırlamalar

  • Araç yalnızca sağladığınız iki belgeyi karşılaştırır; canlı URL getirmez, JavaScript oluşturmaz, HTTP başlıklarını veya robots.txt’yi okumaz, hreflang karşılıklılığını ya da schema uygunluğunu doğrulamaz.
  • Yapıştırılmış HTML AI crawler politikasını veya edge davranışını kanıtlamaz. Eksik veya bozuk kanıt değerlendirilmedi kalır; sonuç sıralama, trafik veya yayın etkisi tahmini değildir.

Sık sorulan sorular

Bu araç hangi sayfayı getirir?

Hiçbir sayfayı getirmez. Her HTML belgesini yapıştırmanız veya yerel .html dosyası seçmeniz gerekir. Belgeler ve karşılaştırma tarayıcıda kalır; HTML, URL, alan adı veya IP yüklenmez.

Bir sinyal değerlendirilemediğinde ne olur?

Satır değerlendirilmedi kalır. Eksik veya bozuk head, bozuk JSON-LD ve HTML’nin kanıtlayamayacağı crawler posture eşleşme olarak kabul edilmez.

Regresyon ne sayılır?

Muhafazakâr etiket; gözlemlenen kanıtın kaldırılması, hreflang bildiriminin kaldırılması, daha kısa heading outline veya kayıp H1 ve daha kısıtlayıcı yeni robots ya da crawler yönergeleri için ayrılır. Diğer farklar insan incelemesi için changed olarak etiketlenir.

Dışa aktarım ne içerir?

Dışa aktarımlar yalnızca normalize edilmiş karşılaştırma satırlarını ve durumlarını içerir; yapıştırılan HTML belgelerinin hiçbirini içermez.

AI crawler duruşu neden değerlendirilmedi?

HTML, AI crawler’ların edge veya robots politikasını kanıtlayamaz. Bu kanıt sınırını açıkça korumak için satır değerlendirilmedi olarak bırakılır; ek HTTP, robots.txt ve dağıtım kanıtını ayrıca inceleyin.