How to write product titles and descriptions for ChatGPT

OpenAI's feed rules for product titles and descriptions, how to write for an assistant that reads meaning, before and after examples, and mistakes to avoid.

Published 9 min read

To write product titles and descriptions for ChatGPT, state facts in plain text. A title of 150 characters at most names the product and its variant; a description of 5,000 characters at most says what it is, what it is made of, who it is for and what limits it. OpenAI asks for concise, factual copy without promotional language, so drop slogans and capitals.

This guide sets out the rules OpenAI publishes, explains how to write for an assistant that reads meaning rather than keywords, shows before and after examples, and lists the mistakes that cost the most.

What the OpenAI specification requires

The OpenAI product feed specification defines every field ChatGPT reads. The ones that shape your copy are below.

FieldRule in the specificationWhat it means for your writing
titleRequired, plain text, 150 characters at most. “Product name, including the selected variant when relevant.”One line that names the product, its type and the variant (color, size)
descriptionRequired, plain text, 5,000 characters at most. “Factual product description for this item.”Facts about this item, no HTML
brandRequiredDo not rely on the title alone to carry the brand
gtin / mpnProduct identifiers; a GTIN has 8, 12, 13 or 14 digits and a valid check digitLets the product be matched to known catalogs
product_categoryA path separated by >, such as Apparel & Accessories > ShoesSays where the product belongs
material, color, sizeAttribute fieldsFacts that answer buyer questions directly
group_id, listing_has_variations, variant_dictGroup variants and describe what differs between themEach variant gets accurate copy

Two rules matter more than they look:

  • Plain text means plain text. A description pasted from a theme often carries <p>, <br> and <strong> tags. The specification asks for plain text, so HTML has to be cleaned out before delivery. Convrail strips tags from titles and descriptions when it builds the feed, and its validator flags any description that still contains them.
  • The variant belongs in the title when it matters. If a jacket comes in navy and olive, the specification describes the title as the product name “including the selected variant when relevant”. A shopper who asks for an olive jacket should see “olive” in the line ChatGPT shows.

What OpenAI’s best practices add

OpenAI’s product feed best practices go further than the specification. Three points shape the copy:

  1. Factual, not promotional. “Use concise, factual copy that helps users understand products. Plain text and bullet-style text are both acceptable.” The guide also asks merchants to avoid promotional language.
  2. Variant-specific when variants differ. Keep the title, URL, description, media, availability and price specific to each variant when they differ between variants.
  3. Richer is better, but not mandatory. OpenAI notes that descriptions and taxonomies can improve answer quality but are not required for a product to be ingested. A thin description will not block your feed; it will just give ChatGPT less to work with.

There is also a reason not to over-polish. OpenAI’s help center article on shopping with ChatGPT Search explains that product results draw on structured metadata from merchants and third parties, such as price and description, and that ChatGPT may generate simplified titles and descriptions for display. Your copy is raw material for an answer, not a finished advert. The facts in it are what survive.

Writing for an assistant that reads meaning

A search engine built on keywords rewards repeating the words people type. An assistant does something different: it reads a question in plain language (“a quiet desk fan for a small bedroom, under 40 dB”) and looks for products whose description lets it answer that question with confidence.

That changes what a good description contains. Instead of keywords, it needs the facts an assistant would have to quote to recommend the product:

  • What it is, in the words a buyer would use, not only your internal name.
  • What it is made of or its main specifications: materials, dimensions, capacity, power, weight.
  • Who it is for, and for what situation: small spaces, beginners, sensitive skin, outdoor use.
  • Its main uses, stated plainly.
  • Its constraints: sizes available, compatibility, care instructions, what it does not do.

The last point is the one most stores skip. An assistant comparing three products for a shopper needs to know which one does not fit a 30 cm shelf or does not work with a given phone. A description that states its limits is easier to recommend accurately, and less likely to produce a return.

A practical test: read your description and ask, “Could someone answer a buyer’s question from this text alone, without seeing the photos?” If the answer depends on an image, a size chart in a picture, or a badge on the product page, the information is missing from what ChatGPT reads.

Before and after: worked examples

The two products below are fictional examples, written for this guide. They show the shape of a good rewrite, not real catalog data.

Example 1: a desk lamp (fictional)

Before

  • Title: NORDIC OAK LAMP !!! BEST SELLER, FREE SHIPPING
  • Description: <p><strong>The lamp everyone is talking about!</strong></p><p>Elevate your space with our iconic design. Order now!</p>

After

  • Title: Nordic Oak LED desk lamp, walnut base, dimmable, warm white
  • Description: LED desk lamp with a solid walnut base and an adjustable aluminum arm. Three brightness levels and a warm white light suited to reading and evening work. Fits a small desk: the base is 15 cm wide. Powered by USB-C, cable included, adapter not included. The LED module is built in and cannot be replaced.

What changed:

BeforeAfterWhy it helps
All capitals, exclamation marksSentence caseReads as a product name, not a banner
“Best seller, free shipping”Type, material, feature, light colorFacts a shopper can ask about
HTML tagsPlain textMeets the specification
“Elevate your space”Dimensions, power, what is includedAn assistant can answer “will it fit?” and “what do I need?”
No limits stated“Adapter not included”, “cannot be replaced”Honest limits reduce wrong recommendations and returns

