← Back to glossary

Product-Level Reporting

Product-level reporting is the breakdown of advertising performance to the individual product or SKU, showing metrics like impressions, clicks, spend, and conversions for each item in your catalog instead of one blended campaign total. It differs from campaign- or ad-group-level reporting, which rolls every product into a single number and hides which specific items actually earn clicks and sales.

For a retail marketer running product-feed ads, this granularity decides where budget goes, because catalog winners and losers behave nothing alike. Without it, you keep funding products that drain spend and underfund the few SKUs quietly carrying your return on ad spend.

What is product-level reporting?

Product-level reporting measures how each item in a product-feed campaign delivers and performs, segmenting the campaign by product so every row represents a single catalog item identified by its feed ID and item ID. In OpenAI's Ads Manager you request it by adding a product segment to an Insights report and pulling fields such as product impressions, clicks, spend, and CTR.

The report is built from your product feed: each ad is assembled from catalog data, so performance attributes back to the exact item shown. Delivery and cost fields sit alongside conversion fields once a measurement pixel or the Conversions API is connected. For catalogs with multiple product cards, card-level impression and click metrics show engagement with each card separately from the billable ad click.

Product-level reporting sits one level below campaign and ad-group reporting, which aggregate every item into shared totals. It is where catalog strategy and media buying meet, since the data points directly at feed quality and bid decisions. AirOps helps teams fold this product data into broader AI-ads and content workflows so catalog performance informs what they create and promote.

How product-level reporting works

Product-level reporting runs on top of a live product-feed campaign and the Insights API that serves OpenAI Ads data. The sequence moves from catalog to query to attributed result.

  1. Upload feed: You submit a product feed that passes OpenAI's feed specifications, and approved items become eligible to serve in product ads.

  2. Serve ads: The campaign matches individual products to relevant ChatGPT conversations, and each impression and click is recorded against the specific item shown.

  3. Segment the report: You call an Insights report with a product segment, returning one row per item keyed on feed ID and item ID.

  4. Add conversions: With a measurement pixel or the Conversions API connected, OpenAI attributes conversions and sales using default windows of 30 days after a click and 1 day after a view.

  5. Compare items: You sort products by spend, CTR, or ROAS to see which items earn delivery and which drain budget.

Across these fields OpenAI exposes seven native performance metrics: impressions, clicks, spend, CTR, average CPC, average CPM, and conversions. The report tells you which products delivered and converted; it does not tell you which conversation or query triggered any single impression.

The importance of Product-Level Reporting for marketers

Catalog advertising lives or dies on which products you keep funding, and campaign totals cannot make that call for you. Product-level reporting is the evidence a retail team needs before shifting budget across a feed, because every item in that feed competes for the same conversations on its own merits.

  • Budget allocation: It shows which items return their spend and which quietly burn it, so you can move money toward the SKUs that convert and pause the ones that only generate clicks.

  • Catalog and creative decisions: Per-item clicks and CTR reveal which product titles and images actually resonate in ChatGPT conversations, which feeds directly back into your data quality, eligibility flags, and product selection.

  • The hidden-loser failure mode: Without product-level data, a healthy blended ROAS can mask a handful of items losing money on every click, and you keep paying for them because the campaign average still looks fine. By the time a monthly report surfaces the problem, the wasted spend is already gone.

Marketer use cases

  1. SEO managers use product-level reporting to find which catalog items earn clicks in ChatGPT and prioritize matching product pages for organic answer coverage.

  2. Growth marketers use product-level reporting to reallocate feed budget toward high-ROAS SKUs and cut spend on items that convert poorly.

  3. Content strategists use product-level reporting to see which product titles and descriptions drive engagement and rewrite weak listings to match.

Key concepts

Product segmentation

Product segmentation is the report setting that splits a product-feed campaign into one row per catalog item, each identified by a feed ID and item ID, so performance is attributed to the exact product instead of the campaign as a whole.

Feed and item IDs

Feed and item IDs are the stable keys that match every reported row to the exact product in your catalog, which matters because product titles can repeat or change over time while the IDs stay reliable.

Delivery and engagement

Delivery metrics such as impressions tell you how often an item was served, while engagement metrics such as clicks and CTR tell you how often shoppers acted on it, and you need both to avoid mistaking raw exposure for genuine interest.

Benefits

  • Pinpoint which catalog items earn clicks and spend inside ChatGPT Ads.

  • Reallocate budget toward high-ROAS products and away from steady losers.

  • Diagnose weak product titles and images by reading per-item CTR.

  • Surface zero-impression items so you can fix feed eligibility or exclude them.

  • Connect product delivery to attributed sales and ROAS when a pixel is live.

  • Compare product cards separately from billable ad clicks in multi-card ads.

Product-Level Reporting best practices

  • Pull product reports on a regular cadence, since OpenAI retains only about 30 days of product-level history, so trends disappear if you wait too long.

  • Always report with feed ID and item ID, because titles can duplicate and only IDs reliably map a row to the right catalog product.

  • Read delivery and engagement metrics together, so a high-impression, low-CTR item is flagged before it drains budget.

  • Include zero-impression product rows when auditing catalog coverage to find items that never serve.

  • Connect the measurement pixel and Conversions API before launch, so product reporting carries conversions and ROAS alongside clicks.

  • Use daily granularity for product trends, remembering product reports do not support hourly breakdowns.

Avoid judging products on blended campaign averages. Competent teams still ship budget to a feed based on a single healthy ROAS figure, then miss the two or three items silently eating the margin that the average hides.

Tools and technologies

