Knowledge base: programmatic buying

Supply path optimization with domain data

Supply path optimization usually starts with fees and seller files. This guide adds the piece most teams skip: what each path actually reaches, measured by domain category, country, popularity and parked status.

What supply path optimization means

The same ad slot can reach a buyer through several exchanges and resellers at once. Supply path optimization, often shortened to SPO, is the choice of which of those routes to keep. The goal is to pay fewer fees, see more clearly, and spend on inventory you actually want.

Duplicate routesOne impression is often offered through many paths, so buyers end up bidding against themselves.
Hidden feesEach reseller in the chain takes a share, so the publisher receives less of what the buyer pays.
Weak contextPaths are judged on price and win rate, rarely on what kind of sites they lead to.
Moving targetPublishers change partners and new domains enter the bid stream every day.

Where this guide fits: it assumes you already read seller files and want to go further. The focus is on joining every domain in your logs to a category, a country and a popularity band, then using those labels to rank paths. It suits DSP teams, agency trading desks, in-house programmatic teams and exchanges reviewing their own supply.

What you will end up with: a monthly path table, a short scoring rule your traders can read, a category based allow list and block list, and a small set of alerts that flag paths drifting into parked, risky or off topic inventory between reviews.

The three inputs to a supply path decision

Good SPO combines cost, transparency and reach. Domain data is the third leg, and the one that turns a cost exercise into a quality exercise.

Cost and performance

Fees, take rates, win rates, bid density, timeouts and the outcomes each path delivers. These come from your own logs and your partners' reports.

Transparency

ads.txt authorization, sellers.json identity, complete chains and the number of hops. Our guide to ads.txt and sellers.json covers each field.

Reach by domain

The topics, countries, popularity bands and risk categories of the domains a path delivers. This is where a categorized domain database fits.

Domain signals that change path decisions

Each signal below can be joined to your bid logs by domain. None of them needs page level scanning at bid time, which keeps the work cheap and fast.

SignalWhat it tells you about a pathTypical rule
IAB Content Taxonomy categoryWhich topics a path reaches, down to tier 2 or tier 3.Keep paths that reach your target topics at a good price.
Web filtering categoryRisk classes such as adult, gambling, malware or parked.Cut paths where risky categories make up a large share.
Parked / For-Sale flagDomains that show ads but carry no real content.Exclude outright, whatever the path.
Popularity bandWhether a path leads to well known sites or the deep long tail.Weight paths by reach into the bands you value.
CountryWhere the sites in a path are based or mainly used.Match paths to campaign markets.
Multiple categoriesWhether sites are focused or scattered across many topics.Prefer focused sites for contextual campaigns.
Domain ageNewly registered domains entering a path.Hold new domains on a watch list until they are categorized.

The full list of labels is in our category taxonomy, and the dual taxonomy guide explains why both label sets sit on the same row.

A six step workflow

This is a workflow a media buying team or a DSP can run each month. It assumes you have bid logs with domain, exchange and seller ID for each request.

1. Build the path table

Group bid requests by domain, exchange and seller ID. Each unique combination is one path. Count requests, bids, wins and spend for each.

2. Attach seller file status

Mark each path as authorized or not in the site's ads.txt, and note the seller type and chain length. Unauthorized paths are usually the first to go.

3. Join domain categories

Look up every domain in the category file and add topic, risk category, country and popularity band. A local file makes this a simple join on millions of rows.

4. Score each path

Combine cost, transparency and reach into one score. Keep the weights simple and written down, so traders can follow the logic.

5. Decide keep, cap or cut

Keep the best path to each important domain. Cap paths that add some unique reach. Cut paths that duplicate others or land mostly on unwanted categories.

6. Review and refresh

Rerun monthly with refreshed categories. Watch newly seen domains daily, since they enter the stream before anyone has reviewed them.

Example: scoring three paths to the same site group

An invented example of a buyer targeting home and garden content in two markets. Three paths reach overlapping sites. The scores are illustrative, not benchmarks.

PathHopsShare in target topicParked or risky sharePopular band shareDecision
Exchange 1, direct sellers1HighVery lowHighKeep
Exchange 2, one reseller2MediumLowMediumCap
Exchange 3, two resellers3LowNoticeableLowCut

