Log in / Create free account🌐 ES☀️

Advanced training · Module 17 — ChatGPT Ads in depth — context hints, measurement, bidding and automation

Bidding and budgets in ChatGPT Ads: objectives, strategies, the auction and where to start

⏱️ 6 min read · 🤖 ChatGPT Ads 💰 Bids and budgets · updated on 2026-09-16

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:

"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

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

  1. 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.
  2. 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.
  3. Only want visibility? Views: compare what you pay per thousand impressions with what those impressions bring you.
  4. Set an account spend limit, especially with automated strategies.
  5. 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

📎 Sources and further reading

⚠️ Free training with no support. Ninja Scripts support channels (email and Telegram) are only for the use of the scripts, not for Google Ads questions or questions about this training.

Pick up here

← BeforeAds and landing pages in ChatGPT Ads: the card, the image, review and variants you can measureChatGPT Ads in depth — context hints, measurement, bidding and automationAfter →Advanced measurement in ChatGPT Ads: Conversions API, deduplication and the data type of each eventChatGPT Ads in depth — context hints, measurement, bidding and automationRelatedChatGPT Ads step by step: account sign-up, brand review and your first campaignAdvertising in ChatGPT: first stepsRelatedOptimising ChatGPT Ads without search terms: experiments, a phased calendar and a weekly routineChatGPT Ads in depth — context hints, measurement, bidding and automationRelatedThe campaign settings that can ruin you without you knowingInside the account — structure, campaigns, ad groups and MCCRelatedBroad match with Smart Bidding: how to test it without burning moneyAdvanced Search — search terms, negatives and traffic control

See the full syllabus

🎓
You're reading the Ninja Academy in the open

Create your free account (no card) to save your progress, take the graded quizzes, earn the Basic level certificate and unlock part of the Intermediate and Advanced training.

Create my free account →
🥷

Subscriber feature

This option is part of the Ninja Scripts Suite subscription.

See the subscription →