Fama · Customer Education · Article

The Shelf Audit: Your Product Page Through AI Eyes

Machines now read your product page and repeat what they extracted to your next customer. Here’s the audit you can run by hand, today, in about an hour.


August 3, 2026 · 9 min read
Share

There’s a field in our shelf-audit code that will never contain a score.

We built a system that reads a brand’s Amazon listing and grades it — images, description, reviews, the works. Three scoring axes. Axis two is “in-image text”: all the claims brands print inside their gallery images. And axis two is hardcoded to return not assessed, every single time, with this reason attached:

“In-image text legibility requires OCR / vision analysis of the image pixels. The marketplace data source returns image URLs only, so this axis is not assessed — never estimated.”

Our code refuses to guess what’s inside your product images, because it literally cannot see them. Here’s the part that should bother you: most of the machine pipelines reading your product page right now have the same blindness — and none of their outputs come with that disclaimer.

Your PDP has two readers now. Humans, who see the whole page. And models, which see whatever they managed to extract — and then summarize you to buyers who may never visit the page at all. This piece is the audit for the second reader. No tools, no vendor. A browser and about an hour.

What extraction failure actually looks like

We keep a demo brand called Paleo Pro for exactly this purpose — real brand, real data, sanctioned for public use. In a fresh run this July, we asked GPT-4o, Claude and Gemini the same questions about it. Fidelity scores — how close each engine’s picture is to the truth — came back 36, 20, and 32 out of 100. The engines agreed with each other 28% of the time.

The row that tells you everything is the founder question. Asked who founded Paleo Pro:

01
GPT-4o

Invented a name — "Collin Adams," a person who does not exist.

02
Claude

Said it didn’t have specific information.

03
Gemini

Got it right: Doug Smith.

One question, three answers — a lie, a shrug, and the truth.

That’s the mechanism you’re auditing for. When a model can’t extract a fact about your product, it doesn’t leave a polite blank. It either omits you from the answer or fills the gap from the category average. Both are losses, and the second one wears your name.

(That’s a snapshot of what engines get wrong today, measured on one brand — not a trend, and not a promise that fixing your page moves those numbers. Nobody has honestly measured that lift yet, including us.)

When a model can’t extract a fact about your product, it doesn’t leave a polite blank. It either omits you from the answer or fills the gap from the category average.


Interview the engines about the product

Open two or three AI assistants and ask about your product, not your brand story. Write down three lists: what they got wrong, what they left out, what they invented. Twenty minutes.

The copy-paste test

Open your PDP. Select the entire page. Paste it into a plain text editor. Whatever survived is your machine-legible product.

View source

Right-click, view page source, search for application/ld+json. Free validators will parse your page in seconds. Ten minutes, pass or fail per item.

Check the doors

Open your robots.txt and read it — actually read it. Engines can only extract from pages their crawlers can reach.

The shelf you rent

Grade your Amazon listing the way any machine reader gets to: gallery image count, whether a video exists, whether a real description exists. Date what you observe.

Pass one: interview the engines about the product

Open two or three AI assistants — mix a pure model with a search-grounded one, because they fail differently. Ask about your product, not your brand story: what’s in it, what it costs, who it’s for, how it compares to the thing next to it on the shelf. The buyer-intent shapes matter most — in our measurement pipeline the coverage set is built from exactly these: alternatives, how-to, definitional, comparison. “Is [product] good for [use case].” “[Product] vs [shelf neighbor].” “Best [category] for [buyer].”

Write down three lists: what they got wrong, what they left out, what they invented. Twenty minutes. That’s your gap list, and everything after this pass is diagnosis of why those gaps exist.

Pass two: the copy-paste test

This is the one I’d run first if you only run one.

Open your PDP. Select the entire page. Paste it into a plain text editor.

On the page a human seesIn the text a machine keeps
The ingredient panel you shipped as a graphicPresentNot reliably there
The comparison chart that’s a JPEGPresentNot reliably there
The "no seed oils" badgePresentNot reliably there
The clinical claim rendered in your brand font inside a lifestyle imagePresentNot reliably there
A claim written in selectable text on the pagePresentPresent

Whatever survived is your machine-legible product. Whatever didn’t — the ingredient panel you shipped as a graphic, the comparison chart that’s a JPEG, the “no seed oils” badge, the clinical claim rendered in your brand font inside a lifestyle image — does not reliably exist to a text-extraction pipeline. Some pipelines run vision on images; many don’t, and you don’t control which one reads you. Text in the page is the only guaranteed channel.

This is why our own auditor hard-codes that not assessed on in-image text instead of estimating. We’d rather report a blind spot than invent a score. The machines summarizing you to buyers make the opposite choice: they don’t flag what they couldn’t read — they just answer without it.

CPG pages fail this test constantly, because the highest-stakes claims are exactly the ones designers move into imagery. If a claim matters, it lives in selectable text somewhere on the page — the image can keep it too, but the image can’t be its only home.

If a claim matters, it lives in selectable text somewhere on the page — the image can keep it too, but the image can’t be its only home.

Pass three: view source

Right-click, view page source, search for application/ld+json. This is your structured data — the machine-readable layer where you state facts about your product in a vocabulary engines parse without guessing.

What to check, in order of value:

Your product markup should exist at all ("@type": "Product"), and it should carry an offers block with a real price. Price is a fact engines want and constantly get wrong from prose. Our own site auditor flags a Product block with no offer price as a gap — it’s one of the most common ones we see.

Your organization markup should carry sameAs links — your Wikipedia or Wikidata entry if one exists, your social profiles. This is entity resolution: how an engine confirms that the “Acme” on this page is the same Acme it read about elsewhere, instead of treating you as a stranger with a familiar name.

And one rule we hold on the generation side that you should hold too: only emit what’s true and sourced. Our schema generator deliberately omits the availability field — we have no truthful inventory source, and marking everything “in stock” forever would be a fabricated fact in machine-readable form. Structured data that lies is worse than structured data that’s missing, because you’ve now certified the lie in the format machines trust most.

Free validators (Google’s Rich Results test, validator.schema.org) will parse your page in seconds. Ten minutes, pass or fail per item.

Pass four: check the doors

Engines can only extract from pages their crawlers can reach. Open yourdomain.com/robots.txt and read it — actually read it.

Here’s the subtlety that justifies the pass: OpenAI alone runs distinct crawlers for distinct jobs. GPTBot gathers training data. ChatGPT-User fetches pages live when ChatGPT browses to answer a question — the citation path. They’re separate user-agents, and plenty of robots.txt files, on advice from a 2023-era panic, block one, both, or neither without anyone deciding on purpose. When we built this check into our audit engine, the design note said it plainly: a brand can be invisible to ChatGPT’s answers while everything else looks green. The bots worth checking by name: GPTBot, ChatGPT-User, PerplexityBot, ClaudeBot, anthropic-ai, Google-Extended, Bingbot.

While you’re there: if you publish an llms.txt (a plain-text site guide for AI readers), know that an empty gesture doesn’t count — the spec’s floor is a real heading, at least one link, and enough substance to actually orient a reader. We validate exactly that structurally, because “the file exists” and “the file is usable” are different claims.

Pass five: the shelf you rent

Everything above was your owned page. Your Amazon listing is a PDP too — one you rent — and it has a published bar you can grade against for free: Amazon’s own retail-readiness checklist. The floor it names for recommendation-worthiness is 3.5+ stars and 15+ reviews. Not a consultant’s rubric — the retailer’s own printed standard. Below that floor, listing polish is not your first problem.

Then grade the observables the way our auditor does, because they’re the same signals any machine reader gets: gallery image count, whether a video exists, whether a real description exists and how substantial it is, how many structured spec sections the listing carries. Date what you observe — a single look is a snapshot, and a snapshot never supports a trend claim, however tempting the story.

And refuse the fake numbers while you’re there. There’s a stat the listing-optimization industry loves — “the Buy Box drives 82% of sales” — that has no primary Amazon source anyone can produce. We looked, because we wanted to print it. We don’t print it. Grade what’s public; say what isn’t.


