Scan report ·

graza.co

Gaps. Discovery works, but trust does not.

Category · grocery

D
49 / 100
Gaps
Aisle Storefront · Simulated twin
This scan found 5 weaknesses an agent would hit at checkout, so we planted the same mechanisms in a simulated storefront. Watch an agent shop it, or send your own.
Aisle Max · Remediation packet
Every fix this scan flagged, one card at a time: ranked by points per effort, with copy-paste snippets, per-fix downloads, and a plan your AI coding agent can execute.
Discoverability
B
15 / 20
Machine Readability
D
9 / 20
Transactability
C
10 / 20
Agent Posture
D
6 / 15
Trust Signals
D
4 / 10
Agent-Native Content
E
5 / 15

Narrative

Graza scores 49 out of 100, which lands squarely in the Gaps band, and the shape of the deficit is instructive: the site is genuinely welcoming to crawlers and has clean commerce plumbing underneath, but it withholds exactly the structured detail that an agent needs to close a purchase on a shopper's behalf. Every tracked bot from GPTBot to ClaudeBot to PerplexityBot to Amazonbot is allowed in robots.txt, an llms.txt exists at the well-known path, and JSON-LD Product plus Offer markup covers 8 of 9 sampled product URLs with prices rendered directly in raw HTML. The foundations are here. The finishing work is not.

The single largest hole is product attributes. Check 2.2 scored zero out of six, with the classifier finding structured attribute data on none of the nine sampled URLs and a single labeled "size" hit on the Umbrizzle page. Graza sells a product where varietal, harvest month, milliliters, smoke point, and country of origin are the entire purchase decision, and the prose descriptions actually contain all of it ("Picual olives from Jaen, Spain," "500ML," "up to 490°F smoke point"). None of it is exposed as machine-parseable additionalProperty fields. An agent comparing finishing oils cannot filter Graza on polyphenol content or bottle size without scraping paragraphs and hoping.

Inventory signals are the second black hole, another zero out of five on check 2.3. Not one of the nine product pages carries a schema.org availability value, and only two surface even a text-level "in stock" cue. For a perishable food brand where the return policy is literally "we are not able to accept returns," an agent has no programmatic way to confirm a bottle is purchasable before committing a customer's card. Compounding this, check 6.4 also scored zero: there are no delivery date estimates anywhere, structured or otherwise.

Price transparency at checkout is the third meaningful loss, zero out of four on check 3.3. The classifier found no shipping or tax visible pre-authentication on either product or cart pages, only a template variable "${{amount}}" sitting where a subtotal should render. Combined with CAPTCHA prevalence (check 4.2, zero out of four, with both reCAPTCHA and hCaptcha detected on the cart and homepage and flagged as transaction-blocking) and a 403 on https://graza.co/checkout, the transactability story falls apart precisely at the moment of conversion. Machine-native rails are present (Shop Pay, Apple Pay, PayPal, all detected) and the Shopify cart endpoint is reachable, so the infrastructure works; the bot-mitigation layer is what stops an agent cold.

Trust signals round out the damage. Check 5.4 scored zero because no third-party review platform (Yotpo, Okendo, Judge.me, Trustpilot, none of them) is detectable in markup, even though the pages themselves display "4.9 out of 5 stars based on 4,506 reviews." That rating exists as pixels, not as aggregateRating schema. Merchant verifiability (check 5.2) surfaces the business name but no physical address or registration ID, and check 4.4 finds no stated agent policy at all.

Graza's biggest opportunity is to expose what it already knows: structured attributes, availability, aggregateRating, and shipping estimates in JSON-LD would move this report from Gaps to Solid without changing a single word of customer-facing copy.

BDiscoverability

Robots, sitemap, agent endpoints. mostly strong.

AI crawler posture: 6/6
https://graza.co/robots.txt
1.1 · 6/6
!
Structured product data coverage: 3/6
sample · https://www.graza.co/products/sizzle
How to fixPro
1.2 · 3/6
!
Sitemap quality: 2/4
https://graza.co/sitemap.xml
How to fixPro
1.3 · 2/4
Agent-specific endpoints: 4/4
https://graza.co/.well-known/ai-plugin.json
1.4 · 4/4

DMachine Readability

Schema coverage, raw-HTML price, inventory, variants. gappy.

Price in raw HTML: 8/8
sample · https://www.graza.co/products/sizzle
2.1 · 8/8
×
Product attributes structured: 0/6
sample · https://www.graza.co/products/sizzle
How to fixPro
2.2 · 0/6
×
Inventory signals: 0/5
sample · https://www.graza.co/products/sizzle
How to fixPro
2.3 · 0/5
Variant handling: 1/1
sample · https://www.graza.co/products/sizzle
2.5 · 1/1

CTransactability

Checkout flow, guest, transparency, payment rails, cart API. partial.

!
Checkout flow structure: 2/6
How to fixPro
3.1 · 2/6
!
Guest checkout availability: 2/4
How to fixPro
3.2 · 2/4
×
Price transparency signals: 0/4
How to fixPro
3.3 · 0/4
Machine-native payment rails: 3/3
3.4 · 3/3
Cart API accessibility: 3/3
3.5 · 3/3

DAgent Posture

Bot detection, CAPTCHA, rate limiting, stated agent policy. gappy.

!
Bot detection aggressiveness: 3/6
How to fixPro
4.1 · 3/6
×
CAPTCHA prevalence: 0/4
How to fixPro
4.2 · 0/4
Rate limiting posture: 3/3
4.3 · 3/3
×
Stated agent policy: 0/2
How to fixPro
4.4 · 0/2

DTrust Signals

Return policy, merchant verifiability, price history, third-party anchors. gappy.

!
Return policy machine-readable: 1/3
https://graza.co/policies/refund-policy
How to fixPro
5.1 · 1/3
!
Merchant verifiability: 1/3
How to fixPro
5.2 · 1/3
Price history signals: 2/2
5.3 · 2/2
×
Third-party trust anchors: 0/2
How to fixPro
5.4 · 0/2

EAgent-Native Content

Specs, descriptions, decision support, delivery, stability, absence of manipulation. broken.

!
Specification completeness: 2/4
sample · https://www.graza.co/products/sizzle
How to fixPro
6.1 · 2/4
!
Conversational product descriptions: 1/2
sample · https://www.graza.co/products/sizzle
How to fixPro
6.2 · 1/2
!
Decision-support metadata: 1/3
sample · https://www.graza.co/products/sizzle
How to fixPro
6.3 · 1/3
×
Delivery date transparency: 0/2
sample · https://www.graza.co/products/sizzle
How to fixPro
6.4 · 0/2
×
Price stability signals: 0/2
sample · https://www.graza.co/products/sizzle
How to fixPro
6.5 · 0/2
!
Absence of manipulation tactics: 1/2
How to fixPro
6.6 · 1/2