These checks run only when a scan treats the site as a store. They have their own sub-score and are never added to the 100, so a store and a non-store stay comparable and the category benchmarks stay valid.
Detecting a store
A scan looks for five signals. Two or more means it treats the site as a store. The report lists which fired.
Product or Offer schema on the homepagesignal
Store platform markers in the page, its scripts or its headerssignal
Product or collection URLs in the sitemapsignal
A valid UCP merchant profile at /.well-known/ucpsignal
A cart or checkout link on the homepagesignal
The sitemap signal needs a real share of the file, not one matching URL: at least 5 product or collection URLs making up 20% of a sitemap, or a child sitemap named for products. Many software sites have a /products/ section of marketing pages, and a single match would have called them stores.
Platform markers cover Shopify, WooCommerce, BigCommerce, Magento and Salesforce Commerce Cloud. We checked Shopify and Salesforce Commerce Cloud against live stores. The other three use their documented asset paths and have not been checked against a live store of their own.
Commerce readiness — 8 points
UCP endpoint4 pts
Product schema: name1 pt
Product schema: price1 pt
Product schema: availability1 pt
Product schema: image1 pt
The UCP check passes when /.well-known/ucp returns JSON with a ucp block that has a version and declares services or capabilities. The report lists the versions and capabilities it finds. A URL that answers with a web page, or with JSON of another shape, does not pass. A failed request is an absent endpoint, never a failed scan.
The product check opens one page: the first /products/ or /product/ URL in the sitemap, following one product sitemap if the sitemap is an index, or else the first product link on the homepage. It reads Product or ProductGroup schema, using the first variant to fill gaps in a ProductGroup, and the report shows the URL it checked. If no product page can be found, if robots.txt disallows the path for CitehoundBot, or if the page cannot be read, the check is reported as not assessed and left out of the total. It is never counted as a failure.
The sub-score is shown as points earned out of the points that could be assessed, so a store whose product page could not be read shows a total out of 4.
Not scored: llms.txt authorship
For a store, the report also shows what the llms.txt checker finds: whether the file looks like a platform default, custom or unclear. It is a pattern match on the text and is never scored.
How a scan treats your site
The product page is the only page beyond the homepage that a scan reads. It is one request, made last and after a pause, with a user agent that names Citehound (CitehoundBot), and only where robots.txt allows the path. Sites that show no store signal cost no extra requests.
What this detection misses
Detection is a pattern match. On 2 October 2026 we ran the rules over the 156 reachable sites in our benchmark lists. They detected 30 of 34 DTC stores and none of the other 122 sites. The four misses had no platform markers, no product URLs in the sitemap and no cart link on the homepage. The sitemap thresholds were set after two software sites tripped the first version of the rule, so treat that result as a calibration, not an independent test.