catalogaudit

Published audit · 16 October 2026

Brooklinen

How Google Shopping and AI shopping agents read www.brooklinen.com

We read Brooklinen's storefront the way Google's crawler and agents like ChatGPT, Perplexity and Google AI Mode do — no login, no app install — and checked 25 flagship products of 437 against Merchant Center's rules and agent readability.

86
Good

Ad feed health

Google Shopping & Meta catalogs

5 of 25 sampled products have an issue that gets items disapproved or throttled in Google Shopping — roughly 87 products across the 437.

56
Needs work

AI agent readability

ChatGPT · Perplexity · Google AI Mode

5 of 25 are hard for AI shopping agents to read: key buying facts are missing or locked in prose and images — roughly 87 products catalog-wide.

Ready to use

We fixed 5 of Brooklinen's products

The lowest-scoring products from the sample, rebuilt from the store's own photos, copy and barcodes. Switch between Today and Fixed to compare, and download the payloads.

Sunwashed Stripe Duvet Set Checkout 7 problems crawlers see today, 6 fixes ready
  • Product schema is assembled by a script at runtime; the HTML a crawler downloads contains none.
  • 1 of 1 variant barcode(s) aren't valid GTINs.
  • The product has no description.
  • No material, measurements or care information in the product description or structured data — the fields feeds and agents ingest.
  • Product type is empty.
  • None of the 1 image(s) has alt text.
  • 1 purchasable variant(s) priced at 0.
Structured data on the page today
— none —
Dev Paper Bag 6 problems crawlers see today, 8 fixes ready
  • Product schema is assembled by a script at runtime; the HTML a crawler downloads contains none.
  • 2 of 2 variant barcode(s) aren't valid GTINs.
  • The product has no description.
  • No material, measurements or care information in the product description or structured data — the fields feeds and agents ingest.
  • Title is only 13 characters.
  • 2 purchasable variant(s) priced at 0.
Structured data on the page today
— none —
Classic Percale Pillowcase Set - Last Call 3 problems crawlers see today, 9 fixes ready
  • Product schema is assembled by a script at runtime; the HTML a crawler downloads contains none.
  • The product has no description.
  • No material, measurements or care information in the product description or structured data — the fields feeds and agents ingest.
Structured data on the page today
— none —
Pillow Protector Set 3 problems crawlers see today, 9 fixes ready
  • Product schema is assembled by a script at runtime; the HTML a crawler downloads contains none.
  • No material, measurements or care information in the product description or structured data — the fields feeds and agents ingest.
  • Title is only 20 characters.
Structured data on the page today
— none —
Set of 2 Comforter Bundle 2 problems crawlers see today, 9 fixes ready
  • Product schema is assembled by a script at runtime; the HTML a crawler downloads contains none.
  • 17 of 18 variant barcode(s) aren't valid GTINs.
Structured data on the page today
— none —

What we found

12 issues, 6 critical

