scanned 2026-08-20 20:15 UTC · cached · refresh in 0h · rubric 2026.11.0
○Unverified public scan
Failing
AgentSpeed tests how easily automated agents can discover, understand, and act on getir.com. The score weights five categories of machine-readability; the ticks on the arc are the 37 individual checks behind it.
Incomplete measurement: only 50% of the rubric's weight produced results (2 of 5 categories), so no grade is shown. The score covers only what was measured.
Top fixes
Checks tagged “emerging” are 2026 agent-protocol standards most of the web hasn’t adopted yet. Adopting early is an edge, not a defect.
failSitemap present+14 ptsDiscoverability
No reachable sitemap.xml. Publish one and reference it in robots.txt.
Show me exactly what to do
What this means
A sitemap is a machine-readable list (sitemap.xml) of every page on your site. It is how crawlers find pages that aren’t linked from your homepage.
Why it matters
Agents discovering your site crawl outward from the pages they know. Without a sitemap, anything not linked from a top-level page (docs, older articles, product variants) may simply never be read, so it can’t be quoted or recommended.
Do this
Most platforms generate one automatically: Next.js (app/sitemap.ts), WordPress (Yoast/Rank Math), Shopify and Wix (built in). Turn it on rather than hand-writing.
Add a "Sitemap: https://yoursite.com/sitemap.xml" line to robots.txt so crawlers find it.
Submit it once in Google Search Console and Bing Webmaster Tools for the search side.
Don’t lose this report
Get it in your inbox now, plus a heads-up whenever getir.com’s agent-readiness score changes. Free, unsubscribe anytime.
Prefer we just watch it for you? Monitor rescans weekly and emails what changed, $29/mo. Start monitoring →
Fix it
Generated, ready-to-ship files for the gaps above. Copy them, or download and drop them into your repo.
Reference a sitemap
Publish /sitemap.xml and add this line to robots.txt.
Sitemap: https://getir.com/sitemap.xml
This scan graded one page. Your site is more than one page.
Weakest on this scan: actionability, 0/100 — the actions this page offers people are hard for an agent to find or complete.
This graded your homepage. Your pricing, docs, and checkout live on other pages: the ones assistants actually quote when they recommend you. A 15/100 here means agents are already missing things on the page you polish most. The $29 Deep Scan grades your homepage plus up to 10 more pages we discover, against all 37 checks, then emails a PDF with every failing check and its exact fix, ranked by what costs you the most visibility. One-time, delivered in minutes, no subscription.
403 ERROR The request could not be satisfied. Request blocked. We can't connect to the server for this app or website at this time. There might be too much traffic or a configuration error. Try again later, or contact the app or website owner. If you provide content to customers through CloudFront, you can find steps to troubleshoot and help prevent this error by reviewing the CloudFront documentation. Generated by cloudfront (CloudFront) Request ID: fhQ8nPKb7LOufwkmlKg6rJ77AC9Jif8OwYBSQXtzZKcQOv5socVhHA==
Show your score
Embed this badge on your site. It links back to this live scan and updates on every rescan.
Get this report by email, then a heads-up when getir.com’s agent-readiness actually changes: a check regressing, or the composite dropping.
Two things never trigger an email: a score change caused by us publishing a new rubric, because that is a different instrument rather than a change to your site, and movement explained only by timing-derived checks, which shift run to run on a site nobody touched.
Want it on your own schedule, with Slack or a webhook instead of email? Score-drift monitoring is on every paid plan.
This score says whether an AI agent could read getir.com. AI traffic analytics says whether one actually came, and which pages turned it away.
Full breakdown
2 pass0 warn4 fail31 skip
Discoverability
fail
robots.txt present
No reachable robots.txt at the site root. Publish one so agents can discover your crawl policy and sitemap.
0/100
pass
robots.txt allows AI agents
All 9 answer-time access agents allowed.
100/100
fail
Content-Signal directivesemerging
No Content-Signal directives. Add e.g. `Content-Signal: ai-train=no, ai-summarize=yes` to declare granular AI usage policy beyond binary allow/disallow.
0/100
pass
llms.txt present
Found /llms.txt but missing H1 header and markdown links. Not scored.
100/100
fail
Sitemap present
No reachable sitemap.xml. Publish one and reference it in robots.txt.
0/100
skip
Link response headers
Not measured: the origin returned HTTP 403 for this URL, so the document received is an error or challenge response rather than the page. Scoring it would describe that response, not your site.
—
skip
Canonical URL
Not measured: the origin returned HTTP 403 for this URL, so the document received is an error or challenge response rather than the page. Scoring it would describe that response, not your site.
—
skip
MCP server cardemerging
Not measured: the origin answered HTTP 403 for this resource, which says we were refused or could not be served, not that the resource is missing.
—
skip
OAuth authorization metadataemerging
Not measured: the origin answered HTTP 403 for this resource, which says we were refused or could not be served, not that the resource is missing.
—
skip
OAuth resource metadataemerging
Not measured: the origin answered HTTP 403 for this resource, which says we were refused or could not be served, not that the resource is missing.
—
skip
API catalog / OpenAPIemerging
Not measured: the origin answered HTTP 403 for this resource, which says we were refused or could not be served, not that the resource is missing.
—
skip
Web Bot Authemerging
Not measured: the origin answered HTTP 403 for this resource, which says we were refused or could not be served, not that the resource is missing.
—
Readability
skip
Markdown negotiationemerging
Not measured: the origin returned HTTP 403 for this URL, so the document received is an error or challenge response rather than the page. Scoring it would describe that response, not your site.
—
skip
Text-to-markup ratio
Not measured: the origin returned HTTP 403 for this URL, so the document received is an error or challenge response rather than the page. Scoring it would describe that response, not your site.
—
skip
Content without JavaScript
Not measured: the origin returned HTTP 403 for this URL, so the document received is an error or challenge response rather than the page. Scoring it would describe that response, not your site.
—
skip
Heading hierarchy
Not measured: the origin returned HTTP 403 for this URL, so the document received is an error or challenge response rather than the page. Scoring it would describe that response, not your site.
—
skip
Cookie wall blocks content
Not measured: the origin returned HTTP 403 for this URL, so the document received is an error or challenge response rather than the page. Scoring it would describe that response, not your site.
—
skip
Declared language
Not measured: the origin returned HTTP 403 for this URL, so the document received is an error or challenge response rather than the page. Scoring it would describe that response, not your site.
—
skip
Page title
Not measured: the origin returned HTTP 403 for this URL, so the document received is an error or challenge response rather than the page. Scoring it would describe that response, not your site.
—
skip
Meta description
Not measured: the origin returned HTTP 403 for this URL, so the document received is an error or challenge response rather than the page. Scoring it would describe that response, not your site.
—
Structured data
skip
JSON-LD present
Not measured: the origin returned HTTP 403 for this URL, so the document received is an error or challenge response rather than the page. Scoring it would describe that response, not your site.
—
skip
Structured data validates
Not measured: the origin returned HTTP 403 for this URL, so the document received is an error or challenge response rather than the page. Scoring it would describe that response, not your site.
—
skip
Schema type coverage
Not measured: the origin returned HTTP 403 for this URL, so the document received is an error or challenge response rather than the page. Scoring it would describe that response, not your site.
—
Coherence: do your channels agree?
skip
JSON-LD price matches the visible priceemerging
Not measured: the origin returned HTTP 403 for this URL, so the document received is an error or challenge response rather than the page. Scoring it would describe that response, not your site.
—
skip
JSON-LD name appears on the pageemerging
Not measured: the origin returned HTTP 403 for this URL, so the document received is an error or challenge response rather than the page. Scoring it would describe that response, not your site.
—
skip
Declared language matches the contentemerging
Not measured: the origin returned HTTP 403 for this URL, so the document received is an error or challenge response rather than the page. Scoring it would describe that response, not your site.
—
Actionability
skip
Paywall / login wall
Not measured: the origin returned HTTP 403 for this URL, so the document received is an error or challenge response rather than the page. Scoring it would describe that response, not your site.
—
skip
Agent Skills manifestemerging
Not measured: the origin answered HTTP 403 for this resource, which says we were refused or could not be served, not that the resource is missing.
—
skip
WebMCP actionsemerging
Not measured: the origin returned HTTP 403 for this URL, so the document received is an error or challenge response rather than the page. Scoring it would describe that response, not your site.
—
skip
Commerce protocol manifestemerging
Not measured: the origin refused the commerce-discovery probes, which says we were not allowed to look, not that nothing is there.
—
skip
Primary action reachable
Not measured: the origin returned HTTP 403 for this URL, so the document received is an error or challenge response rather than the page. Scoring it would describe that response, not your site.
—
fail
Reachability
Terminal HTTP 403.
0/100
skip
Primary action is clickableemerging
Not measured: the origin returned HTTP 403 for this URL, so the document received is an error or challenge response rather than the page. Scoring it would describe that response, not your site.
—
skip
Filters reachable by URLemerging
Not measured: the origin returned HTTP 403 for this URL, so the document received is an error or challenge response rather than the page. Scoring it would describe that response, not your site.
—
Performance
skip
Time to first byte
Not measured: the origin returned HTTP 403 for this URL, so the document received is an error or challenge response rather than the page. Scoring it would describe that response, not your site.
—
skip
Full render time
Not measured: the origin returned HTTP 403 for this URL, so the document received is an error or challenge response rather than the page. Scoring it would describe that response, not your site.
—
skip
Page weight
Not measured: the origin returned HTTP 403 for this URL, so the document received is an error or challenge response rather than the page. Scoring it would describe that response, not your site.
—
Beyond the scan
Running AI agents of your own? AgentSpeed also monitors them in production: every run, its latency, cost, and failures, with alerts when something breaks. Free for 10,000 events a month, no credit card.
Run reports like this for every client: white-label PDFs and weekly monitoring for up to 15 domains, $149/mo. AgentSpeed for Agencies →
Methodology & limitations
This score is a measurement of machine-readability for automated agents under the published rubric 2026.11.0. AgentSpeed does not assess security, legitimacy, privacy, or financial trust.
→ https://getir.com/sitemap.xml
Paste into Claude Code, Cursor, or any assistant with your repository open. It carries this finding, the steps, and the shortcuts to avoid.
Or copy it written for your tool:
What to check
Open yoursite.com/sitemap.xml. It should list real page URLs, not error.
Re-scan: "Sitemap present" flips to PASS.
What to avoid
Don’t list URLs that redirect or 404. A sitemap full of dead links teaches crawlers to distrust it.
Don’t include private or staging URLs; a sitemap is a public document.
Before reading anything, an agent has to reach your page: one request, a clean answer. Yours didn’t answer cleanly. The finding above says exactly what happened: an error status, a connection failure, or a chain of redirects before any content arrived.
Why it matters
Agents give up much faster than browsers. A human waits through three redirects and a retry; an agent on a time budget records "unreachable" and answers from other sources. Every other measurement on this page happens only after this one succeeds, so this failure hides everything else your site does right.
Do this
Read the finding above: it names the status code and counts the redirects we followed.
If it is a redirect chain, collapse it to one hop. The classic chain is http → https → www → final page; configure your host to jump straight from any variant to the final address in a single redirect.
If it is a 4xx or 5xx status, your server is refusing or failing the page. Fix the route or the error before anything else on this page.
If the fetch failed outright, check DNS and the TLS certificate; an expired or mismatched certificate turns every agent away at the door.
Paste into Claude Code, Cursor, or any assistant with your repository open. It carries this finding, the steps, and the shortcuts to avoid.
Or copy it written for your tool:
What to check
Run: curl -I https://yoursite.com and confirm a 200, or a single 301 followed by a 200.
Hit Re-scan above: "Reachability" flips to PASS, and checks that were skipped get measured for the first time.
What to avoid
Don’t serve an error page with a 200 status to look reachable. Agents then read the error text as your content and summarise your business from it.
Don’t block by IP reputation so aggressively that assistant crawlers are refused while browsers pass; the finding above reflects what an agent gets, not what you see.
No reachable robots.txt at the site root. Publish one so agents can discover your crawl policy and sitemap.
Show me exactly what to do
What this means
Your site has no robots.txt file at all. That file is the front-door sign for every robot: what to read, what to skip, and where your sitemap lives.
Why it matters
Without one, every crawler guesses. Most treat a missing file as "allowed", but you lose the one place to point them at your sitemap and to state your policy explicitly. An explicit welcome is a clearer signal than silence.
Do this
Create a plain text file named robots.txt.
Start permissive: "User-agent: *" then "Allow: /", plus a "Sitemap:" line pointing at your sitemap URL.
Serve it at exactly yoursite.com/robots.txt (site root, not a subfolder).
→ https://getir.com/robots.txt
Paste into Claude Code, Cursor, or any assistant with your repository open. It carries this finding, the steps, and the shortcuts to avoid.
Or copy it written for your tool:
What to check
Open yoursite.com/robots.txt. You should see your file, not a 404 page.
Re-scan: "robots.txt present" flips to PASS, and if you added the Sitemap line, "Sitemap present" often flips with it.
What to avoid
Don’t copy a robots.txt from another site. Theirs encodes their policy, including blocks you may not want.
Don’t return an HTML error page at that URL with status 200; robots parsers read it as garbage rules.
No Content-Signal directives. Add e.g. `Content-Signal: ai-train=no, ai-summarize=yes` to declare granular AI usage policy beyond binary allow/disallow.
Show me exactly what to do
What this means
Content-Signal is a newer robots.txt directive (pushed by Cloudflare) that lets you state a granular AI policy: for example "don’t train on my content, but summarising it in answers is fine". Classic robots.txt only offers all-or-nothing per crawler; this adds the middle ground. We looked for a Content-Signal line in your robots.txt and response headers and found none.
Why it matters
Without a granular signal, crawlers infer your intent from blunt allow/block rules, and sites often block more than they mean to just to avoid training use. A declared signal lets you keep answer visibility (summaries, citations) while opting out of what you object to. This is an emerging standard: honoring is voluntary and adoption is early, which is why it is flagged as emerging and weighs little.
Do this
Decide your actual policy first: are you fine with AI training on your content? With summarisation in answers? With search indexing?
Express it as one line in robots.txt, for example: Content-Signal: ai-train=no, ai-summarize=yes.
Keep your existing User-agent rules; the signal adds nuance on top, it doesn’t replace them.
Paste into Claude Code, Cursor, or any assistant with your repository open. It carries this finding, the steps, and the shortcuts to avoid.
Or copy it written for your tool:
What to check
Open yoursite.com/robots.txt and confirm the Content-Signal line is live.
Hit Re-scan above: "Content-Signal directives" flips to PASS.
What to avoid
Don’t declare signals that contradict your User-agent rules, such as ai-summarize=yes while blocking every AI crawler; conflicting instructions get you treated as unreliable.
Don’t add the line just for the score. It is a public policy statement; say what you mean, because compliant crawlers will act on it.