What the domain data changed: on price alone, path 3 looked attractive. Once each domain carried a category and popularity band, it was clear that its low cost came from long tail and parked inventory that the campaign did not want.

Allow lists and block lists built from categories

SPO decides the route. Domain lists decide the destination. The two work best together, because a clean path to the wrong site is still wasted spend.

Category based allow lists

  • Start from the IAB categories that match the campaign topic.
  • Filter to the target countries and popularity bands.
  • Remove anything in risky web filtering categories.
  • Refresh monthly so new sites in the topic join the list.

Category based block lists

  • Parked / For-Sale Domains and Malware / Phishing / Suspicious.
  • Categories outside your brand suitability profile.
  • Thin ad pages from a made for advertising sites list.
  • Newly seen domains until they carry a category.

If your team is deciding which topics count as unsafe, our page on brand safety categories walks through risk tiers. Export options for list files are covered in domain list download formats.

SPO from the sell side

Buyers are not the only ones cutting paths. Exchanges, sales houses and publisher groups use the same data to stay on the right side of those cuts.

Packaging inventory

Group supply into topic packages, such as automotive or travel, using IAB categories rather than hand built site lists.

Cleaning supply

Remove parked and for-sale domains before buyers find them, which protects the exchange's reputation in path reviews.

Explaining reach

Show buyers what share of supply sits in each topic, country and popularity band, so path reviews start from facts.

Vetting new sellers

Check a new publisher's domains against categories before onboarding. See publisher monetization for related uses.

Mistakes to avoid

Supply path work can backfire when it is done in one big cut, or when it ignores what each path uniquely reaches.

Cutting on price alone

The cheapest path is often cheap for a reason. Look at what it reaches before you keep it, and before you cut a pricier one.

Losing unique reach

Some resold paths are the only route to certain niche sites. Check category coverage before removing a path entirely.

Static lists

A list built once ages fast. New domains appear daily and parked domains change hands, so build refresh into the process.

Opaque scoring

If traders cannot see why a path was cut, they will add it back. Keep rules short and keep a note of each decision.

Ignoring country

A path can look strong overall but be weak in your target market. Split scores by country before deciding.

Page level only thinking

Page checks at bid time are slow and costly. Domain level categories handle most decisions upstream and leave page checks for edge cases.

Measuring whether it worked

Set the measures before the first cut, so you can tell a real gain from a reshuffle of the same spend.

Unique reachCount distinct domains in your target categories reached before and after. It should hold steady or grow.
Working media shareTrack how much of each dollar reaches publishers rather than intermediaries, using partner reports.
Unwanted shareMeasure spend landing in parked, risky or off topic categories. It should fall sharply.
Campaign outcomesCompare the results you care about, such as conversions or attention, on matched budgets.

A simple path score you can explain

Complex models are hard to defend in a trading meeting. A short weighted score, built from a few columns, is usually enough to rank paths and start the conversation.

ComponentHow to measure itExample weight
Topic fitShare of a path's spend landing on domains in the campaign's IAB categories.30%
Clean inventoryOne minus the share landing on parked, malware or blocked filtering categories.25%
Reach qualityShare of spend in the popularity bands and countries you value.15%
TransparencyAuthorized in ads.txt, named seller, complete chain, few hops.15%
CostEffective cost after fees, compared with the cheapest path to the same domains.15%

Tip: the weights are a starting point, not a standard. A performance campaign may lift cost, while a brand campaign may lift clean inventory. Write the weights down and keep them stable for a full review cycle.

Web, app and CTV paths behave differently

The same method works in each channel, but the key that joins logs to domain data differs. Plan the join before the first review.

Open web

The site domain in the request is the join key. Normalize it to the registered domain, strip www, and keep subdomains only where they host different content.

Mobile apps

Requests carry a store ID. The developer website from the store listing links the app to a domain, which you can then categorize and check against app-ads.txt.

Connected TV

Prices are high and spoofing pressure is strong. Developer domains and channel publisher domains give a first layer of context before deeper checks.

Who usually owns the work

