Context Hints: The Definitive Guide to Targeting in ChatGPT Ads
Context hints are short descriptions of the conversations, topics, or keywords where your product or service is relevant. They live at the ad group level inside OpenAI's Ads Manager Beta, where they act as the primary targeting signal — replacing the cookie, the device graph, and the literal-match search keyword with a single, conversational instruction the model can reason about. This guide covers what context hints are, how OpenAI's relevance-weighted second-price auction evaluates them, how to write ones that convert, fifty worked examples across ten verticals, the bulk-upload schema, pricing benchmarks of $3-5 CPC and $60 CPM, and the seven mistakes that cause most ad groups to underdeliver.
What context hints are
Inside OpenAI's Ads Manager Beta, the unit of targeting is an ad group. An ad group contains your ads, your bid, your budget pacing — and your context hints. OpenAI's own help-center definition is plain:
"At the ad group level, advertisers can provide context hints that describe the conversations, topics, or keywords where their products or services may be relevant. These hints help guide ad matching, but they are not exact-match keywords and do not guarantee delivery in specific conversations." — OpenAI Help Center, Ads in ChatGPT: The Basics
Three things matter in that definition. First, the hint is a description, not a token. Second, OpenAI explicitly says hints are not exact-match. Third, OpenAI explicitly says delivery is not guaranteed. Each of these is a meaningful break from the way paid-search advertisers have written keyword lists for the last twenty years, and each one changes how you should plan a campaign.
The simplest way to think about a context hint is this: imagine you could whisper a one-paragraph briefing to ChatGPT before every relevant conversation, telling it when your product is worth surfacing. The briefing describes the kind of question being asked, the kind of user asking it, and the kind of decision they are about to make. That briefing is your context hint.
One-line summary
A context hint is the targeting instruction you would whisper to ChatGPT mid-conversation if you could. It describes the prompt, the buyer, and the intent — not a literal phrase to match.
Why context hints replaced keywords
The keyword-as-target model worked because search was a typed query box. The user wrote three words. The advertiser bid on three words. The platform matched the words. That symmetry collapses inside an LLM. A buyer who would have once typed best CRM for healthcare into Google now types a paragraph into ChatGPT:
"We're a Series B healthtech company in Boston, around 90 employees, mostly clinicians and a small RevOps team. We need a CRM that's HIPAA-eligible, integrates with our EHR for patient outreach, and isn't going to take six months to roll out. Salesforce feels heavy, but I don't want a fragile startup tool either. What's the right shortlist for us in 2026?"
That paragraph contains the company stage, the headcount, the geography, the buyer role, the regulatory constraint, the integration requirement, the timeline, the competitive comparison, the budget signal, and the desired outcome. Every one of those is a targeting parameter the old keyword model could not represent. The keyword best CRM for healthcare is in there technically, but if your campaign is built on that string alone, you've thrown away ninety percent of what the user actually told you.
A context hint captures the paragraph instead of the substring. It says something like: founders or RevOps leaders at Series A–C US healthtech companies (50–150 employees) evaluating HIPAA-eligible CRMs with EHR integration who want fast time-to-value and don't want Salesforce. That hint is a fingerprint of the conversation, not a token in it. The auction is then free to evaluate whether your ad belongs in this specific conversation based on how well the conversation fingerprint matches your hint fingerprint.
The five things context hints capture that keywords cannot
- Role and seniority. "VP of Marketing at a B2B SaaS" is a hint. It has never been a viable keyword.
- Company stage and size. "Series B with 50–200 employees" is a hint. The keyword search volume on those exact strings is effectively zero.
- Regulatory or industry constraint. "HIPAA-eligible," "SOC 2," "EU-only data residency" — keywords technically exist, but the user almost never types them as standalone queries.
- Funnel stage. "Evaluating a shortlist," "asking for a comparison," "ready to switch from a competitor" — these are intent states, not strings.
- Competitive context. "Considering switching away from HubSpot to something lighter" is a hint. As a keyword it is too long-tail to bid on profitably.
Where context hints live in Ads Manager Beta
The Ads Manager Beta object model nests three things:
| Object | What it controls | Where context hints live |
|---|---|---|
| Campaign | Objective (Reach or Clicks), budget, schedule | — |
| Ad group | Targeting, bid, pacing | Here. Hints are an ad-group-level field. |
| Ad | Title, copy, image, landing page | — |
That placement matters strategically. Because hints live at the ad group level, the cleanest way to scale a campaign is one ad group per audience-and-intent combination. If you sell to three different verticals and three different funnel stages, you do not write nine ads — you write one ad per audience and use nine ad groups with nine sets of context hints to point them at the right conversations.
How the relevance-weighted second-price auction scores hints
OpenAI describes the auction as relevance-weighted, second-price. Both halves of that phrase matter.
The second-price half
In a second-price auction the winning bidder pays one cent above the next-highest eligible bid, not their own max. The strategic implication is well-understood from twenty years of Google Search history: you should set your max bid at the true value of a click, because you will almost never pay it. Bidding shy is leaving impressions on the table; bidding aggressively but reasonably is the right move.
The relevance-weighted half
"Relevance-weighted" means the platform multiplies each bidder's bid by a relevance score before ranking them. The relevance score is computed across multiple inputs the help center calls out specifically: context hints, landing page, ad title, and ad copy. An advertiser with a $2.50 bid and a 0.9 relevance score will beat an advertiser with a $4.00 bid and a 0.4 relevance score in the ranked auction, and will likely pay a fraction of their max.
This is the single most important strategic insight in the entire system. You do not win this auction by outspending — you win it by being more relevant. Context hints are the largest lever you have to move the relevance side of the equation, because they are the only input that describes the conversation rather than the offer.
Why this changes how you plan
If your ad group has one generic hint, you are bidding wide and winning only when no relevant advertiser shows up. If your ad group has fifteen tightly-scoped hints, you are bidding narrow and your relevance score lets you win at a CPC well below the $3-5 OpenAI recommends as a starting bid.
Anatomy of a great context hint
Across the campaigns we have audited at Context Hints, the best-performing hints share a structure. We call it the Audience — Intent — Topic framework. Every great hint names all three layers, in that order.
Layer 1: Audience
Describe the person asking. Role, company size, industry, geography, sometimes seniority. The richer you are, the easier it is for the model to score relevance high. "Founders" is weak. "Solo founders of pre-seed B2B SaaS companies in the US" is strong.
Layer 2: Intent
Describe what they are trying to do right now. "Buying" is too broad — buying what? At what stage? Switching from what? "Evaluating a shortlist of CRMs to switch to after outgrowing HubSpot Starter" is the kind of intent a model can match against. Three useful intent verbs that work across categories: evaluating, switching, comparing.
Layer 3: Topic
The category, sub-category, and any constraints. "CRM" is the category. "Modern CRM with usage-based pricing" is sub-category. "HIPAA-eligible CRM with EHR integration" is sub-category with constraint. The constraint is what disqualifies all the generic CRMs and qualifies yours.
The full template
[Audience: who they are, what they do, where they work]
+ [Intent: what they're trying to accomplish right now]
+ [Topic: the category, sub-category, and constraint that points at your product]
Worked example for a fictional HIPAA-eligible CRM called Cardiff:
RevOps leaders and founders at US healthtech companies (Series A–C, 30–150 employees) evaluating CRM alternatives to Salesforce or HubSpot because they need HIPAA eligibility, EHR integration, and time-to-value under 30 days.
And the same hint, weakened by stripping the layers:
CRM software for healthcare.
The weak hint will match a thousand conversations a day. The strong hint will match thirty. The strong hint will win all thirty because its relevance score is unbeatable; the weak hint will lose most of its thousand because every other CRM advertiser in the auction is also bidding on it.
50 worked examples by vertical
The fifty hints below follow the Audience–Intent–Topic framework. Each is written so you can paste it into an ad group, swap the product reference for your own, and have a usable starting hint within a minute. They are deliberately concrete because the auction rewards specificity.
B2B SaaS (5)
E-commerce and DTC (5)
Fintech (5)
Healthcare and life sciences (5)
Legal and professional services (5)
Education (5)
Local services (5)
Consumer apps (5)
Manufacturing and industrial (5)
Marketing and creative tools (5)
Pricing benchmarks — what $3-5 CPC and $60 CPM actually mean
OpenAI publishes two starting reference points. They recommend a starting CPC max bid of $3-5 USD per click and set the default CPM max bid at $60. These are not floors — they are starting suggestions inside a relevance-weighted auction.
In practice we see three patterns:
| Pattern | What's happening | What to do |
|---|---|---|
| Clearing under $3 | You have strong hints and weak competition in the category. Your relevance score is doing the work. | Hold the bid, scale the budget, add more hints. |
| Clearing $3-5 | Normal range for competitive verticals (B2B SaaS, fintech) with average hint quality. | Iterate on hint specificity to push relevance up. |
| Clearing above $5 | You're competing on bid because your hints are too generic. The auction is treating you like everyone else. | Rewrite hints with the Audience–Intent–Topic framework before raising the bid. |
For CPM (Reach) campaigns the $60 default is generous. We have seen brand-awareness campaigns clear at $15-25 CPM when the hint is well-scoped to a small but exact audience. Treat the $60 as a ceiling, not a target.
Choosing between CPC and CPM
- Use CPC (Clicks objective) when you have a measurable conversion event and you want to pay per outcome. Most lower-funnel demand-gen campaigns belong here.
- Use CPM (Reach objective) when you are introducing a category or building familiarity ahead of a future evaluation. Most brand campaigns belong here.
- You can run both for the same product. They live in different campaigns with different objectives.
The bulk upload schema
Ads Manager Beta supports bulk creation via CSV upload. The schema mirrors the object model: each row represents an object, and the rows are linked by name references. The high-level shape is:
campaign_name, objective, daily_budget, schedule_start, schedule_end
ad_group_name, parent_campaign, context_hints, bid_strategy, max_bid
ad_name, parent_ad_group, title, copy, landing_page, image_asset, advertiser_name, favicon
A few non-obvious points about working with the CSV:
- Context hints in the CSV are typically pipe- or semicolon-delimited inside a single cell. Verify the exact delimiter in the latest documented schema before importing.
- Ad group names must be unique within a campaign, and ad names unique within an ad group.
- If validation fails on a single row, the platform usually rejects the entire upload — keep your batches small until you trust your template.
- Use the OpenAI-published Bulk Upload Campaign Schema Checklist as your final pre-flight gate. We mirror its structure in the UTM Builder for downstream attribution consistency.
The seven most common mistakes that kill ad-group performance
- One generic hint per ad group. "Best CRM software." The auction treats you as a commodity bidder. Rewrite using the framework.
- Hint and ad copy describe different things. The relevance score reads both. If the hint says "for healthcare startups" and the ad says "for everyone," the score is dragged down. Mirror your hint inside the ad copy.
- Landing page mismatch. The landing page is one of the four named relevance inputs. Linking the hint "modern CRM" to a generic homepage instead of a vertical landing page is a relevance penalty.
- No competitive context in the hint. "Switching from HubSpot" and "evaluating new CRMs" are different conversations. Include the competitor if your offer is a credible alternative.
- Hint vocabulary the buyer never uses. If your hint contains your internal product category name and the buyer uses an industry term, you will miss the match. Write hints in the buyer's vocabulary, not yours.
- Too few hints per ad group. Three hints describing slightly different phrasings of the same audience-intent-topic combination outperform one. Variants compound.
- Mixing audiences in one ad group. "Founders and CMOs and developers" is three ad groups, not one. The mixed group loses to each focused competitor.
Context hints vs Google search keywords
| Google keyword | Context hint | |
|---|---|---|
| What it represents | A literal string the user typed | A description of the conversation the user is having |
| Match logic | Exact, phrase, broad (token-based) | Relevance-weighted across the full prompt |
| Recency of intent | The query itself, but no narrative | The entire articulated need in the user's own words |
| Stage signal | Inferred from query modifiers | Stated directly by the user inside the prompt |
| Specificity ceiling | Bounded by search volume on the exact string | Bounded by how richly you describe the audience |
| Auction inputs that affect price | Quality Score (CTR, landing page, ad relevance) | Relevance across context hints, landing page, ad title, ad copy |
For paid-search marketers crossing over, the mental model that helps most is this: treat each context hint like a SKAG (Single Keyword Ad Group) — except the keyword is now a paragraph. The discipline of writing one ad group per intent is the same. What changes is that the intent is now a fully-described state rather than a typed string.
Where context hints are going
Three plausible directions in the next twelve months, based on patterns in adjacent platforms:
- Hint quality scoring shown in-product. Expect Ads Manager Beta to surface a relevance estimate per hint, similar to Google's Quality Score, so operators can iterate without launching.
- Audience extension across LLM surfaces. The same hint structure is highly likely to be portable to Perplexity, Gemini and other AI ad inventories, with each platform tuning its own relevance model on top of a common semantic input.
- Negative hints. The ability to exclude a conversation type ("not for enterprise buyers," "not for free-trial-only intent") is the most-requested feature among advertisers we talk to. It's also the most likely to ship next.
Frequently asked questions
Are context hints the same as keywords?
No. Keywords are literal strings the user typed. Context hints are descriptions of the conversation a user is having. OpenAI matches relevance across hints, landing page, ad title and ad copy — it is not a literal-token match.
How many context hints should one ad group have?
Five to fifteen, written as variants on a single audience-intent-topic combination. Too few and you under-cover the language buyers actually use. Too many and you blur the ad group's identity and dilute relevance.
Can I include competitor names in a context hint?
Yes, in the descriptive sense — "switching from HubSpot" is a legitimate description of a conversation. Confirm policy compliance with OpenAI's current ad policies before targeting any specific competitor at scale.
Do I need to bid higher to win competitive verticals?
Sometimes, but usually no. The auction is relevance-weighted, so a more specific hint with the same bid will outperform a generic hint at a higher bid. Rewrite before you raise the bid.
What if my ads aren't delivering?
The most common cause is hints that are too generic, so the relevance score loses to better-scoped advertisers. Second most common is a landing-page mismatch. Third is an underfunded daily budget cap throttling delivery. See the seven mistakes above.
Where can I learn more about OpenAI's policies?
Refer to OpenAI's published Ads Policies in the help center for what's eligible, what's restricted, and how brand safety is enforced. We summarize the operator-level implications in How ChatGPT Ads Actually Work in 2026.
Want a real audit on your hints?
Spend 30 minutes with Tarun. We'll review what you have, rewrite the weakest hints in front of you, and give you a delivery plan you can ship the same day.
Book a discovery call