“Invisible” often means the product cannot be used confidently for a buying question. The URL may load while price, stock, category, variant, or specifications remain ambiguous.
This 15-minute audit uses two public examples observed July 27, 2026:
- The Woobles Pierre kit: visible
Sold out, but structured offers reportedInStock - HexClad UK six-piece pot set: structured product name included
Default Title
The merchants did not sponsor this analysis.
Minute 0–2: choose one buying question
Do not audit the entire store. Choose one flagship product and one question with constraints.
Which beginner crochet kit includes video instruction,
supports left-handed learners, and is currently available?
Expected facts:
- product identity
- skill level
- included instruction
- handedness support
- current availability
- canonical product URL
This fact list prevents a technically valid page from passing when it cannot answer the shopper.
Minute 2–5: capture the public path
url='https://example.com/products/example-product'
curl -sSIL --max-redirs 10 "$url"
curl -sSL "$url" -o product.html
rg -n 'rel="canonical"|<title|<h1' product.html
Write down requested URL, final URL, status, canonical, and market. The Woobles request in our environment redirected to an en-ca product path but still returned 200. A redirect is not automatically wrong; it becomes risky when market, currency, stock, and canonical identity stop agreeing.
Fail this stage when:
- the final page is a challenge or password page
- an old product redirects to the homepage
- canonical points to another product or market unexpectedly
- critical text is absent from returned HTML
Minute 5–9: compare visible and structured facts
Locate every Product entity:
rg -n 'application/ld\+json|"@type"[[:space:]]*:[[:space:]]*"Product|availability|priceCurrency|sku' product.html
Create a six-field comparison:
| Field | Visible page | JSON-LD | Result |
|---|---|---|---|
| name | |||
| brand | |||
| selected variant | |||
| price/currency | |||
| availability | |||
| reviews |
Real failure: The Woobles
The product page communicated beginner suitability, video help, handedness support, kit contents, and finished size. Those are strong recommendation facts. But the visible sold-out state conflicted with two InStock offers, and one Product entity reported a zero aggregate while the page showed substantial review evidence.
The page is not absent. It is contradictory.
Minute 9–12: remove leaked implementation labels
Real failure: HexClad
The visible HexClad page clearly described a six-piece bundle containing three pots and three lids. The structured product name ended with Default Title.
That label comes from a Shopify product with one default variant. It should never become a customer-facing product attribute.
Search theme code and app output for:
structured_data
application/ld+json
selected_or_first_available_variant
variant.title
If the only variant title is Default Title, use the clean product name. Do not remove variant identity from genuinely multi-variant products.
Minute 12–15: choose one repair and one test
Prioritize in this order:
- wrong status, redirect, or canonical
- wrong price, currency, availability, or SKU
- wrong category, brand, or variant name
- missing compatibility or eligibility facts
- editorial improvements
For The Woobles pattern, connect Offer availability to the same Shopify variant state used by the buy button.
For the HexClad pattern, remove Default Title from public schema while preserving the SKU and £399 offer.
Shopify repair locations
Check:
Online Store→Themes→Edit code- product JSON-LD snippet or Shopify
structured_dataoutput - app embeds for SEO and reviews
- product and variant records
- typed product metafields
- market and localization settings
Always work in a duplicate theme when changing schema.
Verification
After the fix:
curl -sSL -H 'Cache-Control: no-cache' "$url" -o product-after.html
diff -u product.html product-after.html
Verify an in-stock product, a sold-out product, a simple product, and a multi-variant product. A repair that fixes one page while breaking variants is not complete.
What this can improve
The audit can improve the probability that a retrieval system identifies and describes the product correctly. It cannot force ChatGPT, Perplexity, or Google AI to recommend the store.
The useful result after 15 minutes is one evidence-backed ticket, for example:
Product page says sold out; two Product offers report InStock. Update the schema owner to read current selected-variant availability. Verify against one sold-out and one in-stock product.
Community discussion
Add to the article
Ask a technical question, share a storefront result, or challenge a conclusion with evidence.