OpenAI added view-through attribution to ChatGPT Ads today. It arrived quietly, in the developer documentation only, and it is the kind of change that will silently alter how a channel looks in a report before anyone announces it.
The single most important sentence, quoted from OpenAI's own text, is this one:
conversionsis always equal toclick_through_conversions; view-through conversions are a separate, supplemental metric and are not added to that total.
If you read nothing else: your conversion number did not change. A new number appeared next to it. Those are very different events, and the difference is the entire story.
Last verified: 2026-08-12. Everything in the "what OpenAI says" sections below is quoted or paraphrased from official OpenAI documentation captured on that date, with source URLs. Everything in the "what this means" sections is Soku's reading, and is labelled as such.
What actually changed
Three ChatGPT Ads developer documentation pages gained view-through attribution language on 2026-08-12:
- Measurement Pixel — a new Attribution reporting section
- Conversions API — a new Web-event attribution reporting section
- Insights API reference — new response fields and a conversion-insights explanation
Before today, none of these pages used the term "view-through" at all. The concept did not exist in the documented ChatGPT Ads measurement surface.
The rules, as OpenAI states them
From the Measurement Pixel documentation:
The same events support click-through attribution and, when available for your account, view-through attribution. Click-through attribution uses the applicable configured click window. View-through conversions use a fixed one-day window after an eligible ad impression. Whether view-through reporting is available does not depend on your configured click window. If a conversion is eligible for both, the click takes precedence. View-through reporting requires no changes to your Pixel integration or event payload. Ads Manager reports view-through conversions as a separate, campaign-level metric. They are not included in
Conversions, which remains the click-through conversion total. CPA, post-click CVR, bidding, billing, and conversion optimization also remain click-through-based.
The Conversions API page carries the same rules for server-side web events, and adds two clauses of its own:
View-through attribution does not use a separate request or event field.
App lifecycle events and mobile measurement integrations remain click-through-based.
And the insights reference gives the API-level shape:
Authorized
POST /conversions/insightsresponses includeconversions,click_through_conversions, andview_through_conversions. […] View-through conversions are for reporting only. […] In Ads Manager, view-through conversion reporting is available at the campaign level for accounts with this reporting available.
That is the complete documented surface. Six rules fall out of it, and they are unusually clean:
| Rule | What OpenAI says |
|---|---|
| Window | Fixed one day after an eligible ad impression — not configurable |
| Relationship to click window | Availability is independent of your configured click window |
| Overlap | If a conversion qualifies for both, the click wins |
| Integration work | None. No new field, no payload change, no pixel change |
| Where it appears | Campaign level only, as a separate metric |
| What it does not touch | Conversions, CPA, post-click CVR, bidding, billing, conversion optimization |
| Availability | "when available for your account" — not universal |
Why this is unusual, and worth reading carefully
Most platforms that introduced view-through conversions folded them into the headline conversion number, or made the attribution setting configurable, or both. Meta's view-through window has historically been an account-level setting that changes the reported total. That design is why "our conversions jumped 40% and nothing changed" is a familiar conversation in performance marketing.
OpenAI has done the opposite on every axis, and the design is internally consistent:
The window is fixed at one day and you cannot lengthen it. There is no setting to find, which means there is also no setting anyone can quietly change to make a quarter look better. A one-day view-through window is at the conservative end of the industry — it is short enough that the impression and the conversion are plausibly related, and short enough that it will not manufacture large numbers out of high-impression campaigns.
Click takes precedence on overlap. This closes the double-count that makes naive view-through reporting useless. A user who sees an ad and then clicks it and then converts produces one conversion, attributed to the click.
The optimisation loop cannot see it. This is the clause that deserves the most attention, and OpenAI states it three times across three pages, which is not accidental: CPA, post-click CVR, bidding, billing, and conversion optimization remain click-through-based. Whatever view-through reports, the auction behaves exactly as it did yesterday. You are not being billed differently, and the system is not optimising toward a softer signal.
Nothing to implement. "View-through reporting requires no changes to your Pixel integration or event payload" and "does not use a separate request or event field" mean this is purely a reporting-side change on OpenAI's end. There is no migration and no deadline. That is genuinely rare, and it is why this change can appear in your account without anyone on your team doing anything.
Soku's reading — where the risk actually sits
The documented design is careful. The risk is human, and it is entirely about how the number gets used downstream.
The moment a view_through_conversions field exists, someone will add it to a dashboard. Then someone will sum it with conversions to produce a "total conversions" column, because the two look like they belong together and the field names invite it. At that point every downstream figure — blended CAC, channel ROAS, the number in the board deck — is inflated by an amount nobody can trace, against a platform whose own biller and optimiser explicitly ignore the metric.
There is a second-order version of this that is harder to catch. If you sum the two and then compute CPA yourself, your CPA will diverge from the CPA in Ads Manager, because OpenAI's CPA is click-through-based by definition. You will have two CPAs, they will disagree by exactly the view-through volume, and the discrepancy will look like a data bug rather than a definitional choice.
The defence is boring and effective: treat view_through_conversions as a diagnostic, never as a component of a total. It answers "is this campaign generating consideration we cannot see in clicks?" It does not answer "how many conversions did we get."
We would also flag the availability clause. Twice OpenAI writes "when available for your account" and "for accounts with this reporting available." That is a staged rollout, and it has a specific consequence for anyone comparing campaigns across accounts or agencies comparing clients: two accounts may legitimately show different metrics for structurally identical campaigns, and neither is wrong. Check availability per account before you compare.
What this does not tell you
Reading the documentation strictly, several things are undefined. We are listing them as open questions rather than guessing, because guessing about attribution mechanics is how teams end up with confident wrong numbers.
What counts as an "eligible ad impression." The phrase does both a lot of work and no work at all. Viewability standards, minimum render duration, and whether an impression inside a conversation the user scrolled past qualifies — none of that is stated. In a chat surface, "impression" is a less obvious concept than it is in a feed, and OpenAI has not defined it here.
Whether historical data is backfilled. The documentation describes the metric's behaviour, not its history. If view_through_conversions appears with a populated back-history, month-over-month comparisons will show a step change that is an artefact of the rollout. If it starts at zero from today, the first month is not comparable to any subsequent month. Both are manageable; you just need to know which one happened, and you can only learn that by looking at your own account.
How this interacts with automatic advanced matching. OpenAI is turning automatic advanced matching on by default for existing pixels on 17 August 2026. That change raises match rates, which raises reported conversions. This change adds a second reported conversion metric. They land five days apart, and the documentation does not discuss them together. If your reported numbers move in late August, you will have two independent, undocumented-in-combination causes — so take a baseline now, before both land.
Whether measurement partners see it. ChatGPT Ads supports third-party measurement partners, and nothing in today's text says whether view-through data flows to them or stays inside OpenAI's own reporting.
The other thing that shipped today: the Maximize results bid strategy
Separately, and on the same day, OpenAI published a new help centre article describing a bid strategy that did not previously exist in the documentation: Maximize Results Bid Strategy.
The official description:
Maximize results is a new bid strategy that lets ChatGPT Ads automatically set and adjust bids on your behalf. It is designed to help get as many results as possible from your budget.
Three details from that article matter more than the headline:
It is on by default. "For eligible new ad groups, Maximize results is selected by default. You can review or change this selection in the ad group's Bid strategy section." If you build a new ad group and do not look at the bid strategy field, you are using automated bidding. The alternative is named in the setup steps as Manual: Max bid.
It optimises for volume, not efficiency, and OpenAI says so plainly. "Maximize results prioritizes result volume and does not guarantee delivery against a specific CPA, CPC, ROAS, or other cost-efficiency target at this time." That is an unusually direct disclosure, and it is the sentence to quote to anyone who assumes an automated strategy implies an efficiency target. It does not. If you need a ceiling, the article points you back to manual or advanced bid controls.
It optimises toward the campaign goal you already picked. "ChatGPT Ads optimizes toward your selected campaign goal, such as clicks or conversions." Which means the goal choice — one of the settings locked at campaign creation — now determines what an automated bidder spends your budget chasing.
Soku's reading: this is the more operationally urgent of today's two changes, because it is default-on and it changes spend behaviour, whereas view-through only changes a report. A volume-maximising strategy with no efficiency guarantee, selected by default, is exactly the configuration that produces a surprising invoice. Check the bid strategy field on every new ad group until you have decided deliberately.
The two documentation surfaces disagreed today, and that is the story
ChatGPT Ads is documented in two places — the help centre for advertisers and developers.openai.com for implementers. Today they did not describe the same product:
- View-through attribution appears in the developer documentation on three pages. The term does not appear anywhere in the ChatGPT Ads help centre.
- Maximize results has a dedicated help centre article. The term does not appear anywhere in the developer documentation.
Neither surface, read alone, would have told you what shipped today. An advertiser reading only the help centre would learn about a new default bid strategy and know nothing about a new conversion metric appearing in their reports. An engineer reading only the developer docs would learn about view-through and know nothing about the bidding default that changes what their spend does.
This is not a criticism so much as a working instruction: for ChatGPT Ads, one source is not enough. The channel is moving fast enough that the two surfaces routinely lead each other by days, and we have now seen it repeatedly — the oCPC Bid Cap redefinition was legible only from the developer docs, and the product-feed conversion bidding beta appeared there first too.
For completeness on sourcing: we also check OpenAI's advertiser product-update email, which has historically carried items that never reached either documentation surface. No new advertiser product-update email was sent in this window — the most recent one is dated 2026-08-05 — so both of today's changes are documentation-only, with no announcement accompanying them.
What to do this week
- Take a conversion baseline today, before automatic advanced matching flips on 17 August. Record
conversionsper campaign now, so you can separate the two effects later. - Check whether
view_through_conversionsis populated in your account. It is gated. QueryPOST /conversions/insightsor look for the campaign-level metric in Ads Manager. - Decide the reporting rule before the dashboard exists. Our recommendation: a separate, clearly-labelled column, never summed into a conversion total, never used in a CPA calculation.
- Audit the bid strategy on every new ad group. Maximize results is default-on for eligible new ad groups and carries no efficiency guarantee.
- Do not change your click window in response to any of this. View-through availability is explicitly independent of it, so there is no interaction to optimise.
If you are still deciding how much of your measurement stack to point at this channel, ChatGPT Ads attribution covers the underlying pixel and Conversions API model, and multi-touch attribution models compared covers where a view-through signal honestly sits among the alternatives.
Sources
All captured and verified 2026-08-12:









