Skip to main content

GUIDE № 11 · TITLES

The Product-Title Format Shopify Stores Are Getting Wrong (and Why ChatGPT Skips Them)

8 min read · Guide 11 of 17

AI assistants pick products by matching buyer queries against product titles before anything else. If your titles read like marketing ("The Dreamcatcher"), your products are invisible — no matter how good your pricing or reviews are.

There's a specific title format that Merchant Center (and by extension, ChatGPT Shopping) uses to decide which products match which queries. Most Shopify stores don't follow it, which is why their products don't show up when shoppers ask an AI for recommendations. Here's the format and how to fix your titles in an afternoon.

The format AI engines use

The format is simple and strict:

[Brand] [Product Type] [Key Attribute] [Variant] [Size]

A good title following this pattern looks like this:

NutriPure Whey Isolate Protein Powder Vanilla 2lb

Every slot is doing work. NutriPure is the brand. Whey Isolate Protein Powder is the product type. Vanilla is the variant. 2lb is the size. A shopper asking "whey isolate vanilla 2lb under $40" matches every token in that title — the AI has something concrete to score against.

Compare that to a title like The Dreamcatcher or Midnight Rhapsody. Those are product names, not product descriptions. No shopper types "midnight rhapsody" into an AI assistant. They type "vanilla whey protein 2lb." If your title doesn't contain the words the shopper is using, the AI has nothing to match on and your product doesn't surface.

Why this format ranks products

The format isn't arbitrary — it mirrors how Google Merchant Center and Microsoft Merchant Center expect product feeds to be structured. Google's Merchant Center docs recommend brand + product type + key distinguishing features (one or two of them); Microsoft's spec is similar. The [Brand] [Product Type] [Attribute] [Variant] [Size] shape we use throughout this guide is a practical rendering of those recommendations, not a tokenized strict pattern published by either vendor.

That matters for AI shopping in a specific way. As of mid-2026, ChatGPT Shopping pulls product cards from multiple sources — Microsoft Merchant Center via Bing, direct integrations with Shopify and Etsy, and OpenAI's own merchant feeds. The Merchant Center title format is the most widely-honored convention across these sources, so titles written for it tend to surface across the broadest set of AI assistants. Google's AI Overviews and Gemini shopping surfaces pull from Google Merchant Center on top of the same convention.

On the ranking side, the title is the highest-weighted relevance signal we can observe. Most AI shopping engines do something similar to traditional search retrieval — they decompose your title into tokens and score overlap against the buyer's query — though no vendor has published the exact ranking algorithm. Descriptions and tags help, but they're secondary. A title with the product type, key attribute, and variant in the right order matches far more queries than a poetic product name — even if the poetic name has a beautiful description underneath.

For more on how title and description work together as a discovery layer, see the umbrella guide on product titles and descriptions for AI.

How to check your product titles

Before you rewrite anything, audit what you've got. Shopify exposes every product title as JSON at /products.json, which makes this a one-liner:

curl -s https://yourstore.com/products.json | jq '.products[] | {title, vendor}'

That prints every product title and its vendor field. Scan the list and flag any title that:

  • Doesn't contain a recognizable product type ("Dress" is fine, "Dreamcatcher" is not)
  • Leads with the brand but skips the product type entirely
  • Hides the size or variant in the description instead of the title
  • Reads like a marketing headline ("Your new favorite candle")

If you'd rather do it from the admin, here's the 5-step version:

  1. Go to Products in your Shopify admin
  2. Export all products as CSV
  3. Open the CSV and sort by the Title column
  4. Skim for titles shorter than 4 words — those are almost always missing attributes
  5. Flag any title that a shopper wouldn't type into a search box

One field worth checking while you're in /products.json: the vendor field. It can be blank on Shopify products, especially on private-label stores. If it's blank, the AI falls back to your shop name as the brand. That's fine in most cases — just don't assume vendor is always populated.

How to fix your titles

