Check your page for AI search before you ship it.
Chompr.io checks whether AI search crawlers can reach a page, scores its factual content and lists what to fix. The reproducible, versioned score runs in your browser and in CI, including staging, localhost and logged-in pages.
OAI-SearchBot. chmpr check --fixes prints a patch unblocking the search crawlers while leaving training opt-outs alone.Blocking an engine's crawler roughly halved its citations.
The crawler rule is the one part of Chompr tested against real citation outcomes, using the Tow Center (Columbia) generative-search dataset.
p < 0.001 (χ², 1 df). 1,000 labelled outcomes where the engine's crawler stance was known, out of 1,600 in the study.
A block costs citations but does not cut them to zero. Blocked pages were still cited 17.7% of the time.
Paywall-free articles only, so the paywall confound is controlled.
| Engine | Allowed | Blocked | Ratio |
|---|---|---|---|
| OpenAI | 40.0% | 8.3% | 0.21 |
| Perplexity | 64.4% | 30.0% | 0.47 |
Chompr turns each blocked engine into a point penalty based on these ratios. Claude and DuckDuckGo were not in the dataset, so their ratios are a stated default (0.5), labelled "untested default" wherever shown.
A readiness checklist you can reproduce.
The same page gives the same score every time. There is no LLM, no network call and no randomness in the scoring path. Every result is stamped with its algorithm version. See what each check means.
- A 0 to 100 score from the page's factual content: numbers, lists and citations to outside sources, the signals tested in the GEO study (KDD 2024).
- Minus a penalty for each AI search crawler your robots.txt (RFC 9309) blocks. A
noindexornosnippetcaps the score at 39. - A separate checklist out of 75 for schema, structure, entities, answerability and retrieval basics. The checklist comes with fixes but does not move the score.
- A ranked fix list, each fix labelled by the kind of evidence behind it.
- Not a prediction of whether an AI engine will cite your page.
- Not a ranking score. A higher number has not been shown to mean more citations.
- Not comparable across algorithm versions. Chompr refuses to compare a v2.1 result with a v2.2 one instead of showing a misleading delta.
Testing the score against real citation outcomes is the top open item on the roadmap. Until then, read the score as a checklist with a number attached.
On pages a URL checker can't fetch.
A tool fetching a public URL from its own servers can't see a staging host, localhost or a logged-in page. Chompr scores the page in place.
Scores the rendered page in your own browser, so staging hosts, localhost and logged-in previews work. In the extension, no raw page content leaves the browser.
Pre-publish mode scores a draft as the shipped page: a staging noindex becomes a ship blocker, and only the production robots.txt counts.
chmpr check takes a URL or a local .html file. --dir scores every page in a static build with no server running, grouped by template.
--robots-originchecks a local build against production's robots.txt.
chmpr crawl reads the sitemap, obeys robots.txt and groups pages by template. The report lists the fixes missing from 90% or more of a template, with medians per template and for the site.
The report also lists every unreadable page.
Fail the build when a page regresses.
Commit a baseline, then compare each build against the baseline. A newly blocked AI search crawler counts as a critical regression, because a crawler block is a policy change for someone to approve.
# score a static build against a committed baseline
chmpr check --dir dist --base-url https://example.com \
--baseline .chmpr/site-baseline.json --tolerance 2
# one page, with a minimum score
chmpr check https://example.com --min 60Exit 1 on a regression or a missed minimum. Exit 4 if the baseline was written under a different algorithm version.
# .github/workflows/ai-search.yml
on: pull_request
jobs:
chompr:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: npm ci && npm run build
- run: |
npx @chompr/cli check --dir dist \
--base-url https://example.com \
--baseline .chmpr/site-baseline.json \
--tolerance 2 --format githubCreate the baseline once with --write-baseline .chmpr/site-baseline.json and commit the file. --format github turns each regression into an annotation on the pull request.
The CLI reports through its exit code, so the check fits any CI with a shell step: GitHub Actions, GitLab CI, CircleCI or a pre-deploy script. Add the check after your build and the pipeline stops when a page regresses.
The score is free. Reports and tracking will be paid.
Everything running on your machine stays free. The paid tier adds a dashboard, reports and tracking. Prices are not set yet.
- Browser extension for Chrome, Edge and Firefox
- Score, checklist and ranked fixes for the current page
- Per-engine crawler status and pre-publish mode
- CLI for CI baselines
- A dashboard for your sites and their scores
- LLM-written reports, built on the same fixes and numbers the free tool shows
- Tracking of changes to your sites over time
- Comparisons against competitor sites
Before you ask.
Will a higher score get my page cited?
We can't promise more citations, and we don't. The crawler rule is backed by citation data. The rest of the score is not yet. Treat the score as a list of things to fix, not a forecast.
Is the score really deterministic?
Yes. The score is a pure function of signals extracted from the page. The extension and the CLI call the same scoring package, so both give the same result for the same input.
Does my page content leave my browser?
Not from the extension, which scores locally. The paid reports will send a reduced payload (title, headings and a short snippet with emails, phone numbers and similar identifiers removed), never the full page.
Does it handle JavaScript-rendered pages?
The extension scores the rendered page. The CLI does not run JavaScript, so the CLI scores the HTML a non-JS fetcher receives. The extension can compare the two.
Which AI crawlers does Chompr check?
The search crawlers of OpenAI, Perplexity, Anthropic and DuckDuckGo, such as GPTBot, ClaudeBot and PerplexityBot access. Training opt-outs are shown on their own line as crawler policy and do not affect the score.
Where can I get Chompr?
Store listings and npm packages are not published yet. Join the waitlist to hear about the release.
Find out if AI search crawlers can reach your pages.
Chompr.io is launching soon. Leave your email and we'll write when the extension and CLI are published.