Shelfable
Back to Research & Playbooks
Practitioner Playbook

One Storefront vs. Seven Surfaces

Shelfable·July 21, 2026·11 min read
Read on Substack
One Storefront vs. Seven Surfaces

Good ideas travel faster when you share them; forward this to someone who’d find it useful.

The previous piece opened with a parent typing “personalized storybook with my kid’s name, need it by august 1” into Google. Four sponsored ads filled the screen. Picolo Tales — the small storefront that piece was about — was not one of them.

That parent still exists. On July 10, 2026, they’d still see the same four ads. Below them, the same incumbents — Wonderbly, I See Me, Hooray Heroes — still own every organic slot, every AI answer, every Reddit thread.

This piece is what happened over the ten days that followed, when we did the eligibility work the previous article described — feed submission, field-level fixes, six Conversational Attributes, everything short of paid ads — on one real storefront. Every number here traces to a screenshot, an export, or a dated audit record. Where something is a zero, we’ve printed the zero.

The point, stated first

A merchant fixing their Merchant Center feed isn’t “improving Shopping.” They’re becoming eligible for AI answers, standardizing how their products get read, and building one data layer that several Google surfaces read from at once. Closer to shipping schema for commerce than to setting up an ad account.

That was the claim. This is what it looked like in practice.


The starting line

July 10, 2026 is the confirmed baseline: zero citations for Picolo Tales, on every surface measured. Everything below is measured against that zero.

Everything below is measured against that zero.

Methodology. Storefront: Picolo Tales. Intervention window: July 10–20, 2026. Surfaces audited: seven Google surfaces plus ChatGPT, Perplexity, and Reddit for baseline. Queries: 16 buyer-intent, fixed.

Environment: incognito, fresh profile. AI Mode before/after checks were single-query, outside the locked protocol.

Excluded from scope: paid Shopping / Performance Max. Attribution limitation: see “What this doesn’t prove,” below.


The scorecard

Where each of the seven surfaces stands after the work below:

One surface eligible. Three moving or planned. One verified non-surface. One deliberately out of scope. One waiting on the next clean read. The rest of this piece walks each one — but first, the sequence we ran to get here.

The playbook we ran

Three calls, in order.

Foundation before feed. Product-page architecture, schema, and Search Console confirmation before submitting anything to Merchant Center. A feed pointing at pages Google hasn’t crawled just wastes the eligibility window.

Feed, then audit. Submit the feed, then audit it field by field rather than trusting the approval banner.

Attributes last. Layer the Conversational Attributes as a supplemental feed only after the primary feed is clean.

The specific bugs will differ on every storefront. Eligibility-before-enrichment won’t. The next several sections walk each surface through that sequence: what was there at baseline, what changed, what moved.


Free Listings — from ineligible to approved

The site had no per-product URLs, no schema, a domain-canonical mess. Google’s own automated crawl — the “Found by Google” data source, which reads structured data straight off a site — found zero products on picolotales.com. Nothing to auto-discover. Manual feed submission wasn’t optional; it was the only path.

The feed went live and got approved with free listings enabled. Paid Shopping deliberately left unset up. A field-by-field audit found three problems:

  1. The digital SKU was missing entirely — a policy wall, not an oversight. More on this below.

  2. A category mismatch with a simple root cause. One product had an explicit Google product category. The other’s was blank, so Google auto-assigned a mismatched one. Both now explicitly set to Baby & Toddler.

  3. Both products’ links pointed to the homepage, not their dedicated product pages. Fixed.

On top of the corrected primary feed, a supplemental feed added the six Conversational Attributes:

The first upload was blocked by a column-header format mismatch, fixed to match Google’s flat-file spec. Separately, the primary feed’s age range was corrected to “Toddler (1–5)” in both the live listing and the source file, so a re-upload won’t silently revert it.


The finding worth the whole exercise

Google’s Shopping ads policy explicitly lists digital books and eBooks as unsupported content. The same instant-digital format works on ChatGPT and Perplexity. Google Shopping blocks it entirely for this format.

Not a bug in the feed. A platform rule.

The same SKU can be eligible on one platform and categorically excluded on another. No amount of feed cleanup changes that. It’s a constraint to design around, not a problem to fix — and it’s why a surface-by-surface map matters more than any single “AI visibility score.”

AI Mode — narrow, real movement

Three queries, run incognito, before and after the feed work:

This is a before/after on one storefront, with other changes shipped in the same window — product pages, schema, blog content. Single-query checks, not the locked 16-query protocol. Directional, not proof.

What can be said: after the Merchant Center fixes, schema, and content shipped together, branded AI Mode responses moved from citing scraped social mentions to citing picolotales.com directly with correct pricing. That held for branded queries. It did not extend to unbranded, category-level queries — those stayed gated on the incumbent hierarchy the framework piece described. Narrow and real. Not a platform-wide fix.


The surface that resolved brand ambiguity first — call it the brand-collision problem

There’s another children’s book brand — piccolotales.com — with a double-C. Traditional print storybooks for ages 3–8. Older, established, no relation to personalized AI-generated books. Similar name, different product. Call it the brand-collision problem: two brands close enough in name and category that search systems have to decide who’s who. Any new brand launching into an existing name-space runs this tax — the smaller and newer brand pays it regardless of who’s technically at fault.

Pre-fix, Google AI Mode was confusing the two. It cited social mentions and returned results that mixed both brands under the same name. Post-fix, AI Mode correctly names Picolo Tales, cites picolotales.com directly, and gets the pricing right on branded queries.

Google Search hasn’t disambiguated the two yet. It’s still ranking picolotales.com on page 1 for “piccolo tales” queries — sending traditional-book searchers to an AI-personalization service.

Same brand-collision problem, two surfaces, different resolution speed. After the Merchant Center, schema, and content changes shipped together, AI Mode got the disambiguation right. Google Search is still working through the same signals but on a slower timescale — its ranking algorithm weights authority and history differently. This is the seven-surfaces-reading-one-feed framework in action: the same data update didn’t move all surfaces at the same pace. The surface built explicitly around Merchant Center moved first.


What this doesn’t prove

Worth stating plainly, because it prevents the wrong conclusion.

This case study does not prove Merchant Center causes AI visibility. It shows something narrower and more useful: cleaning commerce data can remove eligibility barriers, improve how AI systems structurally understand a merchant, and create the conditions under which AI surfaces have cleaner structured signals to identify and cite the storefront. Which of feed vs. schema vs. content vs. some Google backend change was the decisive input on any given query — this audit can’t isolate.

What it can say: the direction and timing line up with the framework. Nothing here needs the strong causal claim to be interesting.

Organic Search — moving, with real growth to show

Latest read, May 21–Jul 18: 7 clicks, 157 impressions, 4% CTR, average position 11. Up from average position 17 (page 2) at the prior read.

Indexed pages: 2 → 9 over the audit window. A 4.5x increase.

That’s the good news. Now the harder part.

The top query is a different brand. “Piccolo tales” (double-C) is that separate publisher at piccolotales.com. Picolo Tales ranks on page 1 for it — 28 impressions, 2 clicks, average position 7.6. Impressive technically: a two-month-old product page holding a top-10 slot against an older brand’s namesake query. But those searchers aren’t looking for what this site sells — they’ll bounce.

The correctly-spelled brand — "picolo tales," single-C — doesn't appear in the top 10 queries at all. Position 11 across the site is real, and mechanically it's progress. But a good chunk of it is progress on someone else's brand traffic.

Rule of thumb, worth taking away: if your correctly-spelled brand isn’t in the top 10 of your GSC top-queries report, you don’t have brand demand yet. What you have is adjacency traffic. Treat early wins on adjacency as mechanical progress, not product-market fit.

The indexing ceiling, more honestly. Google knows about 29 URLs on the domain and has indexed 9. Of the 20 not indexed, 8 are Google correctly excluding non-indexable content (redirects, 404s, canonical duplicates) — working as intended. The real gap is the other 12: pages Google could index but hasn’t yet. Real ratio: 9 of 21 — just under half. Direction positive, absolute state still early.

Traffic signal, users by source, 30-day comparison in GA4 (a longer window than the ten-day intervention, on purpose — the point is trend, not attribution):

Small numbers, honest numbers, moving in one direction. At this scale, this is the existence proof phase: signals appearing, sample sizes still far too small to judge conversion behavior.


AI Overviews — waiting on the next clean read

Zero at baseline. The fixes above are exactly the inputs AI Overviews reads — site content, schema, indexing. But the honest status is not yet re-measured on the locked protocol. Publishing an optimistic guess here would undo the point of having a protocol.

Google Lens — a diagnosed misclassification

