How curation changes a deal's supply path, and how buyers trace it
Part of Curated deals and PMPs

The short answer
Curation changes a supply path only when the curator handles payment or takes custody of the bid request. A curator that resells adds a node to the SupplyChain object; one that only packages sites or supplies data adds none. Buyers apply the same ads.txt, sellers.json and schain checks to curated deals, then confirm the path in bid and delivery logs.
Key takeaways
- Packaging inventory is a commercial role; adding a node is a transaction role, and a curator can hold one without the other.
- SupplyChain version 1.0 lists only the parties in the payment flow, while draft 1.1 guidance adds parties that route the bid request.
- Curation can sit on a short direct path or on a resold one, so a shorter path has to be shown in the requests, not assumed.
- The deal ID, the transaction ID and the schain string in the same logged request are what tie a curated impression to its path.
How does a curated deal change the supply path?
A supply path is the sequence of companies that sell an impression from the publisher to the buyer's platform. A curated deal is a package of inventory under one deal ID. The two overlap but are not the same thing. The Deals API specification (opens in a new tab), finalized by IAB Tech Lab on February 6, 2026, says it adds "transparency into Curated deals that is not currently available in the bid stream," which means the bid stream alone does not reveal how a deal was packaged.
What changes the path is the curator's position in the transaction. The table sets out five arrangements a buyer may meet and what each does to the SupplyChain object. They are illustrations built from the specifications' rules, not a survey of the market.
| Arrangement | Who packages the deal | Effect on the SupplyChain object |
|---|---|---|
| Publisher packages its own sites | The publisher, on its own exchange account | No added node; the exchange that pays the publisher is the only node |
| Exchange packages its sellers' sites | The exchange that runs the auction | No added node; the curator and the selling system are one company |
| Data company selects or decorates requests | A company paid a fee outside the bid stream | No node in version 1.0; draft 1.1 guidance also leaves out entities that only provide data |
| Curator resells inventory | A company with its own seller account that buys and resells | One more payment node, appended after the upstream seller |
| Curator routes requests | A company that takes custody of the request without handling payment | No node in version 1.0; under draft 1.1 guidance, a node with hp set to 0 |
Does a curator appear in the SupplyChain object?
Only in two of those five cases. The published SupplyChain object (opens in a new tab) is version 1.0. In it, each node's hp field "Indicates whether this node will be involved in the flow of payment for the inventory," and for this version the value should always be 1. A reseller is required to add itself: the document says it is invalid for a reseller to copy the previous seller's object without inserting its own node.
IAB Tech Lab's draft implementation guidance (opens in a new tab), on the development branch of its Supply Chain Validation repository, widens the scope for version 1.1. It says the chain discloses entities "that have the ability to initiate or route bid requests to another entity," which it labels technical hops, and that "Entities that only provide data or recommendations but do not take control of the request are out of scope." A curator that only chooses sites or adds audience data stays invisible in schain under both versions.
Can curated deals shorten supply paths?
They can, and they can also lengthen them. A curated deal built on publishers' direct accounts at one exchange can replace several resold paths to the same sites with one. A curated deal sold by a reselling curator adds a payment node to each impression it carries. Which one a buyer has is a fact about the specific deal, visible in its bid requests, and no standard guarantees either outcome.
| Situation | Likely effect on path length | How to confirm |
|---|---|---|
| Deal built on the publishers' DIRECT accounts at the deal's exchange | Can shorten it, if open market buys of the same sites ran through resellers | First node matches a DIRECT line in each site's ads.txt, and the chain has one node |
| Deal sold by a curator that resells | Lengthens it by one payment node | A second hp 1 node whose asi is the curator's selling system |
| Deal from a data company, inventory on the publishers' paths | No change to length | Same chain on the deal as on open market requests for the same site |
| Deal whose requests carry an incomplete chain | Unknown | The complete flag is 0, so nodes before the first listed one are missing |
Length is also only one measure. IAB Tech Lab's guidance says supply chain information matters to buyers for reasons that include ensuring "that all intermediaries are entities with which the buyer wants to transact and that inventory is purchased as directly as possible." A two node path through a reseller the buyer already trusts can serve a plan better than a one node path that cannot be matched to ads.txt.
How should SPO rules apply to curated deals?
A deal ID does not exempt an impression from supply path rules. The validation methods in IAB Tech Lab's guidance apply to the request whatever deal it carries. The guidance also warns that "The presence of a sellers.json or SupplyChain object does not guarantee correctness," and that consumers should expect and defend against potentially falsified information. The rules below apply those methods to a curated deal; our supply path guide covers the open market version.
Five SPO rules for a curated deal
- Match the first node to ads.txt. The guidance says to check that the first node is listed as a DIRECT seller in the publisher's ads.txt; if not, a node may have been removed or the publisher mislabeled the line.
- Check the first node's seller type. When the complete flag is 1, the first node's sellers.json entry should have seller_type PUBLISHER, or nodes are missing.
- Chain the payment nodes. For each hp 1 node, the name behind its seller ID should match the advertising system in the node before it, or the chain is broken.
- Skip non-payment nodes in validation. Under draft 1.1 guidance, validation skips hp 0 nodes and looks instead for is_passthrough set to 1 and a matching sellers.json entry.
- Apply the open market path rules. If a buyer limits resold paths or named intermediaries on open market buys, the same limits apply to the deal's requests.
SPO questions for a curated deal before it is accepted
- The exchange the deal runs on is named, and each listed site authorizes that exchange in its ads.txt.
- The buyer knows whether the curator holds a seller account and, if it does, its seller ID and seller_type.
- A sample bid request for the deal carries a SupplyChain object with the complete flag set to 1.
- The schain version in the sample request is stated, so hp 0 nodes are read under the right rules.
- Each node's asi can be matched to a sellers.json file the buyer has opened.
What logs show a curated deal's path?
The path of a single impression is recorded in the bid request and the bid response, not in any summary report. The OpenRTB 2.6 specification (opens in a new tab) places schain in the Source object, next to tid, the "Transaction ID that must be common across all participants in this bid request (e.g., potentially multiple exchanges)." Both are marked recommended, not required, so ask the exchange whether its requests carry them. A bid made under a deal returns the deal's ID in the bid's dealid field.
| Field | Where it sits | What it links |
|---|---|---|
| id | BidRequest | The request as the exchange tracks it; the exchange may use different values for different recipients |
| tid | BidRequest.Source | The same opportunity across participants, including several exchanges |
| schain | BidRequest.Source | The nodes that sold the impression, and whether the chain is complete |
| Deal id | BidRequest.Imp.Pmp | The deal the impression was offered under |
| dealid | Bid, in the response | The deal the buyer bid on, referencing the Deal id |
| Inventory Source ID (External) | Display & Video 360 reports | The seller's own identifier for the deal, next to Exchange and App/URL |
Platform reports carry the deal side of the record. Display & Video 360's report dimensions (opens in a new tab) include Exchange, Inventory Source ID (External) and App/URL. Joining a report row to the request log needs the external deal ID on both sides, so it belongs in the deal's written terms.
What does tracing a curated path look like on a real brief?
Fictional example
A transit ridership campaign checks its curated deal's path
An unnamed public transit agency in Rhode Island wants display beside local news, commuting and city life content in Providence, Warwick and Newport, in English, priced in USD. The agency's media buyer is offered a curated private auction of 28 local sites, packaged by a curator that resells through its own seller account on an exchange.
Before accepting, the buyer asks for a sample bid request. Its schain has two hp 1 nodes, the exchange that pays the publishers and then the curator's account, with the complete flag set to 1. Each site's ads.txt lists the first node's account as DIRECT, and the curator's sellers.json entry shows seller_type INTERMEDIARY.
The buyer's open market rules allow one named intermediary, so the deal passes, and the extra node goes into the buy record. After launch, the trader joins the delivery report to sampled request logs by the external deal ID and checks the chain on each delivered site.
Which parts of a curated path can PlacementGraph check before the deal?
Frequently asked questions
Does a curated deal need its own ads.txt line?
The publisher's ads.txt authorizes seller accounts on advertising systems, not deals. If a curated deal runs on a publisher's existing DIRECT account at the exchange, no new line is needed. If a reselling curator sells the inventory through its own account, the guidance treats ads.txt records for payment handling nodes as a best practice, so the publisher should list that account as RESELLER.
Can one curated deal carry different supply paths for different sites?
Yes. The deal ID is shared, but each impression arrives with its own SupplyChain object, so one site can come through its publisher's direct account and another through a reseller. Check paths site by site in sampled requests.
What does an incomplete chain on a curated deal mean?
The complete flag set to 0 means the chain does not reach back to the owner of the site, so at least one seller before the first listed node is missing. It is a reason to ask the exchange why, and to compare the site's ads.txt with the nodes that are present, before judging the path.
Is a curated deal on a reseller path worse than an open market buy?
Not by that fact alone. The ads.txt specification defines RESELLER as a publisher authorizing another entity to control the account and resell its ad space. Judge the path by whether each node is authorized and known to the buyer, and compare it with the path the buyer would otherwise use for the same site.
Sources
- SupplyChain object (opens in a new tab)IAB Tech Lab, OpenRTB repository
- Supply Chain Validation: Implementation Guidance (development branch) (opens in a new tab)IAB Tech Lab, Supply Chain Validation repository
- OpenRTB 2.6 specification (opens in a new tab)IAB Tech Lab, OpenRTB repository
- sellers.json specification (opens in a new tab)IAB Tech Lab, Supply Chain Validation repository
- ads.txt specification version 1.1 (opens in a new tab)IAB Tech Lab, Supply Chain Validation repository
- Deals API Specification v1.0 (opens in a new tab)IAB Tech Lab, February 6, 2026
- Report dimensions (opens in a new tab)Google, Display & Video 360 Help
Researched and written by PlacementGraph Research. Read how we research, source and update these pages. Corrections: diana@placementgraph.com.