Most severe first, with how many of the 25 sampled products each one affects.

  1. Critical

    Product structured data only appears after JavaScript runs

    Google renders it eventually, but most AI crawlers (OAI-SearchBot, PerplexityBot, ClaudeBot) don't execute JavaScript — to them the product has no structured data at all.

    How to fix Render the JSON-LD server-side in the theme's Liquid instead of injecting it with an app script, so it's in the HTML crawlers download. If an app adds it, look for a server-side output setting or switch apps.

    25/25products
  2. Critical

    No material, measurements or specs in the product data

    Agents filter on facts ("merino, under 300g, machine-washable"). With none, the product can't match those queries.

    How to fix Add the facts shoppers filter on — material, dimensions, weight, care — to the description and, better, to metafields published in the JSON-LD as additionalProperty.

    5/25products
  3. Critical

    Missing description

    Description is a required feed attribute; agents have nothing to reason over.

    How to fix Write a description that covers what the product is, what it's made of, its fit or dimensions, and who it's for.

    Ad feedAI agentsAbout this check
    3/25products
  4. Critical

    Invalid GTIN / barcode

    Merchant Center rejects invalid GTINs ("Invalid value [gtin]"); the item is disapproved until fixed.

    How to fix Correct the barcode in Shopify admin (product → variant → Barcode) to the 8-, 12-, 13- or 14-digit GTIN from the manufacturer or your GS1 record. If the product has no GTIN, clear the field rather than entering a SKU.

    3/25products
  5. Critical

    Purchasable variant priced at 0

    Zero prices are rejected as "Invalid value [price]".

    How to fix Set a real price on purchasable variants, or make free samples and gifts unavailable so they drop out of feeds.

    2/25products
  6. Critical

    No product image

    Image link is required — the item can't serve in Shopping at all.

    How to fix Add at least one product image, and point each variant to its own image.

    Ad feedAI agentsAbout this check
    1/25products
  7. Warning

    No GTIN on any variant

    Branded products without GTINs get "limited performance" in Shopping and can't be matched to the same product across sellers by agents.

    How to fix Add the manufacturer's GTIN to each variant's Barcode field. For your own brand, license GTINs from GS1; for custom or handmade items without one, submit identifier_exists = no.

    Ad feedAI agentsAbout this check
    3/25products
  8. Warning

    Specs buried in prose, not structured

    Facts exist in paragraphs but not as attributes; agents and feeds have to guess, and usually drop them.

    How to fix Move specs out of paragraphs into product metafields and publish them as additionalProperty name/value pairs in the JSON-LD.

    1/25products
  9. Warning

    Very thin description (< 150 characters)

    Short copy limits which searches the item can match in Shopping and gives agents nothing to quote.

    How to fix Expand the description past 150 characters with material, dimensions, use and care — the facts agents quote and feeds match on.

    Ad feedAI agentsAbout this check
    1/25products
  10. Warning

    No product type

    Without a product type, mapping to Google's taxonomy (and bidding by category) falls back to guesswork.

    How to fix Fill in the product type (or Shopify product category) for every product so it maps cleanly to Google's product taxonomy.

    Ad feedAI agentsAbout this check
    1/25products
  11. Info

    Very short title (< 25 characters)

    Feed titles that include brand, product type and key attribute get more impressions.

    How to fix Lengthen the feed title to brand + product type + key attribute, e.g. "Acme Women's Merino Crew Sweater – Navy".

    Ad feedAI agentsAbout this check
    9/25products
  12. Info

    Images have no alt text

    Crawlers and agents that don't run vision read nothing from the images.

    How to fix Add alt text to product images in Shopify admin, describing the product, its color and the view.

    1/25products

Product by product

25 products inspected

Scores out of 100, worst first. Open a product to see what's wrong with it.

Sunwashed Stripe Duvet Set Checkout 0 0 5 critical
  • Critical Product schema is assembled by a script at runtime; the HTML a crawler downloads contains none.
  • Critical 1 of 1 variant barcode(s) aren't valid GTINs."71919450"
  • Critical The product has no description.
  • Critical No material, measurements or care information in the product description or structured data — the fields feeds and agents ingest.
  • Critical 1 purchasable variant(s) priced at 0.Default Title
  • Warning Product type is empty.
  • Info None of the 1 image(s) has alt text.

Open product page ↗

Dev Paper Bag 7 7 5 critical
  • Critical Product schema is assembled by a script at runtime; the HTML a crawler downloads contains none.
  • Critical 2 of 2 variant barcode(s) aren't valid GTINs."84119386", "bag-2"
  • Critical The product has no description.
  • Critical No material, measurements or care information in the product description or structured data — the fields feeds and agents ingest.
  • Critical 2 purchasable variant(s) priced at 0.Blue, Brown
  • Info Title is only 13 characters.Dev Paper Bag

Open product page ↗

Super-Plush 4-Piece Bath Towel Set 46 0 3 critical
  • Critical Product schema is assembled by a script at runtime; the HTML a crawler downloads contains none.
  • Critical No material, measurements or care information in the product description or structured data — the fields feeds and agents ingest.
  • Critical No product images.
  • Warning None of the 8 variant(s) has a barcode/GTIN.
  • Warning Description is 29 characters.For Zola / Crystl Integration

Open product page ↗

Classic Percale Pillowcase Set - Last Call 70 10 3 critical
  • Critical Product schema is assembled by a script at runtime; the HTML a crawler downloads contains none.
  • Critical The product has no description.
  • Critical No material, measurements or care information in the product description or structured data — the fields feeds and agents ingest.

Open product page ↗

Pillow Protector Set 97 37 2 critical
  • Critical Product schema is assembled by a script at runtime; the HTML a crawler downloads contains none.
  • Critical No material, measurements or care information in the product description or structured data — the fields feeds and agents ingest.
  • Info Title is only 20 characters.Pillow Protector Set

Open product page ↗

Set of 2 Comforter Bundle 70 70 2 critical
  • Critical Product schema is assembled by a script at runtime; the HTML a crawler downloads contains none.
  • Critical 17 of 18 variant barcode(s) aren't valid GTINs."fill=lightweight", "73983834", "fill=all-season" (+14 more)

Open product page ↗

Modern Heritage Quilt Set 88 58 1 critical
  • Critical Product schema is assembled by a script at runtime; the HTML a crawler downloads contains none.
  • Warning None of the 4 variant(s) has a barcode/GTIN.

