Home/Use Cases/ChatGPT Ads Product Feed
ChatGPT AdsOpenAIProduct Feed

Put your catalog on ChatGPT Ads with a feed built to OpenAI's own commerce schema.

ChatGPT Ads is a product-feed channel, and the feed is not a renamed Google feed: OpenAI's commerce schema has its own field names, writes price as a single string with the currency in it, and uses a free-form category path instead of Google's taxonomy. FeedGraph builds that feed from the same catalog behind your Google and Meta feeds, validates it against OpenAI's spec rather than Google's, publishes it at a hosted URL that survives ChatGPT's 14-day product expiry, and verifies that OpenAI's crawlers can actually reach your landing pages and product images. FeedGraph produces and hosts the file; you connect it in OpenAI's Ads Manager.

Join early access
How it runs

FeedGraph builds and hosts the feed. You connect it.

OpenAI’s Ads API is open to partner accounts only, so there is a handoff in the middle of this channel. Everything left of it is automatic; everything right of it is one paste into Ads Manager.

FeedGraph does this
  1. 01

    Your catalog

    Shopify sync or CSV upload — the same catalog behind your Google and Meta feeds.

  2. 02

    Mapped & validated

    Fields mapped to OpenAI’s commerce schema, then checked against OpenAI’s rules only.

  3. 03

    Hosted at a live URL

    Token-protected, always current, and refused outright if the feed would be empty.

You do this
  1. 04

    Connect it in Ads Manager

    Paste the hosted URL into OpenAI’s Ads Manager, build the campaign, and read the results there. FeedGraph does not push to ChatGPT and reads nothing back — no spend, revenue or ROAS arrives in FeedGraph for this channel.

How to

ChatGPT Ads Product Feed — step by step

01

Select ChatGPT Ads as the destination

Open the ChatGPT Ads tab in Channel feeds, or pick ChatGPT Ads in Advanced feed tools. The product selection, segments, variant rules and quality fixes are the ones already behind your Google and Meta feeds — there is no second catalog to maintain.

02

Map to OpenAI's commerce schema

FeedGraph maps your catalog onto item_id, url, image_url, group_id, price as "79.99 USD", and availability as in_stock / out_of_stock / pre_order / backorder / unknown. Your custom labels populate the ads metadata, which is what ChatGPT ad-group product filters read. Set seller_name once as an account setting — it is required by OpenAI and has no equivalent in any other schema, so nothing can infer it for you.

03

Validate against OpenAI's rules, not Google's

Each destination blocks only on the fields it itself requires. Colour, size, gender and age group are mandatory on Google apparel and optional in OpenAI's schema, so a product held out of your Google feed can be perfectly valid here. The product category is a free-form path and is deliberately not checked against the Google taxonomy.

04

Publish to a hosted URL

Serve the feed from a token-protected HTTPS URL that always reflects your current catalog. This matters: ChatGPT expires a product 14 days after it drops out of a snapshot, so a one-off CSV upload decays silently. The URL refuses to serve an empty feed, so a validation problem cannot take your whole ChatGPT catalog offline.

05

Check crawler access before you launch

FeedGraph reads your robots.txt, then fetches a real landing page and a real product image as OAI-AdsBot and OAI-SearchBot. Landing-page access is required for ad review; image access is required for the feed to be processed at all. A 403 on your image CDN stops everything, and nothing on the platform tells you why.

06

Draft your context hints

ChatGPT Ads has no keywords, so ad-group context hints are the only relevance lever there is. FeedGraph drafts them grounded in the products actually in that selection — their categories and real price range — and rejects keyword lists and delivery instructions rather than passing them through. Copy them into Ads Manager: 2 credits per run.

Field mapping

Not a renamed Google feed.

OpenAI’s commerce schema shares almost no field names with Google’s. Here is what FeedGraph actually changes, field by field — and the one thing nothing can infer.

  • iditem_idRenamed
  • linkurlRenamed
  • image_linkimage_urlRenamed
  • item_group_idgroup_idRenamed
  • price 79.99 + currency USDprice "79.99 USD"Reformatted

    One string, currency inside it — not a number and a separate column.

  • availability "in stock"availability in_stockReformatted

    in_stock · out_of_stock · pre_order · backorder · unknown

  • google_product_categoryproduct_categoryDifferent type

    A free-form “>” path, not the 5,595-node Google taxonomy — and deliberately not validated against it.

  • custom_label_0…4ads_metadataCarried

    Read by ChatGPT ad-group product filters. If your segments already drive custom labels for Google Ads, your ChatGPT targeting is already built.

  • — nothing supplies itseller_nameYou set this

    Required by OpenAI on every row, with no equivalent in the Google or Meta schema. Set it once as an account setting; FeedGraph will not quietly fall back to your brand name.

Before you launch

Three ways a live campaign serves nothing.

All three fail silently. A campaign marked active that serves nothing looks exactly like one that is merely warming up, which is why FeedGraph checks each before you start rather than after you wonder.

01

Products expire at 14 days

ChatGPT drops a product 14 days after it stops appearing in a feed snapshot. A one-off upload decays one product at a time and nothing tells you.

DAY 0DAY 14
One-off uploadHosted URL

A hosted URL reflects your live catalog on every fetch, which is the only delivery mode that stays correct on its own.

02

OpenAI’s crawlers must reach you

Two different permissions, and most people only think about the first. FeedGraph reads your robots.txt, then fetches a real landing page and a real product image as each agent.

OAI-AdsBotOAI-SearchBotrobots.txtOKOKLanding pageRequiredProduct imageRequired

A 403 on the landing page fails ad review. A 403 on your image CDN stops the whole feed being processed.

03

There are no keywords

ChatGPT Ads has none, so ad-group context hints are the entire relevance lever. An ad group without them has nothing to match a conversation against.

Keyword listsDelivery instructionsGrounded in your products

FeedGraph drafts hints from the categories and real price range of the products actually selected, and rejects the first two rather than passing them through. 2 credits per run.

Ready to try it?

FeedGraph is in early access. Apply to join and we'll onboard you personally — no credit card required.

Join early access