← Back to glossary

Audience Matching

Audience matching is a ChatGPT Ads targeting method where you upload first-party identifiers like emails, phone numbers, or Android advertising IDs so OpenAI can match them to real ChatGPT accounts and serve your ads to those people. It differs from context hints, which only describe the kind of conversation where your ad fits and never name specific people.

If you already hold a consented customer list, audience matching lets you decide whether to re-engage those buyers inside ChatGPT or exclude them so your budget chases new demand. Skip it, and you pay to reach strangers while your warmest, highest-converting contacts go untouched.

What is audience matching?

Audience matching connects your own customer records to ChatGPT's logged-in users so your ads reach people you can already identify by email, phone number, or mobile advertising ID. OpenAI's ChatGPT Ads documentation describes how it matches the identifiers you upload against its account base, building a targetable segment without exposing which individuals were found. The feature lives in the ChatGPT Ads Manager, and OpenAI began testing ads in ChatGPT in the United States in February 2026.

The match works on identifiers instead of raw profiles. You can submit emails and phone numbers as plain text or as SHA-256 hashed strings, plus Android or Google advertising IDs. OpenAI's documentation says it deletes the uploaded file after processing and counts only verified matches, so invalid, duplicate, and unmatched rows do not count.

Audience matching belongs to the eligibility layer of ChatGPT ads, deciding who can see an ad. Context hints and the current conversation decide which ad is relevant once a user qualifies. Pairing a clean matched list with content that answers the questions your audience asks AI assistants, which AirOps helps you discover, keeps both layers aligned.

How audience matching works

Audience matching runs as a short pipeline from your data to a usable ad segment. Each step depends on the one before it, and a weak link early on shrinks the audience you can reach.

  1. Collect data: Pull consented emails, phone numbers, or mobile advertising IDs from your CRM or customer database into a single file.

  2. Format or hash: Submit the identifiers as plain text or convert them to SHA-256 hashes so raw details never leave your systems in readable form.

  3. Upload: Load the file into the ChatGPT Ads Manager, where OpenAI compares your identifiers against its logged-in accounts.

  4. Match and size: OpenAI keeps only the records that resolve to real accounts and reports whether the segment is large enough to use.

  5. Apply: Set the matched audience as an inclusion or exclusion on a campaign, then pair it with context hints and a relevant landing page.

The output tells you how many of your contacts OpenAI could recognize and lets you aim spend at them. It does not tell you who matched, so you cannot see or hand-pick the individuals inside your own audience.

The importance of Audience Matching for marketers

Whether to invest in audience matching comes down to a buying decision about your first-party data. If you have a list of real customers and the consent to use it, matching turns that asset into reach on a surface where most targeting is still driven by conversation context. If you do not, you are bidding blind against everyone else for the same anonymous attention.

  • Reuses an asset you already own: Your CRM list becomes a targeting input on ChatGPT without new data collection, extending the value of work your team has already done.

  • Fails quietly on thin lists: OpenAI's ChatGPT Ads documentation sets a floor of 25,000 matched users for audience inclusion or bid adjustments, so a small or stale list can resolve below that threshold and simply never serve, with budget defaulting to broad targeting you did not intend.

  • Controls waste through exclusion: Suppressing existing customers or recent converters keeps acquisition budget pointed at new demand instead of people who would have bought anyway.

Marketer use cases

  1. Growth marketers use audience matching to re-engage trial users who never upgraded, serving them sponsored ChatGPT ads timed to their renewal window.

  2. Demand gen leads use audience matching to exclude closed-won accounts so pipeline budget reaches only net-new companies across campaigns.

  3. Content strategists use audience matching to test which existing-customer segments respond to ChatGPT ad creative before scaling paid spend.

Key concepts

Identifier hashing

SHA-256 hashing converts raw emails and phone numbers into fixed-length codes before upload, so you can match customers to accounts without exposing readable personal data to the ad platform, which protects users and keeps you within consent requirements.

Match rate

Match rate is the share of uploaded identifiers that resolve to real accounts, and it sets your usable audience size; it varies widely with data quality and how many of your customers hold accounts on the platform, so treat it as a per-platform number you measure instead of a fixed target you assume.

Inclusion versus exclusion

An inclusion audience makes your ads eligible only to matched users and must clear OpenAI's matched-user minimum, while an exclusion audience can be small or empty and carries no such floor, which is why suppression is often the faster first use.

Benefits

  • Reach known customers directly inside ChatGPT conversations instead of cold audiences.

  • Exclude existing buyers so acquisition budget stops funding people who already converted.

  • Protect first-party data by uploading SHA-256 hashed identifiers that OpenAI deletes after processing.

  • Extend one consented customer list across ChatGPT, Google, and Meta ad platforms.

  • Sharpen relevance by pairing a matched audience with context hints and a tailored landing page.

Audience Matching best practices

  • Collect explicit consent before uploading any list, because matching customer data without it violates platform policy and privacy law.

  • Lead with email identifiers, since they tend to produce higher match rates than mailing addresses or names alone.

  • Refresh your lists regularly, as stale contacts decay and drag your matched audience below usable size.

  • Segment lists by lifecycle stage, so you can include high-intent prospects and exclude recent converters in the same campaign.

  • Hash identifiers yourself when you can, to keep raw customer data inside your own systems.

  • Align the matched audience with context hints and the landing page, because ChatGPT still weighs conversation relevance after a user qualifies.