Once you've flagged the titles that need work, the fix is mechanical. You're filling in missing slots, not reinventing the product.

  1. Start with the product type. Every title needs a common noun the shopper would actually type. "Protein Powder" not "The Fuel." "Coffee Table" not "The Origin." "Linen Wrap Dress" not "The Isla." If you can't think of a product type that makes sense, open Amazon and look at how they title the same category — the product type is always there, always near the front.
  2. Add the brand in front. If your store is a single-brand store, put the brand name first. If the brand is blank in /products.json, add it to the Vendor field in the Shopify product editor so it populates.
  3. Pick one key attribute. The attribute is the thing shoppers filter on — material, flavor, style, finish. For a protein powder it's usually the protein source ("Whey Isolate"). For furniture it's the material ("Solid Oak"). For apparel it's often the fabric ("Linen"). Pick the one attribute shoppers care about most and put it after the product type.
  4. Add variant and size last. Variant is the specific flavor, color, or style — "Vanilla," "Ivory," "Walnut." Size is whatever unit applies: 2lb, 500ml, Queen, M. Put them at the end of the title, not in the description.
  5. Keep it under about 150 characters. Merchant Center truncates long titles, and Google's mobile guidance is roughly 70 characters before the title wraps in shopping cards. AI assistants render shopping cards in their own UIs and don't publish a character cap, but the safe rule is: everything load-bearing should be in the first half.

Before and after examples — same products, rewritten into the format:

Before: The Dreamcatcher
After:  NutriPure Whey Isolate Protein Powder Vanilla 2lb

Before: Midnight Rhapsody
After:  Lumen Soy Wax Candle Black Fig 8oz

Before: The Isla
After:  Wren & Ash Linen Wrap Dress Ivory M

If you're using variants in Shopify (multiple sizes or colors under a single product), the base title should cover brand, product type, and attribute — then each Shopify variant handles its own size or color combination. Shopify concatenates the variant option values into the feed title automatically for Google and Microsoft, so you don't need to hard-code every combination.

While you're in the title, don't forget the identifier. AI engines use GTIN and barcode fields to disambiguate products across retailers. If yours are blank, follow the GTIN and barcodes guide — it's a Merchant Center companion fix that takes about the same amount of time as this one.

Edge cases: apparel, private-label, and international

Apparel and fashion. The strict [Brand] [Type] [Attribute] [Variant] [Size] format reads unnatural in fashion. For apparel, we recommend an em-dash separator before the color/size suffix — for example, Linen Wrap Dress — Ivory. It scans cleanly in shopping cards and matches the convention most direct-to-consumer brands have settled on. Size is usually handled at the variant level (S/M/L) rather than in the base title. The important part — brand, product type, material, color — is still there, just formatted for how fashion shoppers scan.

Private-label stores with a blank vendor. If you built your own brand and the vendor field is empty in /products.json, the AI falls back to your shop name. That's usually what you want on a single-brand store. Fill in Vendor anyway for clarity — it costs nothing and removes ambiguity from the feed.

International brands and non-Latin scripts. Accented characters and non-Latin scripts can break naive matching when the AI tokenizes the query. A title with Café won't always match a query for cafe unless the matcher normalizes Unicode. You usually don't control the matcher, but you do control the title — if a shopper is likely to type the unaccented version, include it. For non-Latin scripts (Japanese, Arabic, Cyrillic), duplicate the key terms in Latin script where it makes sense for your market. It's not pretty, but it's the pragmatic fix until Unicode normalization is universal.

Verify the fix worked

After you update titles in the admin, Shopify pushes the new values to /products.json within seconds. Re-run the curl check to confirm. Then check your Merchant Center feed (Google and/or Microsoft) a few hours later — the feed sync isn't instant, but it's usually same-day. For broader context on how off-site signals like Merchant Center feeds influence AI recommendations, see off-site signals for AI recommendations.

Don't expect AI assistants to re-index overnight. Give it a week or two, then test the same queries you cared about before.

Titles are one of the highest-impact fixes for AI visibility on Shopify, and rewrites are usually mechanical once you've decided on the slot order. Run a free audit on your store →