Example 2: a running jacket with variants (fictional)

Before

  • Title for every variant: Storm Runner Jacket
  • Description: Our best jacket yet. Perfect for any weather!

After

  • Title, olive, size M: Storm Runner waterproof running jacket, olive, men's M
  • Description: Lightweight waterproof running jacket with taped seams and a packable hood. Recycled polyester shell, mesh lining on the back for ventilation. Reflective details on the chest and back for running at dusk. Packs into its own chest pocket. Machine wash at 30 °C, do not tumble dry. Regular fit: size up if you wear layers underneath.

Each variant shares a group_id, the listing sets listing_has_variations, and variant_dict records what differs (color and size). The title carries the variant because the specification asks for it when relevant, and a shopper who asks for “an olive running jacket in medium” can be matched to exactly this line.

The mistakes that cost the most

MistakeWhy it hurtsFix
HTML left in descriptionsThe specification requires plain textStrip the tags before delivery
Titles over 150 charactersOver the specification’s limitKeep the name, type and variant; drop the rest
Titles in capital letters or full of symbolsReads as promotion, not as a nameSentence case, no emoji, no ”!!!”
Promotional claims (“best”, “number one”)OpenAI asks for factual copy without promotional languageReplace each claim with a checkable fact
The same title and description for every variantBest practices ask for variant-specific copy when variants differPut color, size or material in each variant’s title
Information only in imagesAn assistant reads the text fieldsWrite sizes, materials and limits into the description
A one-line descriptionDescriptions can improve answer qualityState what it is, materials, audience, uses and constraints
Missing brand, identifiers or categoryFewer signals to match and place the productFill brand, gtin or mpn, and product_category
Prices or promotions written into the copyText goes stale while the price field changesKeep prices in price and sale_price, never in the description

That last point is easy to miss. The specification has a sale_price field, which must be strictly lower than price. A description that says “now 20% off” stays in the feed after the sale ends, and contradicts the price ChatGPT shows next to it.

How Convrail helps

Writing hundreds of descriptions by hand is the bottleneck. Convrail’s feed optimization covers three parts of the job.

A completeness score from 0 to 100 for every product. A valid row earns 50 points, and each recommended field adds a fixed bonus: a GTIN or MPN (10), a product category (8), a description of 200 characters or more (6), a sale price when the product is on promotion (6), additional images (5), a rating and review count (5), described variants (5) and a return window in days (5). The actions are sorted by the points they would gain, so you start with what matters most.

AI drafts written for the feed. The rewriting assistant drafts a title under 150 characters, never in capital letters, and a plain-text description within the 5,000-character limit of the feed: what the product is, every feature and specification your listing states, who it is for, its main uses and its constraints. It reads the title, description, brand, category, variant options and main image, and only states facts it finds there, so the draft does not invent attributes the product does not have. If the AI provider is unavailable, nothing changes and the app says so.

Applied to the feed, never to your store. Rewrites go to the feed sent to ChatGPT only. Your product pages are never edited, and a catalog resync does not erase the rewrites. On WooCommerce, you read the suggestion before applying it. On Shopify, one click drafts and applies it, and the result is shown right away. For each variant, “See what is sent” shows the exact fields OpenAI receives.

The product feed then validates every row against the OpenAI specification before delivery, so a rewrite that breaks a rule is caught before it reaches OpenAI.

Where to go next

Good copy is one lever among several. The full list, from availability to reviews, is in how to get your products recommended by ChatGPT. Every field mentioned here is explained in the OpenAI product feed specification, explained. If products are missing from ChatGPT altogether, start with why your products are not showing in ChatGPT Shopping. To see whether better copy changes how often your store is named, AI search visibility tracks the buying questions you choose every week.

Checklist

  • Titles under 150 characters, plain text, in sentence case
  • Each variant’s title names its color, size or material when they differ
  • Descriptions in plain text, with no HTML tags
  • Each description states what the product is, its materials, its audience, its uses and its limits
  • No promotional claims, no prices or discounts written into the copy
  • brand, gtin or mpn, and product_category filled in
  • Information shown only in images is written into the text

Sources

Frequently asked questions

How long can a product title be in the OpenAI product feed?

150 characters at most, in plain text. OpenAI's specification describes the title as the product name, including the selected variant when relevant.

How long should a product description be for ChatGPT?

The OpenAI specification allows up to 5,000 characters of plain text. Length is not the goal: a factual description that states what the product is, what it is made of, who it is for and its constraints usually fits in a few hundred characters.

Can I use HTML or bullet points in a description sent to ChatGPT?

No HTML: the specification requires plain text. Bullet-style text is fine. OpenAI's best practices say plain text and bullet-style text are both acceptable.

Should I write product copy differently for ChatGPT than for my store?

Mostly no. OpenAI asks for concise, factual copy without promotional language, which also reads well on a product page. The difference is that every claim must be in the text: an assistant cannot read a photo caption, a size chart image or a badge.

Does rewriting my descriptions for ChatGPT change my store pages?

Not with Convrail. Its AI rewrites apply to the feed sent to ChatGPT only, your product pages never change, and a catalog resync does not erase the rewrites.

Measure the ChatGPT channel this week

Convrail starts with a Free plan, and paid plans begin with a free trial. Leave your email and we send the install link when your spot opens.

No newsletter. One email with the install link, nothing else.