FACT measured 20 October 2026 · n = 9,510 storefronts (8,226 Shopify)
We crawled 9,510 live storefronts and checked the same six things on every one. This is not a survey or an estimate — it is a count of what was in the HTML when we fetched it.
| Check | Pass rate | What a fail costs the store |
|---|---|---|
| Product markup | 3.6% | Google cannot read price or availability from the page |
| Offer markup | 3.9% | No price range in the results; competitors show one |
| Breadcrumb markup | 16.0% | Results show a raw URL instead of a path |
| Canonical tag | 96.9% | Most stores got this one right |
| Open Graph tags | 92.4% | Social previews work for most stores |
| FAQ markup | 3.2% | No FAQ eligibility in results |
Rates use 9,510 as the denominator. Shopify-only product markup is 3.9% of 8,226 stores. INFERENCE The cost column reasons from how results render; it is not a measured revenue figure.
Product markup is the only check here that changes what a shopper sees before they click. Without it, Google cannot show a price, a stock state, or a rating under the listing. The page still ranks on its text — it just loses the line that answers "how much".
Canonical tags sit at 96.9% and Open Graph at 92.4%. Those are solved problems. Product markup is not, and it is the one with a visible cost.
View the source of one product page and search for application/ld+json. If no block contains
"@type": "Product", the markup is missing. If one does, check it carries offers.price and
availability — a Product block without those still fails.
Every report ranks ten issues by what they cost, shows the page we fetched as evidence, and gives the exact snippet to paste. The US$59 Quick Audit is a 7-page PDF delivered within 24 hours. A full ten-issue sample is published at seoscanaudit.com/sample-59.
Fetched 20 October 2026 from a list of 10,514 domains; 9,510 returned a parseable storefront. Every rate on this page is a count over those 9,510 rows. Full tables, including the Klaviyo and price-band cuts, are at seoscanaudit.com/benchmark.
Labels: FACT measured in our crawl · INFERENCE reasoning from the data, not measured.