AirOps: builds AI-ads and content workflows that pull ChatGPT Ads product data in so catalog performance shapes what you create and promote.

OpenAI Ads Manager and Advertiser API: the native source of product-level Insights, where you add a product segment and pull per-item impressions, clicks, spend, and CTR.

Google Ads product reporting: the comparable Shopping-campaign view of per-item performance, useful if you run catalog ads across both channels.

Getting started with Product-Level Reporting

  1. Audit your feed: This week, open your existing product feed and confirm that titles, images, IDs, and landing pages are accurate and current, since every reporting row depends on clean catalog data mapping back to a real product.

  2. Launch or confirm a product-feed campaign: Make sure approved items are actively serving in a product-feed campaign, because product-level reporting only exists for feed-based ads and needs delivery data to populate.

  3. Connect measurement: Install the OpenAI measurement pixel and the Conversions API so your product reports can carry conversions and attributed sales, giving each item a full picture beyond raw delivery.

  4. Pull a segmented report: Request an Insights report with a product segment, selecting feed ID, item ID, impressions, clicks, spend, and CTR for one clean reporting period you can compare later.

  5. Act on the outliers: Sort items by spend and ROAS, then pause the steady losers, lift budget on the products carrying your return, and schedule a repeat pull before the history expires.

Key takeaways

  • Product-level reporting breaks advertising performance down to each catalog item or SKU instead of a single blended campaign total.

  • It is produced by adding a product segment to an OpenAI Ads Insights report, keyed on feed ID and item ID.

  • Its main constraint is a short retention window and no hourly breakdown, so trends vanish if you report too infrequently.

  • The main risk is trusting a healthy blended ROAS while a few items quietly lose money on every click.

  • The leverage is reallocating budget toward proven product winners and cutting the losers the campaign average hides.

Frequently asked questions about product-level reporting

How is product-level reporting different from campaign-level reporting in ChatGPT Ads?

Product-level reporting differs from campaign-level reporting by the unit each row represents: a single catalog item versus the whole campaign. Campaign-level reporting gives you one blended set of numbers for everything serving under that campaign, which is enough to judge overall pacing and cost but blind to which specific products drive the result. Product-level reporting segments that same campaign by item, so impressions, clicks, spend, and CTR are attributed to each feed product individually. The practical difference shows up in decisions: campaign numbers tell you whether to keep a campaign running, while product numbers tell you which items inside it to fund, fix, or pause. You still need both. Campaign totals are faster to scan for daily monitoring, and product rows are where you find the winners and losers that a healthy average would otherwise bury. Reach for product-level data whenever a campaign spans more than a few items.

How often should I check product-level reporting for my ChatGPT Ads campaigns?

Check product-level reporting at least weekly for any active product-feed campaign, and daily once spend is meaningful. The cadence is driven by two things: how fast you are spending and how long the data survives. OpenAI keeps product reporting for a limited window, so a monthly-only habit risks losing early signal on items that started wasting budget weeks ago. For a campaign still in learning, a weekly pull is usually enough to spot clear winners and losers without overreacting to thin data. Once an item has accumulated a few hundred clicks, daily checks help you catch a sudden CTR drop or a cost spike before it compounds. Pair each pull with a consistent reporting period so you compare like with like, and export the rows you care about, because once the retention window passes, that detail is gone and cannot be recovered.

Why does product-level reporting vary so much between similar products?

Product-level reporting varies between similar items because delivery in ChatGPT Ads is driven by how well each product matches real conversations, and small catalog differences change that match. Two products that look alike to you can carry different titles, images, prices, availability, or eligibility flags, and any of those can make one item serve far more often than the other. Conversation demand also shifts: a product tied to a trending need gets surfaced into more relevant exchanges, while a near-identical SKU sits idle. Attribution adds more variance, since conversions depend on landing-page experience and the measurement setup behind each item. Thin data makes it worse, because an item with few impressions will show noisy CTR that swings run to run. The takeaway is to judge items once they have enough delivery to be stable, and to treat feed quality and matching as the levers behind most of the gap.

Can I directly influence what appears in product-level reporting?

You can influence product-level reporting, but only indirectly, by changing the inputs that drive delivery and attribution. You cannot hand-pick which items get impressions; OpenAI decides that by matching products to conversations. What you control is the feed and the campaign around it. Cleaner titles, accurate images, correct prices, and valid eligibility flags make an item more likely to serve and to serve against the right intent. Budget and bid decisions shift how aggressively the campaign competes for conversations your products fit. Connecting the measurement pixel and Conversions API changes what the report can show, bringing conversions and sales into the picture. You can also exclude weak items or restructure product sets so your strongest catalog slices compete for the most relevant conversations. So the honest answer is that you shape the reporting by shaping the feed, the budget, and the measurement, then let delivery data tell you whether it worked.

What counts as good product-level reporting performance in ChatGPT Ads?

Good product-level performance depends on your margins and goals, so there is no single universal benchmark, but a few patterns signal health. A strong item delivers steady impressions, holds a CTR above your campaign average, and returns a ROAS that clears your target after product costs. Because this is a conversational, catalog-driven surface, judge items against your own campaign baseline first, then against the economics of each SKU, since a 2x ROAS can be excellent on a high-margin product and a loss on a thin-margin one. Watch for items with high spend and low conversions, which usually need a feed fix or exclusion, and for high-CTR items with weak conversion, which usually point at a landing-page or pricing problem. The best outcome is a clear separation between funded winners and paused losers, with budget concentrated where attributed sales are strongest. Revisit the bar as your costs and catalog change.