What the machines actually reward

So you’ve found the gaps. What does fixing them look like?

The best public evidence on what makes content citable to AI engines is the GEO study out of Princeton (KDD 2024). The headline effects, in the study’s terms: adding source citations boosted visibility in generated answers by around 40%, adding statistics by around 37%, adding quotations by around 30%. Keyword stuffing measured negative. Read that list again — it’s the opposite of how most PDP copy is written. Adjective-dense, source-free, keyword-loaded copy is optimized for a 2015 reader that no longer decides your distribution.

We rebuilt our remediation engine around those findings — the fix blocks it generates have shapes like answer-first FAQ, self-contained answer, statistic-with-citation. But here’s the tension I’d rather name than hide: we hold our own Princeton-weighted scoring back until it has been retested against current engine behavior, because a 2024 study’s coefficients are a starting point and engines drift. Treat the direction as durable and the decimal points as weather. Anyone selling you exact citation-probability scores is selling confidence, not measurement.

The honest limit underneath all of it: an outside-in audit can’t see everything. You can’t read the engines’ retrieval internals, your sampled checks aren’t the platform’s own numbers, and next month’s model update reshuffles some of it. The audit doesn’t make you certain. It makes you not blind — which is the actual alternative on offer.

Structured data that lies is worse than structured data that’s missing, because you’ve now certified the lie in the format machines trust most.

The Monday list

Four fixes, all inside your control this week. Move every claim that currently lives only inside an image into selectable text on the page. Add the missing facts to your structured data — price first — and delete anything in there you can’t keep true. Open both OpenAI doors in robots.txt, on purpose, whichever way you decide. And rewrite your PDP’s first paragraph as the answer you’d want an engine to quote verbatim — self-contained, specific, sourced — because that’s increasingly what happens to first paragraphs.

Then re-run pass one in a month and see what moved. No guarantees — we won’t claim a lift we haven’t measured, and you shouldn’t accept one from anybody. But there’s a wide gap between guaranteed and blind.

Our code marks what it can’t see and refuses to guess. The machines reading your product page were built the other way: they answer with whatever survived extraction, no disclaimer attached. You can’t change how they read. You can change what’s there when they do.

Where our own work stands, so nothing above reads as more than it is: the crawlability and AI-readiness checks described here, and the remediation playbook behind them, run in our product today. The Amazon shelf-audit machinery is built and runs on our side of the glass, not as something a customer can click. The Princeton-weighted scoring is built and switched off by default until it has been retested against current engine behavior. The audit in this piece needs none of it — it is yours to run by hand.

The machine-readable half, checked for you

Passes three and four of this audit — your structured data, and which AI crawlers your site actually lets in — are checks our visibility product runs and explains.

See how it works

Which AI crawlers should I check by name in my robots.txt?

GPTBot, ChatGPT-User, PerplexityBot, ClaudeBot, anthropic-ai, Google-Extended and Bingbot. GPTBot gathers training data and ChatGPT-User fetches pages live when ChatGPT browses to answer a question, so they are separate user-agents doing different jobs — which is how a brand ends up invisible to ChatGPT’s answers while everything else looks green.

Can I test my robots.txt by pretending to be a crawler?

No. Modern bot-management layers verify real crawlers by IP range, so a fake-GPTBot probe from your laptop will report “blocked” on exactly the well-defended sites where it’s least true. Read the policy file; don’t trust the costume.

Does publishing an llms.txt file count on its own?

An empty gesture doesn’t count. The spec’s floor is a real heading, at least one link, and enough substance to actually orient a reader — “the file exists” and “the file is usable” are different claims.

Will fixing my product page move the numbers?

Nobody has honestly measured that lift yet, including us. Re-run pass one in a month and see what moved. We won’t claim a lift we haven’t measured, and you shouldn’t accept one from anybody — but there’s a wide gap between guaranteed and blind.

See your brand

See how the audit works

Free, across the six major AI engines — what they say about you, where they’re wrong, and where competitors show up instead. A Brand IQ score in a few minutes. No account.

See how the audit works