AXRAY

Agent Experience · AX spec v1.0

Your website was built for people.
Increasingly, it is read by machines.

AXRAY fetches a URL the way an AI agent does — plain HTTP, no browser, no JavaScript — and reports what actually reached it. 53 checks, one score out of 100, and a fix list ordered by how many points each change is worth.

Free, no account, results in about two seconds. Prefer a terminal? npx axray example.com

The gap nobody is measuring

Lighthouse scores the human experience. Nothing scores the other half of your traffic.

You already measure how fast a page paints and how it ranks. Neither of those tells you whether an assistant can quote your pricing correctly, whether a shopping agent can find your stock status, or whether the crawler that would have cited you was turned away at your CDN this morning. Those are different questions with different answers, and they are the ones deciding how you are described in an answer you never get to see.

Reachability · weight 25

Can it get the bytes?

Can an agent fetch your content at all, without a browser and without being blocked?

A Cloudflare challenge that a browser solves silently returns a wall to ChatGPT. Your page simply does not exist in that answer.

Comprehension · weight 25

Can it tell what this is?

Once fetched, can the agent work out what this page is and what it says?

No h1, no description, 40 words of text: the assistant writes its own summary of you, and it will be wrong in a way you never see.

Structure · weight 18

Can it read the facts?

Is the important data machine-readable instead of implied by visual layout?

Your price is styled text in a div. A competitor publishes an Offer. The shopping agent quotes their number and calls yours "not stated".

Actionability · weight 17

Can it do the next thing?

Can the agent take the next step - navigate, search, submit, buy - without guessing?

Navigation built from click handlers on empty anchors works for a mouse and is a dead end for an agent. Everything behind it is unreachable.

Agent Contract · weight 15

Did you tell it the rules?

Have you told agents the rules: what they may use, where the docs are, who to contact?

No llms.txt, no per-crawler policy, no manifest. Every operator applies its own default to you and you find out afterwards.

What you get back

A number you can act on, not a wall of warnings.

Every finding carries the points it is costing you on the same 0–100 scale, so the fix list sorts itself. Config-level fixes are flagged separately from architectural ones, because the first kind ships this afternoon and the second needs a sprint.

The report

  • Overall AX score and letter grade, with five pillar sub-scores
  • Per-check verdict, the evidence we found, and why an agent cares
  • A copy-pasteable snippet for every fix that has one
  • Your potential score if you applied only the configuration fixes
  • A shareable public URL and an embeddable badge

The crawler check

We resolve robots.txt against 16 named AI crawlers individually, and separate the ones that send you traffic from the ones that only train on you. Most sites that "blocked the AI bots" blocked both without meaning to.

  • OAI-SearchBot — OpenAI
  • ChatGPT-User — OpenAI
  • Claude-User — Anthropic
  • Claude-SearchBot — Anthropic
  • PerplexityBot — Perplexity
  • Perplexity-User — Perplexity

The AX Index

What the web actually scores

See the full index
2sites measured
88median AX score
88mean AX score
0%score below 58
Recently scanned sites and their AX scores
SiteAX scoreGradeReport
qibbopress.com 100 A+ View the report for qibbopress.com
erenakkoc.online 75 B View the report for erenakkoc.online

In your terminal and your pipeline

The same engine, everywhere you work.

Run it against anything, with no account:

npx axray example.com
npx axray example.com/pricing --verbose
npx axray example.com --crawl 50 --json > ax.json

Gate a deploy on it:

# fails the build if the score drops below 70
npx axray "$DEPLOY_URL" --min 70

Or call the JSON API:

curl -s https://qibbopress.com/api/v1/scan \
  -H "authorization: Bearer $AXRAY_API_KEY" \
  -H "content-type: application/json" \
  -d '{"url":"example.com"}' | jq '.score, .priorities[0].title'

The scoring engine is the same package in all three places, so a number in CI is the number on the report.

Find out what an agent sees on your site.

It takes about two seconds and you do not need an account. Most people are surprised, and the majority of what turns up is fixable the same day.

Scan a URL