Avoid treating a matched audience as a purchased list. Audience matching only works with first-party data from people who have a real relationship with your business, and loading in bought or scraped contacts breaks consent rules and poisons your match quality at the same time.

Tools and technologies

  • AirOps: Surfaces the real questions your audience asks AI assistants so you can shape context hints and landing pages that complement a matched audience in ChatGPT.

  • ChatGPT Ads Manager: OpenAI's platform where you upload identifier lists, build matched audiences, and set them as inclusions or exclusions on a campaign.

  • HubSpot: A CRM and customer data platform for exporting clean, consented email and phone lists ready to upload for matching.

Getting started with Audience Matching

  1. Audit your data: Export your current customer and lead lists from your CRM this week and check which records include email addresses or phone numbers. No budget or approval is needed to see what you already have.

  2. Confirm consent: Verify that each contact has agreed to marketing use, and drop any record you cannot document, since consent is a hard requirement for upload.

  3. Format the file: Clean and standardize the identifiers, then hash them with SHA-256 if your tools support it, so the file is ready for the ads platform.

  4. Build the audience: Upload the file in the ChatGPT Ads Manager and review how many identifiers matched before you commit any budget to the segment.

  5. Apply and measure: Attach the matched audience to a campaign as an inclusion or exclusion, pair it with context hints, and track cost and conversions against your broad-targeting baseline.

Key takeaways

  • Audience matching lets advertisers upload first-party identifiers so ChatGPT can serve ads to known customers inside their conversations.

  • It is done by hashing or submitting emails, phone numbers, or advertising IDs and letting OpenAI match them to accounts.

  • The usable audience is capped by match rate, so only recognized contacts count toward your reach on the platform.

  • Lists without consent, or too few matches, can violate policy or fail to serve at all.

  • The biggest advantage is exclusion, which keeps acquisition budget off customers you have already won.

Frequently asked questions about audience matching

How is audience matching different from context hints in ChatGPT ads?

Audience matching and context hints solve two different problems, so most campaigns use both. Audience matching decides who is even eligible to see your ad by matching uploaded customer identifiers to ChatGPT accounts; it works from a list of people you can already name. Context hints do something looser. They describe the topics, keywords, or situations where your offer fits, and OpenAI treats them as guidance for relevance instead of a strict targeting filter. In practice, audience matching narrows the pool to people you have a relationship with, and context hints help OpenAI judge whether your ad suits the conversation a matched user is currently having. You can run context hints with no customer list at all, which is how many advertisers start. Once you have a large enough consented list, adding a matched audience on top gives you a second, sharper layer of control over who your spend reaches.

How often should I refresh my audience matching lists for ChatGPT ads?

Refresh your audience matching lists on a regular cadence, and treat monthly as a sensible default for most B2C programs and quarterly for slower B2B cycles. The right interval depends on how fast your customer data changes. A high-volume ecommerce list gathers new buyers and stale addresses quickly, so a monthly upload keeps the matched audience current and large enough to stay usable. A list of enterprise accounts turns over slowly, so refreshing every quarter is usually enough. Two things should trigger an off-cycle refresh regardless of calendar: a noticeable drop in how many identifiers match, and any major change to your database, such as a migration or a big import. The goal is to keep the segment from decaying below the size it needs to serve. Set a recurring reminder, re-export from your CRM, and re-upload instead of letting a single list run untouched for months while its match quality quietly erodes.

Why does my audience matching match rate vary across advertising platforms?

Your audience matching match rate varies because each platform recognizes a different slice of your contacts. A match only happens when the identifier you upload equals one the platform already has on file for a logged-in user. People sign up for ChatGPT, Google, and Meta with different emails and phone numbers, so the same list lands differently on each one. ChatGPT accounts are newer and often created with a single email, which gives the platform fewer signals to match against than a long-standing Google or social account. Data quality on your side matters just as much: typos, outdated addresses, and missing phone numbers all fail to resolve. The identifier type changes the odds too, since emails usually match better than other fields. Because of all this, treat each platform's match rate as its own number, and judge a list by whether the resulting audience is large enough to serve on that specific platform.

Can I control exactly who sees my ads with audience matching?

Not exactly, and it helps to be clear about the limit. Audience matching lets you define a group by uploading identifiers, but OpenAI never shows you which individuals matched and gives you no way to hand-pick specific people inside the segment. You control the input, which is the list you upload and whether you use it to include or exclude. You do not control the output at the person level. You also cannot force an ad to serve to a matched user on demand, because OpenAI still weighs conversation relevance, your creative, and auction conditions before showing anything. What you can do is tighten the inputs you own: upload a cleaner, better-consented list, segment it by lifecycle stage, and pair inclusions or exclusions with context hints so the eligible pool is as precise as possible. Think in terms of shaping a well-defined audience, and let the platform handle individual delivery within it.

What counts as a good audience matching rate for ChatGPT ads?

A good audience matching rate is less about hitting a universal percentage and more about clearing the size your campaign needs to run. Because ChatGPT accounts are newer and often tied to a single identifier, expect lower match rates here than on established ad platforms, and plan your list size accordingly. The practical benchmark is whether enough identifiers resolve for the audience to become usable for inclusion, and whether that number is stable each time you refresh. If a large, clean, consented list still returns a thin match, that is a signal your contacts may not overlap much with ChatGPT's user base yet; it is rarely a sign you did something wrong. Judge quality by three things: the raw match count relative to the inclusion threshold, the consistency of that count across uploads, and the downstream performance of the matched audience once it serves. A smaller audience that converts well beats a larger one that does not.