ChatGPT Ads has few bidding levers, and some of them are one-way: a campaign's objective can't be changed once it's created. So this lesson is about deciding well before you build, rather than fixing things afterwards. You'll set all of this in Ads Manager, OpenAI's self-serve tool, or through the API.
Three objectives, two ways to bill
In Ads Manager you choose between Views, Clicks and Conversions. OpenAI bills per impression or per valid click:
| Objective | What it optimises for | How it bills | What your bid means |
|---|---|---|---|
| Views | Impressions | Per impression (CPM) | Maximum per thousand impressions |
| Clicks | Clicks | Per valid click (CPC) | Maximum per click |
| Conversions | Conversions (oCPC) | Per valid click | Acts as a CPA bid to compete |
The confusing row is the last one. A Conversions campaign optimises towards the conversion, but doesn't bill per conversion: you pay for every valid click, whether it converts or not. The figure you enter is there to compete; it isn't the price of each conversion.
And note: the objective can't be changed afterwards, and neither can the chosen conversion event. Get it wrong and you need a new campaign.
Three strategies
| Strategy | Who sets the bid | Budget |
|---|---|---|
Fixed bid (fixed_bid) |
You: you set and adjust the maximum bid | Daily or lifetime |
Maximise clicks (maximize_clicks) |
OpenAI, with no maximum bid | Daily required |
Maximise conversions (maximize_conversions) |
OpenAI, with no maximum bid | Daily required |
With the two automated strategies, OpenAI adjusts bids to get the most out of the budget. With no maximum bid, your brakes are the daily budget and the account spend limit.
To optimise for conversions you need exactly one standard event active as the goal (custom events don't qualify) and enough volume. Measurement is covered in lesson 4 of this module.
The auction
OpenAI describes it as a second-price auction weighted by relevance: when several ads are eligible, both relevance and bid count. Two practical consequences:
- In a second-price auction, what you pay also depends on the bid of whoever comes behind you. With a fixed bid, your maximum is a ceiling, not a price tag.
- Relevance competes alongside the bid. Raising the bid won't fix an ad that doesn't fit the conversation: check hints, ad and landing page first (lessons 1 and 2).
"Bid too low": a warning, not a block
Ads Manager can show bid strength guidance, and the API flags ad groups
with bid_too_low. It is guidance, not a restriction: it doesn't
block anything. And the other way round: if a campaign isn't serving,
don't assume it's the bid. Ours wasn't serving with a sound bid and 8
approved ads; the reason was the account's brand review, still in
progress (lesson 5).
Daily or lifetime budget
- Exactly one per campaign: daily or lifetime.
- A daily budget is required with maximise clicks and maximise conversions.
- A daily budget can't be turned into a lifetime one: you need a new campaign.
- A lifetime budget can't be lowered below what has already been spent.
- The campaign budget and the account spend limit apply separately. The limit is set by period (dates and amount) and, once used up, it blocks delivery even if the campaign still has budget left. Accounts billed by invoice also have a daily account limit.
Don't raise the budget because today's report shows little spend: spend data arrives late, and a spend of 0 doesn't mean there are no charges (lesson 5).
⚠️ Pitfall: in the API, bids and budgets are sent in micros (1 unit = 1,000,000), and a Views bid is sent per impression, not per thousand. A $60 CPM is sent as $0.06 per impression: 60,000 micros. Send 60,000,000 thinking in CPM and you're bidding a thousand times what you meant.
Reference prices
OpenAI recommends starting CPC campaigns with a maximum bid of $3 to $5 per click. It publishes no reference prices for CPM, and the figures quoted in the press change fast: your best reference will be your own cost per result.
That is a dollar figure: if your account uses another currency, convert it. We have no data of our own to add yet: our campaign (Clicks objective, maximise clicks, $25 a day, Spain) has only just been approved.
Where to start
- Do you already measure a standard event reliably and in volume? If not, start with Clicks. Bidding for conversions without solid measurement means optimising towards a broken signal while paying for every click.
- Would you rather control price or volume? Price: fixed bid, starting within the $3-5 range OpenAI recommends. Volume within a budget: maximise clicks with a daily budget, which is what we chose.
- Only want visibility? Views: compare what you pay per thousand impressions with what those impressions bring you.
- Set an account spend limit, especially with automated strategies.
- Once conversions have volume, create a new Conversions campaign: the Clicks one can't be switched over.
💡 Ninja trick: install measurement from day one even if you start with Clicks (lesson 4). That way you'll know when you have the volume to move to Conversions, instead of guessing.
What to remember
- Views bills per impression (CPM); Clicks and Conversions bill per valid click.
- The objective and the conversion event can't be changed: new campaign.
- Maximise clicks and maximise conversions have no maximum bid and require a daily budget; your brakes are that budget and the account limit.
bid_too_lowis guidance, not a block; and relevance competes alongside the bid.- OpenAI recommends starting CPC at $3-5 per click.
- In the API it's micros and a per-impression bid: a $60 CPM is 60,000 micros.