1 July 2026
“After getting the app connected it only added 19 items to our Google Merchant account, out of over 250.”
Nothing reported a number. The merchant had already checked the obvious thing - every product had the sales channel enabled.
Your catalogue can be crawled, indexed and still not be understood as something anyone can buy. Paste a domain and find out - nothing to install, nothing to connect.
Reads only what your storefront already serves publicly. Floor-5 scores may appear briefly in the public Recently scanned strip / leaderboard (edge memory; no durable free-tier scan DB). Please only run this on a store you own or are authorised to check - terms.
CatalogScan viral loop foil — every chip opens a live /scorecard/{domain} from Floor-5.
ChatGPT, Gemini, Perplexity and Google's AI results answer shopping questions by reading Product structured data off your product pages - what it is, what it costs, whether it is in stock. Plenty of Shopify themes ship only company-level data. The products get crawled, and are never understood as purchasable.
| Store | Structured data on the product page | Legible to AI shopping |
|---|---|---|
| gymshark.com | No JSON-LD at all | No |
| trueclassictees.com | Organization, WebSite | No |
| deathwishcoffee.com | Organization | No |
| hellotushy.com | Product, Offer, MerchantReturnPolicy | Yes |
These are real reviews of the official Shopify sales-channel apps, with dates. Each one became a detector.
“After getting the app connected it only added 19 items to our Google Merchant account, out of over 250.”
Nothing reported a number. The merchant had already checked the obvious thing - every product had the sales channel enabled.
“The app migrated our product IDs from the localized shopify_US_ format to the new shopify_ZZ_ format.”
Google Ads treats a different ID as a brand-new product, so campaign learning reset across the whole catalogue at once. Nothing broke visibly. This is the one a single snapshot cannot ever reveal.
“The variant inflation we're seeing - 63 products to 2,200+ listings.”
Their own Pinterest rep told them a fragmented catalogue would waste budget. That is how they found out.
“It's unclear why products get rejected, just that it doesn't follow the rules. Well, what rules?!”
Rejections grouped by cause - including the ones the channel refuses to give a reason for, which we report as exactly that rather than inventing one.
“Shows as connected but doesn't really connect to shopify store.”
A connection that answers healthily while holding nothing is the dangerous kind: every badge in the chain stays green.
It reads your public catalogue, so it finds what is visible from outside: missing product types, missing images, thin descriptions, variants without SKUs, products that are entirely out of stock, and whether your product pages carry the structured data AI shopping assistants need.
It cannot see what Google Merchant Center says about you - which products are disapproved and why, whether your catalogue silently stopped syncing, or whether your product IDs were rewritten under your live campaigns. That needs access to your channel accounts.
It also will not tell you that you are missing a GTIN or an llms.txt. Shopify hides barcodes from the public endpoint and ships an llms.txt on every store, so both claims would be false on every merchant we could make them to.
Every Shopify store serves its catalogue publicly at /products.json. We read only what your storefront already gives to anyone who asks, plus one product page to check its structured data. Nothing is connected and nothing is stored.
AI shopping surfaces read Product structured data from your product pages to understand what is for sale, at what price, and whether it is in stock. Many Shopify themes ship only Organization data, so products get crawled but are never understood as purchasable. We measured four large stores and three had no Product schema at all.
Mostly. The 15 floor and ranking-spread signals are the union of what ChatGPT Shopping, Perplexity Shopping, and Google AI Mode read — about 12 catalog and structured-data signals overlap. Three signals diverge: Brand entity matters more for Perplexity, image alt-text matters more for ChatGPT Shopping, and review recency (fresh Review.datePublished / Review schema) matters more for Google AI Mode. The score is the best single number; the per-signal breakdown lets you optimize for whichever agent you care about most.
CatalogScan's homepage groups three buckets. Catalog feed: GTINs, Google product categories, metafields, structured data, pricing signals — the core identifiers agents use to pick products. Discoverability: sitemap, robots, canonical tags, JSON-LD, Open Graph. Reviews & availability: aggregate ratings, review recency, stock status, shipping windows — the secondary signals that break ties when agents rank. We already score GTIN · AggregateRating in the 70 and present review recency; this foil adds stock status · shipping windows · Google product category on the same ranking-spread scorecard (presentation, not folded into the 70).
Beyond stock status · shipping windows · Google product category (#61), CatalogScan presents three Merchant Center honesty checks on the same ranking-spread scorecard (presentation, not folded into the 70). identifier_exists must be no/false when a product truly has no GTIN · MPN · brand — leaving it unset while UPIs are missing is a common disapproval path. MPN is a manufacturer part number, not a place to park a GTIN-shaped barcode (MPN-as-GTIN). shipping_label is a short rate-group key for Merchant Center shipping settings — not free-shipping copy, dollar amounts, or delivery ETA prose. Distinct from Store Quality shippingDetails (#58) and from GTIN coverage already scored in the 70 (#51 fold-in).
Beyond #61 (stock status · shipping windows · Google product category) and #62 (identifier_exists · MPN · shipping_label), CatalogScan presents Merchant Center product_highlight on the same ranking-spread scorecard (presentation, not folded into the 70). Google says product_highlight helps customers discover product info across AI-driven surfaces like AI Mode in Search — short bulleted sentence fragments, min 2 / max 100, recommend 4–6. Describe the product itself (not promo, comparisons, links, categorization paths, or all-caps spam). Distinct from description richness already scored in the 70 and from Store Quality (#58).
Beyond #65 (product_highlight for AI Mode), CatalogScan presents Merchant Center conversational attributes on the same ranking-spread scorecard (presentation, not folded into the 70). Google says conversational attributes help AI systems and conversational agents understand product nuances across AI-driven surfaces like AI Mode in Search — optional complements to the primary product data spec. We foil question_and_answer (FAQ pairs agents can cite) and popularity_rank (percentage-of-inventory popularity). product_detail remains complementary: if you already submit description · product_highlight · product_detail, do not duplicate that data into conversational attributes. Distinct from #65 product_highlight and from Store Quality (#58). Cite https://support.google.com/merchants/answer/17085370.
Beyond #68 (question_and_answer + popularity_rank), CatalogScan presents the remaining Merchant Center conversational attributes from GMC answer/17085370 on the same ranking-spread scorecard (presentation, not folded into the 70): document_link (related PDF manuals), related_product (relationship_type · identifier_type · identifier triples), and item_group_title + variant_option (variant group title + name:value identifying properties). Optional complements for AI Mode / conversational agents — do not duplicate description · product_highlight · product_detail. Distinct from #65 product_highlight and #68 Q&A + popularity_rank. Cite https://support.google.com/merchants/answer/17085370.
Beyond #69 (conversational remainder) and #68 (question_and_answer + popularity_rank), CatalogScan presents Merchant Center lifestyle_image_link on the same ranking-spread scorecard (presentation, not folded into the 70). Google says lifestyle images showcase products in a real-world context for free listings — clothing on a model, furniture staged in a room, sets displayed together (cite https://support.google.com/merchants/answer/9103186). Submit up to 5 https URLs (JPEG · WebP · PNG · GIF · BMP · TIFF); min 600×600; no promo overlays / borders / padding. Distinct from #69 conversational remainder and #68 Q&A · popularity_rank (GMC answer/17085370), and from primary image_link / additional_image_link.
Feed apps build and submit your product feed, and they are good at it. They look at one snapshot. They cannot tell you that your product IDs were rewritten yesterday, that your catalogue silently stopped syncing, or that your product pages are invisible to AI shopping assistants.
Google Ads treats a different product ID as an entirely new product. When a channel app rewrites the ID format across your catalogue, campaign learning resets on every item at once, and nothing in the interface tells you it happened.
Open the app host at app.catalogsentry.com and install through Shopify. Billing is inside Shopify: 14-day trial, then $49/mo. The public App Store listing is still in review, so the app host is the install path until that listing is live.
The trial is $0 for 14 days. After that Shopify Billing charges $49 every 30 days. There is no Polar, Lemon Squeezy, or extra card form. Cancel from Shopify admin the same way as any other app.
read_products and read_publications, so it can compare what you publish. Connecting Google Merchant Center and Meta still needs a human signup. The free audit and the Billing trial do not.
Catalog monitoring is $49/mo after, billed inside Shopify. The public listing is still in review; install from the app host meanwhile.
Catalog monitoring is $49/mo with a 14-day trial, billed inside Shopify. It tells you the day your catalogue stops matching what Google and Meta hold. The public App Store listing is still in review; install from the app host meanwhile.