Open product page ↗

Bigtime Lounge Around Bundle 88 58 1 critical
  • Critical Product schema is assembled by a script at runtime; the HTML a crawler downloads contains none.
  • Warning None of the 4 variant(s) has a barcode/GTIN.

Open product page ↗

Breezeweave Crinkle Cotton Duvet Cover - Last Call 100 58 1 critical
  • Critical Product schema is assembled by a script at runtime; the HTML a crawler downloads contains none.
  • Warning Material/measurements appear only inside paragraphs of copy.

Open product page ↗

Essential Sheet Set 97 67 1 critical
  • Critical Product schema is assembled by a script at runtime; the HTML a crawler downloads contains none.
  • Info Title is only 19 characters.Essential Sheet Set

Open product page ↗

Bigtime Robe 97 67 1 critical
  • Critical Product schema is assembled by a script at runtime; the HTML a crawler downloads contains none.
  • Info Title is only 12 characters.Bigtime Robe

Open product page ↗

Dreamweave Waffle Pouch 97 67 1 critical
  • Critical Product schema is assembled by a script at runtime; the HTML a crawler downloads contains none.
  • Info Title is only 23 characters.Dreamweave Waffle Pouch

Open product page ↗

Super-Plush Slippers 97 67 1 critical
  • Critical Product schema is assembled by a script at runtime; the HTML a crawler downloads contains none.
  • Info Title is only 20 characters.Super-Plush Slippers

Open product page ↗

Pop Check Duvet Cover 97 67 1 critical
  • Critical Product schema is assembled by a script at runtime; the HTML a crawler downloads contains none.
  • Info Title is only 21 characters.Pop Check Duvet Cover

Open product page ↗

Tufted Cotton Bath Mat 97 67 1 critical
  • Critical Product schema is assembled by a script at runtime; the HTML a crawler downloads contains none.
  • Info Title is only 22 characters.Tufted Cotton Bath Mat

Open product page ↗

Linen Shower Curtain 97 67 1 critical
  • Critical Product schema is assembled by a script at runtime; the HTML a crawler downloads contains none.
  • Info Title is only 20 characters.Linen Shower Curtain

Open product page ↗

Sherpa Lumbar Pillow Cover 100 70 1 critical
  • Critical Product schema is assembled by a script at runtime; the HTML a crawler downloads contains none.

Open product page ↗

Super Fluff Throw Blanket 100 70 1 critical
  • Critical Product schema is assembled by a script at runtime; the HTML a crawler downloads contains none.

Open product page ↗

Modern Heritage Quilted Sham Set 100 70 1 critical
  • Critical Product schema is assembled by a script at runtime; the HTML a crawler downloads contains none.

Open product page ↗

Terry Bucket Hat - Last Call 100 70 1 critical
  • Critical Product schema is assembled by a script at runtime; the HTML a crawler downloads contains none.

Open product page ↗

Surfside Stripe Terry Tote - Last Call 100 70 1 critical
  • Critical Product schema is assembled by a script at runtime; the HTML a crawler downloads contains none.

Open product page ↗

Parkside Beach Blanket - Last Call 100 70 1 critical
  • Critical Product schema is assembled by a script at runtime; the HTML a crawler downloads contains none.

Open product page ↗

Down Alternative Lumbar Pillow Insert 100 70 1 critical
  • Critical Product schema is assembled by a script at runtime; the HTML a crawler downloads contains none.

Open product page ↗

Sunwashed Check Bed Blanket 100 70 1 critical
  • Critical Product schema is assembled by a script at runtime; the HTML a crawler downloads contains none.

Open product page ↗

Oxygen Bleach Alternative 100 70 1 critical
  • Critical Product schema is assembled by a script at runtime; the HTML a crawler downloads contains none.

Open product page ↗

Store-wide

Crawlers, policies and the whole catalog

Across all 437 products

Get the same report for your store

Enter your store and get both scores, every issue, and your five worst products rebuilt from your own photos and copy — free, in about a minute.

Audit your store free →

How this audit works

Everything here comes from public storefront data: /products.json, the storefront Ajax API, each product page's JSON-LD, robots.txt and policy pages. Checks follow Google Merchant Center's product data specification and schema.org's Product vocabulary — see every check. Attributes kept only in app metafields or a separate feed aren't visible publicly — for AI agents, that's the same as missing.

Product fixes were extracted by anthropic/claude-haiku-5.5 from the store's own product photos and copy, and limited to facts those establish; anything it couldn't verify is listed as not determinable rather than guessed. Sample: 25 products — homepage picks first, then spread across product types. Generated 2026-10-16T09:40:19.432Z.