OpenAI's Ads API does not give you Google-style match types. At the ad-group level it asks for context_hints: a string array of free-form descriptions that guide when a ChatGPT ad may be useful. Paste a keyword list into that field and you are fighting the ChatGPT ads auction with the wrong weapon.
This guide is about that named mechanism. How context hints differ from keywords, how OpenAI documents them in Ads Manager and the Advertiser API, how to structure B2B ad groups around buyer conversations, and a 30-day rewrite plan that does not invent category CPCs.
Key Takeaways
- Context hints live on the ad group as a free-form string array. OpenAI says they guide matching; they are not exact-match keywords and do not guarantee delivery.
- OpenAI's Bulk API documents up to 2,000 context hints per ad group. Focused themes still beat dumping every product noun into one group.
- Write hints as buyer situations (who, need, constraints), not as Search keyword lists. OpenAI's example: "cushioned everyday running shoes for beginners training for their first 5K" beats "running shoes."
- Split ad groups when products, audiences, or use cases need different ads or landing pages. One theme per group keeps creative and hints aligned.
- Hints feed the relevance side of bid × relevance. Weak hints clear near your max CPC; tight conversational hints are the discount lever.
What ChatGPT Ads context hints actually are
A context hint is an advertiser-written description of the conversations, needs, topics, or situations where the products in an ad group may be relevant. OpenAI's Create Ad Groups help article states that hints "help our systems understand when your ads may be relevant to conversations or user journeys in ChatGPT."
In the Advertiser API, the field is context_hints on POST /ad_groups: an optional string array of "free-form audience or placement hints." The developer docs add: "Provide a list of descriptions or keywords for when the product or service might be useful to show." Keywords are accepted as input. Descriptions of buyer moments are the intended primary form.
Hard boundaries from OpenAI's ad-group help article:
- Hints are not exact-match controls.
- They are not audience targeting rules.
- They are not instructions to show your ad only for specific conversations.
- They do not guarantee that your ad will appear for particular words, topics, audiences, or situations.
Here's why that matters: you are briefing a relevance model, not buying a query string. The auction still ranks eligible ads by bid × relevance and clears on a second-price basis. Hints are one of the advertiser-controlled relevance inputs alongside landing page, title, and copy.
Context hints vs Google keywords
Operators who grew up on Search try to port keyword lists into context_hints. That fails for structural reasons, not because the channel is "too early."
| Dimension | Google keywords | ChatGPT Ads context hints |
|---|---|---|
| Matching unit | Query string / match types | Live conversation meaning + hint, creative, landing page |
| Where you set it | Ad group / keyword list | Ad group context_hints array |
| Exact match? | Yes (exact, phrase, broad) | No. OpenAI rejects exact-match framing |
| Guarantee delivery? | Bid + eligibility can still lose the auction | Explicitly no guarantee for specific words or chats |
| Best input shape | Tokens buyers type into Search | Situations buyers narrate in a multi-sentence prompt |
| Negative control | Negative keywords | Separate ad groups + focused themes; Bulk API also documents exclusion_hints |
| API ceiling | Account / campaign keyword limits | Up to 2,000 hints per ad group (Bulk API) |
OpenAI's help example makes the shift concrete: replace a broad hint like "running shoes" with "cushioned everyday running shoes for beginners training for their first 5K." Specificity is about need and situation, not about forcing a token match.
Bulk API docs also list exclusion_hints on ad-group create/update. Treat those as a complementary control when you need to steer away from adjacent conversations, not as a full negative-keyword spreadsheet replacement.
How hints enter the auction
Per GrowthCentr's auction guide and OpenAI's public Ads Basics framing, eligible ads compete on a relevance-weighted score. Advertiser-controlled inputs include context hints, landing page, title, and copy. When ads personalization is enabled for a user, select signals from the broader ChatGPT experience can also influence selection.
Operationally:
- A conversation becomes an auction opportunity when a Free or Go user asks something commercial enough for ads (Plus, Pro, Business, Enterprise, and Education remain ad-free).
- Hints help decide eligibility and relevance for that conversation; they do not rewrite the model answer.
- A more relevant ad can outrank a higher raw bid. Weak, keyword-shaped hints leave you paying near your max CPC for thin delivery.
- Sponsored units sit below the response, labeled separately. Advertisers do not receive chat content.
OpenAI's Ads Basics guidance has recommended starting maximum CPC around $3–$5 USD for Clicks campaigns. That number is a ceiling for learning, not a promise of clearing price. Relevance (hints + creative + page) is what keeps you off the ceiling.
Ad group structure OpenAI actually recommends
OpenAI's Create Ad Groups article is blunt about focus:
- Keep each ad group on a single product category, theme, or intent area.
- Use separate ad groups for meaningfully different audiences or use cases.
- Avoid combining unrelated products or themes into the same ad group.
- Include multiple ads within each ad group to test messaging.
- If hints describe different products that need different ads or landing pages, split the group.
The API lets you attach up to 2,000 hints to one group. That is a capacity limit, not a strategy. Flooding one group with every ICP noun dilutes the theme and forces one creative set to answer mismatched conversations.
GrowthCentr's working rule: one buyer conversation theme per ad group, three to eight high-quality hints that are natural variations of that theme, and one primary landing URL that continues the same nouns.
How to write B2B context hints that work
OpenAI asks advertisers: "What else should we know about this product, who it helps, and when it's useful?" Translate that into a five-part brief for B2B:
| Element | Put in the hint | Skip |
|---|---|---|
| Buyer / seat | RevOps lead, Series B founder, clinic ops manager | "Decision makers," "enterprises" |
| Need | HIPAA-eligible CRM with EHR outreach | "Best CRM software" |
| Situation | Replacing a tool that failed SOC 2 questionnaires | Generic category labels only |
| Intent stage | Comparing shortlists, asking for implementation time | Pure brand vanity phrases |
| Constraints | 50–150 employees, US, needs go-live under 90 days | Keywords with no constraints |
Weak vs strong B2B examples
| Weak (keyword paste) | Stronger context hint |
|---|---|
| CRM software | Series A–C US healthtech teams (50–150 people) comparing HIPAA-eligible CRMs that integrate with EHR for patient outreach and want fast rollout |
| SOC 2 automation | Security and GTM teams answering vendor security questionnaires who want automated evidence collection without a six-month GRC project |
| AI SDR tool | B2B SaaS founders under $5M ARR evaluating AI outbound that books meetings without burning domains or spamming ICP inboxes |
| usage based pricing | SaaS CFOs and product leads redesigning pricing because LLM inference is now a material COGS line and seat pricing is compressing gross margin |
| ChatGPT ads | Paid media leads learning how ChatGPT Ads context hints and oCPC differ from Google Search keywords before a first $3–$5 CPC test |
Good hints (from OpenAI's own criteria): add information beyond title/copy/landing page, connect features to real needs, describe situations rather than only audience labels, use clear natural phrases, and stay inside one theme.
Three ad groups by intent stage (B2B pattern)
A practical starting structure for a Clicks campaign: three ad groups, one theme each, shared measurement.
| Ad group | Conversation job | Hint shape | Landing / creative job |
|---|---|---|---|
| Problem / discovery | Buyer narrates the pain without naming a category | Situation + constraint, light on product nouns | Educational proof, category framing |
| Comparison | Buyer asks for shortlists, tradeoffs, migrations | Named alternatives, requirements, timeline | Differentiation, integrations, implementation time |
| Purchase-ready | Buyer asks how to buy, demo, or migrate this week | Demo, trial, procurement, security review language | Low-friction CTA, pricing clarity, trust assets |
Do not stuff all three stages into one ad group. OpenAI's split rule exists because creative and landing pages cannot answer three jobs at once. When you later move to oCPC, keep the same theme discipline and point conversion events at the stage that actually happens after the click. Measurement plumbing lives in GrowthCentr's ChatGPT Ads Conversions API guide.
API shape operators need to know
For programmatic buyers, the minimum ad-group create payload includes campaign_id, name, status, bidding_config, and optionally context_hints. Example pattern from OpenAI's docs:
context_hints: ["productivity", "team collaboration"]
Those two short strings are documentation samples, not a B2B playbook. Replace them with situation sentences before launch. Updates use POST /ad_groups/{ad_group_id} and can rewrite the full hints array. Dedicated activate / pause / archive endpoints also exist.
Bulk API notes that matter for operators:
- Ad groups support up to 2,000 context hints.
- ad_group.create / update accept context_hints and exclusion_hints.
- Ad-group bids must match the parent campaign's billing event (impression vs click).
- For oCPC, billing_event_type stays click while max_bid_micros acts as a CPA optimization input, not a per-conversion charge.
GrowthCentr's take
The team at GrowthCentr sees the same failure pattern every week: a Google non-brand list dumped into context_hints, a homepage URL, and surprise that delivery is thin or CPC clears near the max. The auction is doing its job. Relevance is low.
Run hints work in parallel with organic AI search visibility. Paid units sit under the answer. They do not purchase a citation inside it. See AI search visibility for B2B SaaS for the organic levers, and ChatGPT statistics 2026 for demand context.
Named downside: who should skip
Skip or keep a token test if any of these are true:
- Your ICP sits on Plus, Pro, Business, Enterprise, or Education seats that never see ads.
- You cannot (or will not) write situation-level hints and matching landing pages within a week.
- Legal or brand bans conversational claims that would make a truthful hint.
- Your CAC math cannot absorb a $3–$5+ CPC learning phase. Check GrowthCentr's customer acquisition cost benchmarks first.
- You expected hints to force placement on a named competitor query the way exact-match keywords sometimes did in Search. OpenAI documents that they will not.
Customer acquisition cost: the 2026 statistics report is the sanity check before you scale conversational CPC.
30-day context hints rewrite plan
Days 1–7: Mine real conversations
- Pull 30 recent sales calls, demo questions, and ChatGPT sample prompts your ICP would type.
- Cluster them into three themes (problem, comparison, purchase-ready).
- Draft 5 situation hints per theme using buyer + need + constraints.
- Kill any hint that is only a keyword token with no situation.
Days 8–14: Structure and creative alignment
- Create one Clicks campaign with three ad groups (one theme each).
- Load 3–8 hints per group. Do not chase the 2,000 ceiling.
- Rewrite title, body, and landing hero to share the same nouns as the hints.
- Start max CPC near OpenAI's $3–$5 USD guidance. Launch paused, QA destinations, then activate.
Days 15–21: Read relevance, not vanity CTR
- If delivery is near zero under $3, raise toward $5 before widening hints.
- If you clear near max bid with weak post-click engagement, narrow hints and rewrite creative before raising budget.
- Log average CPC, CTR, spend, and landing conversion by ad group daily.
- Wire Pixel / Conversions API if you plan an oCPC fork (see the CAPI post).
Days 22–30: Kill, keep, or hand to organic
- Keep only ad groups where delivered CPC and qualified pipeline beat non-brand Search or paid social alternatives.
- Document losing hints as GEO prompts. Those conversations are demand you should win in the unpaid answer.
- Split any group whose hints started requiring different landing pages mid-test.
- Archive themes that cannot clear without forever bidding at the ceiling.
Need auction mechanics and oCPC billing before you rewrite hints? Start with the auction guide, then instrument CAPI.
FAQ
What are context hints in ChatGPT Ads?
Context hints are free-form descriptions on an ad group that tell OpenAI when your ads may be relevant to ChatGPT conversations. They guide matching alongside title, copy, and landing page. They are not exact-match keywords and do not guarantee placement.
How are context hints different from Google keywords?
Keywords match query strings with match types. Context hints describe buyer situations for semantic matching against live chats. OpenAI explicitly says hints are not exact-match controls or audience targeting rules.
Where do you set context hints?
At the ad-group level in Ads Manager, or via the Ads API field context_hints on POST /ad_groups. Bulk create/update also accepts context_hints and exclusion_hints.
How many context hints can one ad group hold?
OpenAI's Bulk API documents up to 2,000 context hints per ad group. GrowthCentr recommends a small set of high-quality situation hints per theme instead of filling the ceiling.
Should B2B teams paste their Google keyword list into context_hints?
No. Rewrite keywords into buyer situations with constraints. OpenAI's own example prefers "cushioned everyday running shoes for beginners training for their first 5K" over "running shoes."
When should you split ChatGPT Ads ad groups?
When products, audiences, or use cases need different ads or landing pages. OpenAI advises one product category, theme, or intent area per ad group.
Do context hints change who sees ChatGPT ads?
No. Eligibility still depends on plan and policy. Ads may appear for Free and Go users. Plus, Pro, Business, Enterprise, and Education are ad-free. Hints affect matching among eligible conversations.
How do context hints relate to oCPC?
Hints improve relevance so conversion-optimized campaigns have better conversations to learn from. oCPC still bills per valid click. Measurement setup is covered in GrowthCentr's Conversions API guide.
What to do Monday
Open Ads Manager and rewrite three ad groups so each one owns a single conversation theme. Replace every bare keyword with a situation sentence that names the buyer, the need, and the constraint. Pair each group with one landing URL that repeats those nouns.
Then sample those same three prompts in ChatGPT as a Free/Go-style user and record whether your brand is named in the unpaid answer. If the answer already cites you, paid context hints are an accelerant under the response. If the answer ignores you, fix AI search visibility in parallel. The operators who win ChatGPT Ads in 2026 will not be the ones who pasted the biggest keyword sheet into context_hints. They will be the ones who briefed the auction like a media planner who actually listened to sales calls.
External references: Create Ad Groups for ChatGPT Ads, OpenAI Ad Groups API, and OpenAI Ads Bulk API (2,000-hint ceiling and exclusion_hints). For cost and auction context, see Ads in ChatGPT: The Basics and GrowthCentr's Google Ads statistics 2026.
