Custom Audiences on ChatGPT Ads and the Match Volume Problem

By 8 min read

Summarise with

Prompt copied

Screen-print illustration of a pair of heavy gates in one wall, the inbound gate bolted shut with a thick bar across it and the outbound gate standing wide open.

In brief

ChatGPT Ads requires 25,000 matched users for audience targeting. See why suppression is often more practical for B2B advertisers.

Last verified: 12 September 2026 | Version: 1.0 | Next scheduled review: 12 October 2026

Most B2B advertisers who upload a list to ChatGPT Ads will not be able to target it. The floor is 25,000 matched users for inclusion targeting or bid adjustments, and OpenAI recommends at least 100,000. A typical B2B customer list does not contain 25,000 people, let alone 25,000 who match.

That is not a criticism of the feature. It is the shape of the feature, and it decides which half of it you can actually use.

What the feature is

Custom audiences on ChatGPT Ads are first-party upload only. You supply the list. There are no third-party segments to buy, no interest categories, no behavioural retargeting, no lookalike expansion from a seed.

The mechanics are documented and unusually specific for this platform:

  • File: UTF-8 CSV or TXT, up to 500 MB. CSV needs a header row, TXT needs one identifier per line.
  • Identifiers: email address, phone number, SHA-256 hashed email, SHA-256 hashed phone, or Google Advertising ID. Mixed types are allowed in one upload.
  • Processing: usually 20 to 30 minutes, varying with file size. Statuses are Processing, Ready and Failed.
  • Attachment: audiences apply at campaign level, alongside objective, budget, dates and locations.

Campaigns can use inclusion, exclusion, or both at once.

The threshold, and the number that is not published

Here is where the common framing of this topic is wrong, including the version we would have written three months ago. The threshold is published. It is 25,000 matched users for inclusion targeting or bid adjustments, with 100,000 recommended, and when inclusion and exclusion are combined the eligible audience after exclusions must still clear 25,000.

What is not published is the match rate. And that is the number you would need.

Matched users are not uploaded records. They are the subset of your list that OpenAI can resolve to a ChatGPT user. Nothing in the documentation states what proportion of a clean B2B email list typically matches, and no advertiser has published a figure.

Work the arithmetic with placeholder rates, and mark clearly that the rates are assumptions:

Uploaded records At 20% match At 40% match At 60% match
10,000 2,000 4,000 6,000
50,000 10,000 20,000 30,000
100,000 20,000 40,000 60,000
250,000 50,000 100,000 150,000

Only the bottom two rows clear 25,000 with any confidence, and only the last row reaches the recommended 100,000 at a plausible rate. Work email addresses are the likely worst case, because people frequently sign up to ChatGPT with a personal address, and that is precisely the list a B2B advertiser has.

So the practical reading: if your CRM holds fewer than about 60,000 contacts, plan on the assumption that inclusion targeting is not available to you, and treat clearing the threshold as a pleasant surprise rather than a plan.

Suppression is the half that works

The rules changed in a way that matters, and recently. Through July 2026 the 25,000 floor blocked small audiences from being used in either direction. PPC Land reported that from the week beginning 31 August 2026, audiences below 25,000 matched users can be used for exclusions.

That single change is what makes the feature useful to a B2B advertiser at all.

The logic behind it is worth stating because it explains why the asymmetry is unlikely to be reversed. A small inclusion audience narrows delivery onto a handful of identifiable people, which is the privacy problem the floor exists to prevent. A small exclusion audience only removes people. It cannot be used to single anyone out.

Four suppression jobs are worth doing on day one, and all of them are available regardless of list size:

Existing customers. On a channel with no search terms report you cannot see that you are paying to reach people who already pay you. Upload and exclude.

Open pipeline. Deals already in a sales process do not need to be re-acquired at a four dollar CPC. This is the list that grows fastest and gets refreshed least.

Closed-lost, disqualified. The companies you turned down, or who turned you down for structural reasons. Every click from this list is a click you know is waste before it happens.

Recent applicants and job seekers. A category that is otherwise unblockable, since there is no negative keyword layer to exclude career intent with.

That last point generalises. ChatGPT Ads has no exclusion layer of any kind at the targeting level. Suppression lists are the only true exclusion mechanism the platform offers, which raises their value well above the equivalent feature on Google or Meta, where negatives do most of that work.

Refresh cadence, and the cost of not having one

Because audiences attach at campaign level and are static uploads, a suppression list decays from the moment it is uploaded. Every deal closed since upload is a customer you are still paying to reach.

