# ChatGPT shopping ads: how product feed campaigns work for an online store

Source: https://gptads.ae/guides/chatgpt-shopping-ads/
Author: Ahmad Alshareefi, Big AL Consulting, Dubai
Updated: 2026-09-21. Checked against OpenAI documentation: 2026-09-21

> What people mean by ChatGPT shopping ads, how a product feed campaign actually runs for a store, feed requirements, the two week expiry and store measurement.

## The short version

Nobody at OpenAI calls this "shopping ads." That is the phrase shoppers and store owners use, carried over from other advertising platforms, for what OpenAI documents as product feed campaigns: a campaign type built from your catalogue instead of hand written ad copy. Upload your product feed once, keep it refreshing automatically, and Ads Manager turns eligible products into ads as ChatGPT conversations touch on them. OpenAI states ads created from product feeds have been among the strongest performing ads in its programme to date, which is the platform owner's own claim about its own product, worth reading as a signal, not a guarantee for your store specifically.

## What a store owner needs to know before a feed technician takes over

If you run the business rather than the tech stack, three facts decide whether this is worth doing at all.

It is a different campaign type, not a settingYou choose Product feed as the campaign type when creating a campaign. It is built through the guided flow only, not the bulk upload template.
Your existing catalogue export is the starting materialWhatever export your store platform already produces for other channels is the base to check against OpenAI's feed specification, not a document you write from scratch.
It needs to stay alive on its ownItems expire after two weeks. A feed that is not set to refresh automatically will quietly stop advertising your products with no dramatic failure message.

## What a product ad actually shows

Product ads use formats built specifically for catalogue items rather than the standard title-copy-image unit. OpenAI lists product images, titles, star ratings, prices, sale prices and your brand as the elements these ads can display. The ad template you build controls the image field; titles, descriptions and prices are pulled directly from what is in your feed, so a messy product title in your store becomes a messy ad title with no separate copywriting step to fix it.

## How a product feed campaign is built, for a store

Create a feedIn Ads Manager, open Tools, then Feeds, then Create Feed.
Import your productsUpload a CSV or TXT file, point to a hosted URL, or connect over SFTP.
Let it validateProcessing takes anywhere from a few minutes to a few hours depending on catalogue size. Check Upload History for errors before moving on.
Create a campaign, type Product feedSet the objective, budget, dates and country targeting as you would for any campaign.
Build an ad group and filter your productsSelect the feed, apply filters to decide which products belong in this ad group, and check the product count Ads Manager shows you.
Build the ad templateOne per ad group. Today the template only lets you choose the image field; titles, descriptions and prices come from the feed itself.
Review and launchConfirm the feed, product count, titles, images and landing pages all look right, then submit for review.

## Feed requirements a store needs to meet

Your feed has to comply with OpenAI's published feed specification. Three items matter most for a first upload.

| Requirement | Why it matters for a store |
| --- | --- |
| Prices match the landing page | A price shown in the ad that does not match the product page erodes trust and can be flagged in review |
| Titles and descriptions are clean | The ad template pulls directly from the feed with no manual rewrite step, so whatever is in your store export is what shoppers see |
| Ads eligibility is set correctly | Feeds created in Ads Manager make products eligible by default unless an item is explicitly marked false for ads eligibility |

## The two week expiry, and why it catches stores out

Items in a product feed expire after two weeks. A store that uploads a CSV by hand once, then forgets, will watch its shopping ads quietly stop delivering with no alarm bell, since there is no dramatic failure state, only a feed that has aged out.

| Import method | Best suited to |
| --- | --- |
| CSV or TXT upload | A first test, or a small catalogue updated rarely |
| Hosted URL | Most stores, once the platform can generate a stable HTTPS feed address that refreshes itself |
| SFTP connection | Technical teams automating server to server uploads on a schedule |

For a Shopify, Salla or Zid store, this usually means using the platform's native or app based feed export, pointed at a hosted URL, rather than exporting and re-uploading a CSV by hand every fortnight.

## Grouping products into ad groups

Built in filters decide which products belong in each ad group. When those filters are not enough, for example to separate a high margin product line from a clearance line, OpenAI points to the ads_metadata field in the feed. Add a value such as a bidding tier or product line there, then filter on it during ad group setup. A simple starting split for many stores is margin tier: put higher margin lines in their own ad group with their own budget, rather than mixing every product into one undifferentiated group competing for the same spend.

## Bidding on a shopping campaign

Maximize results is the default bid strategy for eligible new ad groups on a product feed campaign, and it adjusts bids automatically to try to get as many clicks or conversions as possible within your budget. OpenAI is explicit that this optimises for result volume, not for a guaranteed cost efficiency target. If you need a hard ceiling on what you pay per click or conversion, switch to manual bidding instead. The full mechanics of both strategies are in our [bidding strategies guide](/guides/bidding-strategies/).

## Measuring sales from a shopping campaign

A product feed campaign is measured exactly the same way as any other ChatGPT ads campaign: through the OpenAI Pixel, the Conversions API, or both. For a store, the event that matters most is a purchase event carrying the order value, not just a page view or an add to cart, since that is what lets you calculate return on spend rather than only cost per click. Install and test this before your feed campaign launches, following our [conversion tracking guide](/guides/conversion-tracking/), because a feed campaign spending without a purchase event attached leaves you unable to tell whether the products it promoted actually sold.

