5 min read

Negative Targeting: Why Your Ad Server Should Offer It

Chris Shuptrine
Chris Shuptrine
Updated on
May 4, 2020
Targeting Tactics

As you build your custom ad product, you'll likely contemplate what targeting features you should offer. One feature you'd be wise to consider is negative targeting.

This article will explore what negative targeting is and how to integrate it into your ad server using APIs.

What is negative targeting?

Negative targeting is where you set rules targeting a certain audience - but then exclude some segment within it. It can also be called exclusion targeting or domain blocking. In the past it's been referred to as 'blacklisting' as well, but the ad industry is rightly moving away from this term.

For instance, let’s imagine a situation where an advertiser wants to show ads to the state of New York, but not to New York City itself. Here, they could employ geotargeting of New York while implementing negative geotargeting of the NYC metro area.

What are examples of negative targeting?

  1. Geolocation - targeting a state, but excluding a city in it. Reason: the ride sharing app has no drivers in that city.
  2. Search terms - targeting specific search terms, but excluding certain phrases. Reason: a car maker may want to pay for a sponsored car listing for searches of “Honda”, but not “Honda Camry”, because those are out-of-stock.
  3. Contextual - placing ads on a news site, but excluding articles that would be off-brand to be alongside. Reason: an upbeat lifestyle brand does not want to appear alongside news articles about tragic events.
  4. Behavioral - buying ad space on a site/app, but excluding impressions to users who are already customers. Reason: a SaaS platform doesn’t want to show ads to someone who is already a paying customer.
  5. Demographic - buying ad space on a real estate listing app but excluding anyone who is a renter. Reason: a home improvement store may view renters as wasted impressions.
  6. Exclusion Targeting - buying traffic through an ad exchange, but excluding certain publishers in that network. Reason: an ad exchange may have 1000s of publishers, but a brand may want to exclude any sites with sexually-explicit content.

ad with inappropriate contextual targeting
Context is important - this cruise line is likely not happy with the ad placement

Why would I build negative targeting into my ad product?

As with all targeting options, you have to weigh the feature's potential revenue with the opportunity cost to build it. Some reasons to prioritize negative targeting include:

  • If your site/app has any content that could be deemed not-brand-safe by advertisers, then it could behoove you to offer them a way to opt-out from appearing alongside that content. Google, for example, allows buyers to opt-out of website, pages, and apps that contain certain types of potentially-off-brand content. A family-oriented, lifestyle company like Coca-Cola may choose to use this feature to not appear alongside profane content.

negative targeting example

  • It cuts down on campaign set-up times. Using the same New York example as above, you could theoretically exclude NYC by instead targeting every NY zip code that is not NYC. This is a lot more work than just targeting one state and excluding one metro.
  • It’s a feature offered by most of the large ad platforms, such as Facebook and LinkedIn. Feature parity with them helps make your product competitive for advertisers' ad budgets.

negative targeting example

  • It provides a better user experience. Let’s say you are showing internal promotions to upsell a one-time purchase. Excluding anyone that has already purchased saves those converted users from seeing an irrelevant promotion.

How do I start with negative targeting?

This type of targeting is possible if you’ve built your own ad server and are not reliant on JavaScript tags or code from third-party ad tech vendors. This article will assume you’ve built your own ad server from scratch or are using a JSON API solution like Kevel.

Implementing negative targeting involves a few steps:

Passing all relevant information in the ad request

The complexity of this will depend on the use case and level of automation.

For instance, contextual negative targeting - such as excluding news articles containing distressing topics - could be done through AI/ML that parses page content and passes relevant keywords.

Or, the editor, when launching the article, could just check an internal box named 'Sensitive Content', which gets hardcoded into the ad requests sent from that article.

If your negative targeting involves user-level data like demographic or behavioral data, you'll need a data management platform tied to a persistent ID. This ID would need to be passed in every ad request so your ad server can cross-reference the DMP to see if the user falls under an excluded segment.

The ability to set up exclusion targeting in your UI

Your internal or self-serve UI would need the ability to set negative targeting rules.

The implementation of this will depend on your vision; using the above example, you could have a checkbox where you exclude 'Socially-Sensitive Content'...or you could let advertisers choose specific words they don’t want to appear alongside (a more complicated approach).

Most platforms, additionally, enable this by having "And Exclude" rules whereby advertisers can exclude any metric they can also target against.

negative targeting example

An ad server that can honor exclusion targeting

Finally, you’ll need to architect your system to handle positive and negative targeting at scale, without small exclusions increasing load times and slowing down your site/app.

There are many ways to approach this, and it will also vary based on the type of targeting (such a geo, context, demographic, etc).

For example, if you're looking to incorporate contextual negative targeting (where advertisers can block, say, sensitive social topics), this is where we'd recommend your system have a feature we call Keyword Targeting - a way to create rules for targeting (or negatively targeting) keywords attached to each ad request.

Using Kevel's keyword targeting tools as an example, you could:

  1. Manually (or through automation) flag any pages containing offending content as "sensitive"
  2. Pass that "sensitive" flag as a "keyword" in the ad request
  3. Set rules so the ad won't be shown if the request contains "sensitive" as a "keyword"

negative targeting example
Here, the "!" operator means the ad won't show if "sensitive" is attached to the ad request

Is negative targeting GDPR/CCPA compliant?

Please note: we are not a law firm - we recommend consulting a lawyer for this. Below is for informational purposes only.

For many of the examples outlined above - such as search term and contextual targeting - no PII is involved, so they should be compliant by default.

Geolocation negative targeting is the same, as long as you aren't sharing the full IP Address/GPS data with a third-party.

The demographic/behavioral use cases are more grey since they could involve PII. The conservative route would be to prompt consent for EU users (and for the CCPA to enable opt-outs if requested), but we recommend talking with your lawyer to determine if this is needed.

How much does this cost?

The cost of building this feature will depend on the size of your engineering team and the scope of the project. This is where integrating your ad product with Kevel can expedite the process, as Kevel provides turnkey access to negative targeting functionality.

All ad tech in your inbox

Subscribe to our newsletter to stay up to date with the latest news.