Paste a page's HTML source to see the readable text, heading outline, structured data and fixes for a reader that does not run scripts.
To see what an AI crawler or language model reads on your page without running JavaScript, paste the page's HTML source and this tool shows the readable text, the heading outline, the head data, the structured data and a checklist of fixes. A reader that does not run scripts gets only the HTML the server sent, so text that scripts add later is not in it. Worked example: the sample page has 222 characters of text outside scripts, a skipped heading level (h2 to h4), a JSON-LD block that is not valid JSON and an image with no alt attribute. That is 3 fixes and 2 notes, and the Markdown text view is 262 characters, an estimated 66 tokens.
The page never fetches an address. A web page in your browser is not allowed to read another site's HTML unless that site permits it, so a tool that took a URL would need a server in the middle, and this one has none. Instead, open your page, add view-source: before the address in Chrome, Edge or Firefox, or use the browser's View page source command, and copy everything. That is the HTML as the server sent it. The Elements panel in developer tools shows the rendered page after scripts have run, which is the view this tool is meant to compare against, so do not paste from there.
The text view comes from the HTML to Markdown converter on this site, with navigation, header, footer and sidebars removed by default. The checklist flags an empty app container (a div with id root, __next or app, or an app-root element), very little text next to scripts, text that exists only inside noscript, and a noscript message that only asks for JavaScript. It reads the title, meta description, canonical links, robots meta tags (noindex, none, nofollow and nosnippet, with bingbot tags reported separately), the html lang attribute and Open Graph tags. Headings are checked for a missing or repeated h1, skipped levels and empty headings. JSON-LD blocks are parsed and their types listed, and images with no alt attribute are counted, while alt="" is accepted as decorative. Tokens are estimated at 4 characters each, rounded up, which is OpenAI's rough guide for English text; the Token Counter gives exact counts.
It cannot see robots.txt, HTTP headers such as X-Robots-Tag, redirects, or pages that return different HTML to different visitors. It does not run scripts, so it cannot say what a crawler that does run them would see, and it does not know how any particular crawler or model treats noscript text, so it reports that text separately. Link counts are internal and external by the host in the canonical link or og:url; with neither, every full address counts as external. Up to 1,000,000 characters are read. An agent can open this page with the HTML already filled in by adding #input= followed by the URL-encoded source to the address.
Copy the page source (view-source: before the address in Chrome, Edge or Firefox) and paste it in the box. The text view shows what is in the HTML as sent. Which crawlers read only that is not something this tool can check.
Your browser ran scripts that built the page after it loaded. If the source holds only an empty div with id root and script tags, a reader that does not run scripts gets no text. Render the content on the server or at build time so it is in the HTML.
Browsers stop a page from reading another site's HTML unless that site allows it. A tool that took a URL would need a server to fetch it. This page has none, so nothing is fetched and the source you paste is all it reads.
The count is the number of characters in the text view divided by 4, rounded up, so the 262-character sample is 66 tokens. It is a rough guide for English. Code, other languages and JSON split differently, so use the Token Counter for an exact count.
It is reported on its own and left out of the text view. Some readers include noscript text and some skip it. The checklist notes it, and flags it as a fix when the only text is a message such as Please enable JavaScript.
No. The text is processed in your browser and not uploaded. Only the navigation setting is saved in this browser, never the page.