## Product feed campaigns against a standard campaign

Store owners weighing whether to build a feed campaign or stick with hand built ads for their bestsellers are really choosing between two different amounts of manual work.

| | Product feed campaign | Standard campaign |
| --- | --- | --- |
| Creative source | Pulled automatically from your catalogue | Written and uploaded by you, per ad |
| Scale | Suited to a full or large catalogue with frequent price or stock changes | Suited to a handful of hero offers or services |
| Ongoing effort | Keep the feed fresh and accurate; ads update themselves | Refresh copy and images yourself as offers change |
| Ad control | Limited to the image field in the template | Full control over title, copy and image on every ad |

Most stores end up running both: a feed campaign covering the catalogue broadly, alongside a small standard campaign for a seasonal push, a bestseller, or an offer that needs copy a feed cannot express, such as a bundle discount or a limited time promotion.

## The empty Products tab, explained

Store owners new to the platform often assume an empty Products tab means the feed upload failed. It usually does not. OpenAI explains that the Products tab is a reporting view, not a full inventory listing: a product only appears there once it has delivery data from an active feed campaign. If your campaign has not started, has a future start date, or has not yet delivered, an empty or partial Products tab is expected. Use the product count shown during ad group setup, not the Products tab, to confirm how many items from your feed are actually eligible.

## Common mistakes stores make with feed campaigns

Uploading a one off CSV and forgetting itItems expire after two weeks. Without a hosted feed or SFTP schedule, ads quietly stop with no clear error.
Launching without a purchase event attachedSpend accrues either way. Without value tracking, there is no way to tell which products actually converted.
Expecting feed products to appear in organic ChatGPT answersOpenAI states feed products are ads eligible only, and do not appear in organic conversations during this beta.
Treating one ad group as one catalogueGrouping every product together wastes the ability to give a high margin line, or a seasonal range, its own budget and bid.
Panicking at an empty Products tab before launchIt is a reporting view that fills in after delivery starts, not a live inventory check.

## UAE and Gulf specifics

Prices in the feed need to be in the currency and format your feed specification and your account expect, matching what the landing page actually charges, since a UAE shopper comparing a dirham price in the ad against a different figure on the page is a fast way to lose trust before a click even lands. If you run a bilingual store, decide up front whether Arabic and English product ranges sit in one feed with language variants or two separate feeds, since the ad template pulls titles and descriptions directly from whatever feed is selected in the ad group. Confirm your platform's feed export, or an app that generates one for Shopify, Salla or Zid, refreshes on a schedule your team does not have to remember manually, and check that your hosting or CDN allows OpenAI's crawlers to reach both the feed URL and the product image URLs, since a blocked image host can quietly fail feed processing the same way a blocked landing page fails ad review. For the technically detailed, developer facing version of feed setup, see our [product feed guide](/guides/product-feed/); for a fuller store testing plan across four weeks, see [ChatGPT ads for ecommerce](/guides/chatgpt-ads-for-ecommerce/).

## Quick answers

**What are ChatGPT shopping ads?**
There is no separate product called shopping ads. The term describes product feed campaigns, a campaign type in OpenAI Ads Manager that turns your store's product catalogue into ads shown as items are discussed inside ChatGPT.

**Do my products show up organically in ChatGPT if I upload a feed?**
No. OpenAI states products from a feed are only eligible for use in ads during this beta and will not appear in organic ChatGPT conversations, though it may offer that capability in future.

**How often does my product feed need to update?**
Items expire after two weeks. OpenAI recommends a hosted URL your platform regenerates automatically, or an SFTP connection, rather than a manual file a person has to remember to reupload.

**Can I bulk upload a shopping campaign by CSV?**
No. Ads Manager CSV bulk upload does not currently support creating product feed campaigns. They are built through the guided campaign flow only.

**What does a ChatGPT shopping ad actually show?**
Product ads use a format built for catalogue items: OpenAI lists product images, titles, stars, prices, sale prices and your brand.

**How do I measure sales from a ChatGPT shopping ad?**
The same way as any other ChatGPT ads objective: install the OpenAI Pixel and the Conversions API on your store, sending a purchase event with order value, before you launch the feed campaign.

**Should a Shopify, Salla or Zid store use a hosted feed or a manual upload?**
A hosted feed URL your platform regenerates on a schedule. A manually uploaded CSV works for a first test but will silently expire after two weeks if nobody refreshes it.

## Sources

- OpenAI Help Center, Create Campaigns from Product Feeds: https://help.openai.com/en/articles/20001268-create-campaigns-from-product-feeds
- OpenAI Help Center, Ads Manager Beta Overview: https://help.openai.com/en/articles/20001206-ads-manager-beta-overview
- OpenAI Help Center, Ads in ChatGPT: The Basics: https://help.openai.com/en/articles/20001207-ads-in-chatgpt-the-basics
- OpenAI Help Center, Conversion Measurement: https://help.openai.com/en/articles/20001409-conversion-measurement
- OpenAI Help Center, Conversion-optimized Campaigns: https://help.openai.com/en/articles/20001412-conversion-optimized-campaigns
- OpenAI Help Center, Maximize Results Bid Strategy: https://help.openai.com/en/articles/20001425-maximize-results-bid-strategy
