Skip to content
pageinspection

See your site the way search engines & AI do

Crawl any site and audit it for classic SEO, answer engines and AI search, then export each fix as a prompt your coding agent can run.

Try it free

No signup required. Each free search audits one page, paste any URL to see it in action.

82
automated checks
10
audit categories
2,000
pages in a single crawl
5
free searches, no signup

Three things quietly costing you traffic

You rank on Google and you're invisible in ChatGPT.

A large share of sites block GPTBot, ClaudeBot and PerplexityBot by accident, a robots.txt line someone added years ago, or a JavaScript-only page a model cannot read. Nobody gets an alert about it.

A search crawler reaches the page while GPTBot, ClaudeBot and PerplexityBot are blocked before they arriveyour pageGooglebotallowedGPTBotClaudeBotPerplexityBotblocked

Your audit tool hands you a PDF and wishes you luck.

A list of 340 issues is not a plan. Someone still has to read it, decide what matters, translate each finding into a task, and explain it to whoever is doing the work.

A report of 340 identical, unranked issues, followed by four manual steps (read, decide, translate, explain) before any of it becomes work340 issues, no orderreaddecidetranslateexplainstill by hand

You ship a fix and never confirm it landed.

Without a re-crawl against the same check, “fixed” is a guess. Regressions from the next deploy go unnoticed until traffic moves.

A timeline where a failing check is fixed but never re-checked, so its state is unknown, and the next deploy silently returns it to failingfailsfix shipped?fixed?fails againnever re-checkedthe regression is invisible until traffic moves

From a URL to a shipped fix

No extension, no tag to install, no sitemap to upload.

A URL is crawled into a link map, fanned across 82 checks in 10 categories, ranked into a report, then exported to an agent, with a re-crawl loop back to the crawl stepURLlink mapranked reportyour agent82 checks · 10 categoriesre-crawl to confirm
Step 01

Enter a URL

Paste any website address. No signup, no credit card, no browser extension.

Step 02

We crawl & audit

A headless crawler maps every internal link, then runs the full check suite against each page: SEO, GEO, AEO, structured data and security.

Step 03

See what matters

A prioritized issues report, plus visualizations showing exactly where your site structure breaks down.

Step 04

Hand it to your agent

Export any issue as a prompt or markdown brief and let your coding agent do the fix, then re-crawl to confirm it landed.

Every issue exports as a prompt your agent can run

Most audits hand you a PDF and wish you luck. PageInspection turns any failing check into a ready-to-run prompt or a markdown brief, with the affected URLs, the evidence, and the acceptance criteria already written.

A brief names the affected URLs from your crawl, the evidence behind the failure, the acceptance criteria the work has to meet, and the check that must pass when you re-crawl. Scope limits are written in, so a canonical-tag fix stays a canonical-tag fix.

Works with

Claude Code · Cursor · GitHub Copilot · Windsurf · Cline · Any LLM chat

See what a fix brief contains
fix-heading-hierarchy.md
# Fix: Heading Hierarchy Skip

**Site:** https://example.com

**Check:** `seo-heading-hierarchy-broken` · **Severity:** warning · **Category:** SEO · **Affected pages:** 1

## What's wrong
The heading hierarchy on the page https://example.com/ is broken, with a skip from H1 to H3 without an intervening H2. The crawler observed this skip, which is reported as "H1 → H3 (skipped H2)". This defect is detected by the "seo-heading-hierarchy-broken" check. The page's current heading structure does not follow the standard hierarchical order.

## Why it matters
The broken heading hierarchy hurts accessibility and SEO structure, making it difficult for screen readers and search engines to understand the content structure. This can lead to a poor user experience, especially for users relying on assistive technologies. Proper heading hierarchy is essential for conveying the organization and importance of content.

## How to fix
1. Find the code responsible for generating the headings on the page https://example.com/ by searching for the string "H1" and "H3" in the HTML template or rendering code.
2. Insert an H2 heading between the existing H1 and H3 headings to maintain the correct hierarchical order.
3. Ensure the final HTML output includes the corrected heading structure, such as: `<h1>...</h1><h2>...</h2><h3>...</h3>`.
4. If the wording or content of the new H2 heading requires human judgement, use a safe default such as "Introduction" or "Overview" to maintain the hierarchical structure.

## Acceptance criteria
- [ ] The page https://example.com/ has a corrected heading hierarchy with no skipped levels.
- [ ] The HTML source of the page includes an H2 heading between the H1 and H3 headings.
- [ ] The page's heading structure follows the standard order: H1 → H2 → H3.

## Affected pages

| # | URL | Observed value |
| --- | --- | --- |
| 1 | `https://example.com/` | `H1 → H3 (skipped H2)` |

## Ground rules for the agent

- Start by identifying the stack yourself (package manifest, config files, template extensions) and adapt every step below to it. The steps describe the required output, not the framework.
- Treat the URLs and observed values above as facts from a real crawl. Do not invent additional affected pages.
- Prefer fixing the shared template or layout over patching one page, then confirm the change reaches every affected URL listed.
- Change content and templates, not URLs — renaming a route creates redirects and breaks inbound links.
- If a fix needs copy written (titles, descriptions), draft it from the page's existing content rather than inventing claims about the product.
- Make one issue-type change per commit so a regression can be bisected.
- Do not mark an item complete until its acceptance criterion is actually verifiable.

Example export for a single failing check

A week of manual checking, or one crawl

Checking by hand takes about 24 hours; one crawl takes about 4 minutes, bars drawn at true relative scale, so the second is one three-hundred-and-sixtieth of the first82 checks × 2,000 pages, by hand≈ 24 hone crawl≈ 4 minBoth bars at true scale. The second one really is that small.

