Most writing on agent-ready product feeds is a checklist. Checklists are easy to write and hard to trust, because they never tell you which items actually move the needle and which are theater. So we stopped theorizing and ran the pipeline: we took a representative mid-size catalog, made it agent-ready in stages, pointed ad automation at it, and watched what happened — including the parts that broke.
This is the write-up. What we ran, what actually improved AI-surfaced visibility and catalog-ad performance, and the three failures that cost us placement. It is the first-hand companion to the pillar — for the framework behind it, see Agent-Ready Product Feeds: The 2026 Playbook for Selling to AI Buyers, and for the step-by-step, the hands-on setup guide.
The test setup
We wanted the test to resemble a real store, not a clean-room demo:
- Catalog: ~2,000 SKUs across apparel, accessories, and home goods — the kind of mixed catalog where identifier hygiene and variant structure actually matter.
- Starting state: a typical "we have a Google feed" baseline — connectors live, but ~40% of SKUs missing GTINs, thin marketing-copy descriptions, no consistent variant grouping, and a nightly (not real-time) inventory sync.
- Channels: Google Merchant Center (paid Shopping/PMax + Gemini/AI Mode surfacing), Meta Advantage+, and the OpenAI Merchant Program feed for ChatGPT Shopping.
- Automation: an AI ad agent running the audit-fix-syndicate-monitor loop and buying the catalog media off the resulting feed.
- Method: we applied the fixes in stages — identifiers, then fill rate and semantic density, then variant architecture, then real-time freshness — and recorded channel eligibility and early performance after each stage, rather than changing everything at once.
What actually worked
Fixing identifiers was the single biggest unlock
Nothing else came close. Bringing GTIN coverage from ~60% to ~96% (and setting identifier_exists: false correctly on the legitimately code-less handmade items) moved roughly a third of the catalog out of the "excluded from trust layers" bucket and into eligibility for Performance Max and Gemini recommendations in one stage. This matches the platform guidance — no GTIN, no trust-layer placement — but seeing a third of the catalog light up from one fix reframed our priorities. If you do one thing, do this one.
Semantic density changed what we ranked for, not just whether we ranked
Rewriting descriptions from marketing prose to fact-dense copy (five-plus machine-parseable facts, units, materials, use cases) did something subtler than lift a single rank: it widened the set of queries we matched. A backpack described as "premium and versatile" matched almost nothing; the same SKU rewritten as "45L, padded 15-inch laptop sleeve, hydration-compatible, 1,200D ripstop" started appearing for specific long-tail shopping intents. The lesson: density is not about ranking higher for your head term, it is about becoming eligible for the hundred specific questions agents actually get asked.
Variant architecture fixed the "which one?" failure
Before we grouped variants under parent records with a consistent item_group_id, agents handled a query like "that jacket in navy, medium" poorly — they either surfaced the wrong variant or dropped the product. After grouping, the single-hop variant resolution worked. This is invisible in a feed-error count but very visible in whether an agent can actually complete the shopper's request.
Sharing one clean feed across paid and AI surfaces compounded
The payoff we did not fully expect: because the paid catalog campaigns and the AI surfaces read the same catalog, every fix paid twice. The identifier cleanup that unlocked Gemini placement also lifted Performance Max eligibility; the density rewrite that widened AI query matching also improved Shopping ad relevance. Running the feed and the campaigns as one loop — rather than a feed tool feeding a separate campaign tool — is what made the fixes compound instead of stack.
What broke
Honesty is the point of a first-hand test, so here are the three failures.
1. A stale nightly sync poisoned trust before we fixed freshness
In the window before we moved to real-time inventory, a batch of SKUs sold out mid-day and kept getting recommended by agents against a nightly-stale feed. Shoppers hit out-of-stock at the worst possible moment — after the agent had already recommended us. The platform reliability signal reacted exactly as the docs warn: those SKUs stayed down-ranked for a stretch even after we restocked and moved to a 15-minute sync. The freshness penalty is real and it is sticky. If we ran the test again, we would wire real-time sync first, not last.
2. Feed "warnings" we ignored were quietly costing eligibility
We initially triaged only hard errors in Merchant Center Diagnostics and left warnings for later. That was a mistake — several warning-level issues (missing recommended attributes, soft policy flags) were suppressing SKUs from the richer AI-surfaced placements even though they technically "passed." Warnings are not optional polish; treat them as down-rank signals and clear them.
3. One-size feed submission underperformed per-channel tuning
Our first pass pushed a single generic feed everywhere. ChatGPT Shopping, which leans on conversational descriptions, FAQ-style data, and review signals, visibly underperformed until we tailored the feed to what that surface rewards. A generic submission is a real placement tax versus a lightly tailored one — the same clean catalog, tuned per channel, not rebuilt.
Reading the reliability signal in practice
The reliability penalty is the least-understood part of agentic commerce, so it is worth being concrete about how it shows up. You do not get a dashboard labeled "your trust score." What you see are second-order symptoms:
- A restocked SKU that stays quiet. After the sold-out episode, several SKUs we restocked did not immediately return to the AI-surfaced placements they'd held before. Impressions on those items stayed suppressed for days after the data was correct — the tell that a reliability penalty was still working through.
- Eligibility that passes but placement that doesn't materialize. A SKU can clear Diagnostics (no errors) and still not surface, because "eligible" and "trusted enough to recommend" are different thresholds. That gap is the reliability signal talking.
- Recovery that tracks consistency, not a single fix. The SKUs recovered as we demonstrated sustained accurate availability, not the moment we flipped one setting. Consistency over time is what the platforms reward.
The practical implication: instrument for it. We watched restored-SKU impression recovery and out-of-stock recommendation rate as leading indicators, alongside GA4 referral segments for chatgpt.com and perplexity.ai, rather than waiting for revenue to tell us something was wrong. If you cannot see the penalty forming, you cannot sequence around it — which is the whole argument for wiring freshness first.
What we would tell a team starting today
- Sequence for the trust penalty. Do identifiers and real-time freshness early. They are the two fixes whose absence carries a lasting cost, not just a missed impression.
- Clear warnings, not just errors. The Diagnostics warnings are eligibility signals in disguise.
- Rewrite for facts, per surface. Density widens your query surface; light per-channel tuning captures the placements a generic feed leaves on the table.
- Run it as one loop. The biggest structural win was the feed and the campaigns sharing one source of truth, so fixes compounded across paid and AI channels. This is exactly the loop an AI ad agent runs — and why it beat the tool-assembly approaches in our ranking.
The headline for an ad team: agent-ready is not a content project you finish, it is an operating loop you run. The catalog changes every day, and every channel keeps score. The teams that treat it as continuous automation — audit, fix, syndicate, monitor, repeat — are the ones whose products keep showing up when an agent goes shopping.
Where to go next
- New to the concept? What Agent-Ready Product Feeds Mean for AI Marketers.
- Ready to build it? Agent-Ready Product Feeds: A Hands-On Setup Guide for Meta and Google Ads.
- Choosing an approach? Agent-Ready Product Feeds vs the Alternatives, Ranked by Setup Time.
- The full map: Agent-Ready Product Feeds: The 2026 Playbook for Selling to AI Buyers.
FAQ
Are these results guaranteed on my catalog?
No — they are from our staged test on a ~2,000-SKU mixed catalog and are directional. Your starting hygiene, category, and channel mix will change the magnitude. The sequence of what mattered (identifiers and freshness first) is the transferable lesson.
What was the highest-ROI fix?
Identifiers, decisively — bringing GTIN coverage to ~96% moved roughly a third of the catalog into trust-layer eligibility from a single stage.
Why did freshness break things if we fixed it eventually?
Because the platform reliability penalty for out-of-stock mismatches persists after you fix the data. Wiring real-time sync early avoids incurring a penalty you then have to wait out.
Do I need an AI agent to get these results?
No, but the compounding effect — fixes paying off across both paid and AI surfaces at once — came from running the feed and campaigns as one loop. Doing that by hand across three channels at 2,000 SKUs is where most teams stall.