Ran the diagnostic. Lens read the product as illustration art, not as a book — similar-image results came back as Pinterest illustrations and Instagram parenting reels, with only one book anywhere in the shopping panel (an unrelated Etsy hardback).

Fixable, not a domain-authority problem. Four changes shipped: photograph the physical book at an angle so it reads as an object; hero image switched to a 3D render; personalization made visible on the cover for OCR; feed image_link aligned to match. Re-check in the next audit cycle.


Google Maps — a closed question

Google’s own Business Profile guidelines are explicit: a business with no physical location customers can visit and no in-person customer contact is ineligible for a standard Business Profile. Online-only businesses are named directly as an ineligible category. That’s the definition of Picolo Tales.

Forcing a profile onto a purely digital storefront wouldn’t be a growth move — it would be a policy violation. Maps is a non-surface — the same kind of platform constraint as the digital-books exclusion. Verified against the official guidelines. Closed.


What didn’t move — the funnel view

The zeros deserve structure, not a flat list. Four gates, one direction:

Gate 1 — Eligibility. Achieved. Feed live and approved. Free Listings eligible. Indexed pages growing (2 → 9). The technical prerequisite work is done.

Gate 2 — Branded recognition. Moving, partially. AI Mode disambiguated the brand-collision problem on branded queries and now cites picolotales.com directly. Google Search hasn’t disambiguated yet — the correctly-spelled brand still doesn’t appear in the top 10 queries.

Gate 3 — Category authority. Not moving. Unbranded queries (“personalized storybook for a 5 year old”) stayed at zero. Wonderbly, Librio, and I See Me still own the answer. This is where domain authority, reviews, and links do the work — none of which the ten-day intervention touched.

Gate 4 — Business outcomes. Zero. Conversions: zero, both periods, every channel. Revenue: zero. Merchant Center clicks: zero. This is what a project sitting between eligibility and visibility looks like — the sample size hasn’t crossed the threshold where conversion behavior even becomes measurable.

Eligibility moves first. Branded recognition second. Category-level visibility last. Only the first two have moved so far, and that’s the framework working as predicted — not something to spin.


Where this leaves things

One data layer, seven readers of it. The feed work made this storefront eligible on surfaces where it previously didn’t exist. The branded-query shift on AI Mode is the first sign of the AI layer actually reading that data — and reading it faster than Search, on the same disambiguation problem. Indexed pages 4.5x’d. And the honest gaps — unbranded visibility, conversions, brand demand — are exactly where the framework said they’d be gated: on authority, not on catalog work.

If Article 3 was right that Google is seven surfaces reading one feed, this is what the first cycle of acting on that looks like. Zeros and all.

For a merchant reading this — three concrete moves

If you’re where Picolo Tales was on July 9, here’s what the ten days after would look like on your storefront:

1. Map your surfaces by constraint type before optimizing. For every Google surface you care about, decide which of three buckets it’s in: data (feed, schema — fixable with catalog work), authority (indexing, ranking, unbranded discovery — earned over months), or policy (Maps for online-only businesses, Shopping for digital-only SKUs — not fixable, design around it). This one exercise reorders your roadmap.

2. Run Foundation → Feed → Attributes on one flagship SKU. Not the whole catalog. Just one product, all the way through: URLs and schema first, then primary feed with a field-by-field audit, then Conversational Attributes on a supplemental feed. Learn the sequence on one SKU before scaling — the bugs you catch the first time are the ones that would have cost you weeks at scale.

3. Filter your GSC top-queries report for your exact brand. If your correctly-spelled brand isn’t in the top 10, you likely don’t have measurable brand demand yet — you have adjacency traffic. That’s the real diagnosis, and it’s the one your topline “position improved” numbers will hide.


Coming later in this series: the cross-platform story. The same 16 queries tracked over time across ChatGPT, Perplexity, and Reddit — where the incumbent hierarchy, the instant-digital wedge, and the citation-decay question all live. July 10 is Day 0 of that trend line.

Thanks for reading! This post is public so feel free to share it.

Apply this research to your store

How does AI search see your store right now?

We run real category queries across ChatGPT, Perplexity, and Google AI Mode, inspect your catalog representations, and send you a plain-language report. Completely organic; we never ask for logins or ad spend.

Request your report

Two fields. A person reviews it and emails you back within 48 hours.

Please use your business email — free inboxes can’t be verified.
By requesting, you agree we may email your report and one follow-up. Nothing else. See our privacy note.
Explore all 16 research playbooks