Working through every check on every page by hand is days of the week gone. PageInspection runs the full audit in a single crawl and ranks what to fix first, so you start at the decision instead of the data entry.

The second half of the saving comes after the audit. Because every finding exports as a brief your agent can execute, the work is a paste, not a translation exercise where someone rewrites each issue into a ticket first.

82 checks, four questions

Ranking on Google stopped being the whole job. Every check belongs to one of four questions, covering classic SEO, AI search, answer engines, and the hygiene underneath it all.

Quotable

Will AI and answer engines cite you?

16

The new layer. Whether assistants and answer boxes can read, trust and quote you.

Trusted

Is it secure and fast enough to rank?

8

Transport security, headers and delivery: the hygiene that quietly caps results.

An internal link tree from the homepage down to article pages, with one page buried five levels deep and one orphaned with no inbound links//product/product/tour/pricing/blog/blog/post-a/blog/post-a/faq…/faq/v2depth 4, buried/changelogorphaned, no inbound

The crawl maps your internal links, then flags what search engines struggle to reach.

Also included

Page inspector + Lighthouse
Drill into any URL: meta & Open Graph tags, structured data, image alt coverage, and full Core Web Vitals via PageSpeed Insights.
Export anything
Download your full audit as CSV, JSON, or a branded, print-ready PDF report to share with clients and teams.

Built for three kinds of work

Agencies

Audit a client site in minutes, export a branded print-ready PDF, and show the same check passing after the fix.

In-house SEO and marketing

One crawl covering search, answer engines and AI, with issues ranked so the roadmap writes itself.

Developers and indie builders

Skip the interpretation step. Export the fix, hand it to your agent, re-crawl to verify.

Don't take our word for it

Everything on this page is checkable in a couple of minutes, without an account and without trusting us.

Way 01

Check a claim by hand

Open your own robots.txt and look for GPTBot, ClaudeBot or Google-Extended. Whatever we report about AI crawler access, you can read the same line yourself in about ten seconds.

Way 02

Run it on a page you know well

Pick a page whose markup you could describe from memory. If the report surfaces something you did not know was there, that is worth more than a quote from a stranger.

Way 03

Break it, then re-crawl

Fix one finding and run the audit again. The check either flips to passing or it does not, which is also how you would catch us being wrong.

Every figure we publish describes what the tool does, not what anyone says about it.

Start free, and free runs the whole audit

No card, no trial clock. What the allowance limits is how many audits you run, never what an audit contains.

Free account

$0

5 instant searches with no signup, then this every 30 days.

  • 10 single-page audits
  • 1 full-site crawl
  • 100 pasted-HTML analyses
  • 500 pages per crawl
Start free

Need more

By email

Bigger crawls and higher caps, arranged and priced per site rather than sold as a fixed plan.

Self-serve checkout is not live yet, so tell us what you need to scan and a larger allowance is quoted and set on your account by hand.

pageinspections@gmail.com

See the limits in full

Questions this page probably raised

Blocked crawlers, audits nobody can act on, and fixes nobody verified, the specifics.

That is one of the first things we check. A single robots.txt line, often added years ago or inherited from a template, can disallow GPTBot, ClaudeBot, PerplexityBot or Google-Extended without anyone noticing, and nothing alerts you when it happens. We report which AI user agents are allowed, blocked, or simply not mentioned, and whether an llms.txt exists to point them at your substance.

Yes, and it is common. Googlebot and the AI crawlers are different clients following different rules, so ranking well says nothing about whether an assistant can fetch, parse and quote you. A page that is fine for search can still be unreadable to a model, blocked by robots.txt, dependent on client-side rendering, or written so no passage stands alone well enough to be quoted.

Most audits end where the work begins: you get a PDF of findings and someone still has to decide what matters and translate each one into a task. PageInspection exports any failing check as a ready-to-run prompt or a markdown brief, the affected URLs from your crawl, the evidence, the acceptance criteria, and scope limits already written. It also covers AI search and answer engines alongside classic SEO, which most checklists do not include at all.

For some findings, no. Because each issue exports as a brief written for a coding agent rather than for a meeting, you can hand it straight to Claude Code, Cursor, Copilot, Windsurf, Cline or any LLM chat and review the result. Changes that touch templates or infrastructure will still want someone who knows the codebase, but the interpretation step, which is usually the slow part, is already done.

Re-crawl and look at the same check. It either passes or it does not, which is the difference between knowing and assuming, and it is also how you catch a regression, when next month’s deploy quietly undoes the fix. Without that loop, "fixed" is a guess you find out about when traffic moves.

A single free search here audits one page and returns in well under a minute. A full crawl runs in the background and covers up to 2,000 pages in one run, applying all 82 checks across 10 categories in the same pass, work that is genuinely days long by hand, which is why it usually does not get done at all.

It should not. The crawler fetches pages the way a search engine does, with limited concurrency and a per-request timeout rather than hammering your origin, and you can lower the concurrency and depth for a fragile or rate-limited host. It only requests pages; it never submits forms or changes anything.

Yes. The crawler runs a real headless browser, so pages that build their content and links client-side are seen the way a browser sees them, not as an empty shell. That matters twice over here: a JavaScript-only page is one of the most common reasons a model cannot read a site that looks perfectly fine to you.

That is one of the main uses. You can audit a site you do not own (no tag, plugin or extension to install anywhere), export a branded, print-ready PDF for the client, and after the work ships, re-crawl to show the same check passing. CSV and JSON export are there when you would rather hand over the raw findings.

Point it at a page and see what it finds

Run your first audit right here. No credit card required.

Try it free

No signup required. Each free search audits one page, paste any URL to see it in action.