Monthly is a reasonable cadence for customers and closed-lost. Open pipeline deserves more frequent attention if your sales cycle is short, because it is the list where staleness costs the most per record. Processing takes 20 to 30 minutes, so the operational cost is low and the reason it does not happen is that nobody owns it.

What we cannot tell you

  • What match rate to expect. OpenAI publishes no match rate, and no advertiser has published one. This is the number that decides whether inclusion targeting is available to you, and it is the one number missing.
  • How many matched users your list produced relative to what you uploaded. Whether Ads Manager surfaces a matched count before a list is usable is not described in the documentation.
  • Whether custom audiences operate in every serving market. One third-party write-up reports that custom audiences do not function in the EEA or Switzerland and that only OpenAI's developer documentation says so. We have not confirmed this against the help centre, and it should be treated as a single unverified source rather than a fact.
  • Whether lookalike or expansion features are planned. Not on any published roadmap.
  • How long an uploaded audience persists. No retention or expiry period is documented.

Quick answers

What is the minimum audience size for ChatGPT Ads custom audiences? 25,000 matched users for inclusion targeting or bid adjustments, with 100,000 recommended. Since the week beginning 31 August 2026, audiences below 25,000 can be used for exclusions.

Can I retarget website visitors on ChatGPT Ads? No. Custom audiences are first-party list uploads only. There is no behavioural retargeting, no third-party segments and no lookalike expansion.

What file format and identifiers are accepted? UTF-8 CSV or TXT up to 500 MB, containing email addresses, phone numbers, SHA-256 hashed emails or phones, or Google Advertising IDs. Mixed identifier types are allowed in one file.

My list is too small to target. Is it useless? No. Small lists still work as exclusions, and suppression is the more valuable use for most B2B advertisers, because ChatGPT Ads has no other exclusion layer at all.

How long does an audience take to process? Usually 20 to 30 minutes, varying with file size, moving through Processing to Ready or Failed.

Can I use inclusion and exclusion together? Yes, but the eligible audience remaining after exclusions must still meet the 25,000 matched user minimum.

Sources

Claim Source Tier
Inclusion targeting and bid adjustments require at least 25,000 matched users, with 100,000 recommended OpenAI Help Center, Set up Custom Audiences for your Campaign, 2026 Confirmed, primary
Combined inclusion and exclusion must still leave 25,000 matched users eligible OpenAI Help Center, Set up Custom Audiences for your Campaign, 2026 Confirmed, primary
UTF-8 CSV or TXT up to 500 MB; email, phone, SHA-256 hashed email or phone, or GAID OpenAI Help Center, Set up Custom Audiences for your Campaign, 2026 Confirmed, primary
Processing usually takes 20 to 30 minutes OpenAI Help Center, Set up Custom Audiences for your Campaign, 2026 Confirmed, primary
Audiences below 25,000 matched users became usable for exclusions from the week of 31 August 2026 PPC Land, 2026 Reported
The 25,000 floor previously blocked small audiences in both directions, documented July 2026 PPC Land, 2026 Reported
Custom audiences reported as unavailable in the EEA and Switzerland Soku, 2026 Reported, third party, single test
Custom audiences are first-party upload only, with no third-party segments or behavioural retargeting OpenAI Ads Manager documentation, 2026 Confirmed, primary
No published match rate OpenAI documentation, by absence Absent
Match rate scenarios at 20%, 40% and 60% Illustrative assumptions, not measured figures Inference, ours
  • Can You Exclude Conversations on ChatGPT Ads?
  • How to Structure a ChatGPT Ads Account When There Are No Keywords
  • How to Measure ChatGPT Ads, and What You Cannot Measure Yet
  • ChatGPT Ads Eligibility: Which Countries and Which Businesses
  • Platform Targeting on ChatGPT Ads: the Setting Nobody Configures

Changelog

12 September 2026, v1.0. First publication. Corrects the common claim that the audience threshold is unpublished, records the August 2026 exclusion exemption, and identifies match rate rather than threshold as the missing number.

Field kit

Tools

Site

OpenAI (primary)

Share this

KP

Keshav studies how AI systems retrieve, verify, and cite brand information. At InPromptAds, he leads source research and turns platform documentation into practical guidance for advertisers.

Get placed before the self-serve rush.

We're onboarding a founding cohort of B2B brands for managed ChatGPT ad placements. Early access, limited seats.

Now capturing early access
Contact us Contact us