SPO cuts across teams. Naming an owner for each part prevents the classic outcome where every team assumes another one is reviewing paths.

Buy side roles

  • Programmatic lead: sets the rules and signs off on cuts.
  • Data analyst: builds the path table and the domain join.
  • Traders: apply caps and report unexpected drops in delivery.
  • Brand safety owner: maintains the category block list.

Sell side roles

  • Supply quality team: removes parked and risky domains.
  • Partnerships: keeps seller files aligned with partners.
  • Product: builds topic packages from categories.
  • Sales: explains reach by category and country to buyers.

Quick glossary

Short definitions for terms used across this guide.

Path

One combination of domain, exchange and seller ID through which an impression reaches a buyer.

Take rate

The share of the buyer's payment kept by an intermediary rather than passed to the publisher.

Bid duplication

The same impression offered several times through different paths, so a buyer may bid against itself.

Allow list

A list of domains a campaign may buy on. Built from categories, it grows as new sites in the topic are categorized.

Popularity band

A range that places a domain among the most visited sites globally or in a country, used to weigh reach.

Long tail

The very large number of small sites with little traffic each. Useful for niche reach, risky without context.

Data you need and how to hold it

The work is a large join, so a local copy of the category data is usually easier than calling an API for every domain in the logs.

From your own systems

  1. Bid request logs with domain or app, exchange and seller ID.
  2. Win and spend data by the same keys.
  3. Crawled ads.txt and sellers.json snapshots.
  4. Campaign outcomes joined by line item.

From a categorized domain database

  1. Web filtering and IAB categories per domain, ranked by fit.
  2. Country and country level popularity band.
  3. Global popularity band.
  4. Daily newly registered domains, monthly full refresh.

Our comparison of API versus database explains when each access mode fits. Most SPO teams use the file for the monthly join and the included lookup API for one off checks.

Warning signs that a path needs review

Between monthly reviews, a few simple alerts catch most problems early. Each can run on the same joined table.

SignalLikely causeFirst action
Sudden jump in new domains on one pathA reseller added a batch of unknown sites.Hold the new domains until each carries a category.
Parked share rising week on weekExpired domains bought for ad traffic.Cut the path or block the parked domains directly.
Topic mix drifting away from targetSeller packages changed or were relabelled.Compare category shares with last month and ask the seller.
Country mix not matching targetingTraffic sourced from other markets.Split the path score by country and cap weak markets.
Spend concentrated on a few tiny sitesPossible arbitrage or invalid traffic.Check popularity bands and run traffic quality checks.

Why categories matter for alerts: without a label on each domain, a new batch of sites looks like any other growth. With categories, the same batch shows up as "200 parked domains" or "a new cluster of gambling sites" and the response is obvious.

Frequently asked questions

What is supply path optimization?

It is the practice of choosing which routes a buyer uses to reach the same ad inventory. The buyer keeps paths that are cheaper, clearer and better at reaching the sites it wants, and drops the rest.

Why does domain data matter for SPO?

Most SPO looks at fees, win rates and seller files. Domain data adds what each path reaches. A path can be cheap and transparent yet lead mostly to parked domains or thin ad pages.

Is SPO only for large buyers?

No. Smaller teams can start with simple rules: keep direct paths to known sites, cap resellers, and exclude parked and for-sale domains. Categories make those rules easy to write.

How often should supply path rules be reviewed?

Most teams review monthly, matching monthly category refreshes, and watch newly registered domains daily. Paths change as publishers switch partners.

Do sellers also use supply path data?

Yes. Exchanges and sales houses use categories to package inventory, explain reach by topic and country, and remove domains buyers would filter anyway.

Which categories are most useful for SPO?

IAB categories for topic, web filtering categories for risk such as parked or malware, plus country and popularity bands. See the IAB categories list for the topic labels.

Know what every path reaches

Category, country and popularity data for over 120 million domains, in files that join straight onto your bid logs, with a lookup API included.

IAB is a trademark of the Interactive Advertising Bureau. It is named here only to identify the content taxonomy discussed. URL Categorization Database is not affiliated with, sponsored or endorsed by the Interactive Advertising Bureau.

echo '';