Buyer Agents and Seller Agents

    Updated Jul 2026

    The term "agent" is used loosely in AI discourse. In the context of AI-native advertising, it has a specific technical meaning that is worth establishing before anything else.

    An agent is an AI system that takes actions on behalf of a principal — a person or organization with goals — using a defined set of tools and operating under constraints those goals imply. An agent is not a rule engine, which executes a fixed set of conditions. It is not a recommendation system, which produces outputs for a human to act on. An agent makes decisions and takes actions.

    The advertising ecosystem has two types of agents: those operating on the demand side and those operating on the supply side.

    The Buyer Agent

    A buyer agent acts on behalf of an advertiser or media buyer. Its principal might be a brand running a product campaign, an agency executing a media plan, or a trading desk allocating budget across clients.

    The buyer agent receives a campaign brief — a specification of what the campaign is trying to accomplish, who it is trying to reach, what the budget and timeline are, and what constraints apply. In a mature AI-native system, this brief might be expressed in natural language: "We are launching a product for professional audio equipment. Our audience is working musicians and home studio producers. Budget is $400,000 over six weeks. Exclude content involving personal injury or alcohol." In a more structured system, the brief is a typed data structure with explicit fields.

    The buyer agent's job is to translate that brief into supply decisions. It evaluates available supply descriptors — the machine-readable records that publishers or supply intelligence systems produce — and determines which opportunities are eligible, relevant, and sufficiently well-matched to the campaign's intent. It then either executes a buy directly or surfaces ranked recommendations for human review, depending on the level of autonomy configured.

    A buyer agent is not a DSP, though it may operate inside or alongside one. A DSP is an execution platform; a buyer agent is the reasoning layer that decides what to execute. The distinction matters because existing DSPs were designed for a world where humans make the strategic decisions. A buyer agent redesigns that assumption.

    In practice

    A buyer agent given the audio equipment brief above would evaluate a supply descriptor from a music production website. The descriptor might indicate: "This article covers recording techniques for home studios. Brand suitability: suitable for professional equipment marketing. Content freshness: updated within 30 days. Publisher: established music production publication." The agent compares these signals against the brief and determines fit — without a human checking a category list or a blocklist.

    The Seller Agent

    A seller agent acts on behalf of a publisher or content owner. Its principal is an organization that has inventory — web pages, streaming media, audio — that can carry advertising.

    The seller agent's core responsibility is to represent the publisher's supply to incoming demand. This involves two things: producing accurate descriptions of what is available (supply descriptors), and evaluating incoming demand signals to determine whether they are appropriate and acceptable.

    A publisher that sets up a seller agent is, in effect, automating their sales function for machine-driven buyers. Rather than a human sales team fielding inquiries and negotiating insertion orders, the seller agent handles machine-to-machine interactions. The publisher sets policy — what kinds of advertising are acceptable, what content categories are off-limits, what price floors apply — and the seller agent enforces that policy at scale.

    Seller agents are not SSPs. An SSP (supply-side platform) runs auctions and manages supply pipes. A seller agent reasons about demand signals and represents the publisher's interests in evaluating them. These functions can coexist in the same system, but they are architecturally distinct.

    How They Communicate

    The transaction between a buyer agent and a seller agent is a structured exchange, not an auction. Both sides bring information: the buyer agent brings demand intent (from the campaign brief), and the seller agent brings supply description (from the inventory). The exchange involves evaluating whether the two sides' constraints and goals are compatible.

    This exchange is called agent negotiation. It is not negotiation in the human sense of back-and-forth bargaining, though it may involve multiple rounds. It is a structured communication in which:

    1. The seller agent exposes a supply descriptor describing available inventory.
    2. The buyer agent evaluates that descriptor against the campaign brief.
    3. If the match is within threshold, the buyer agent signals intent and proposes terms.
    4. The seller agent evaluates the proposal against the publisher's policy.
    5. Terms are finalized via the protocol layer (covered in Unit 8).

    The common currency of this exchange is the supply descriptor — the structured, machine-readable representation of what the supply is and what it is suitable for. We cover supply descriptors in detail in Unit 5. First, the next two units establish what "machine-readable" means and why it requires new infrastructure.

    Both Sides Need Structure

    A buyer agent without accurate supply descriptions is guessing. A seller agent without a well-formed buyer intent signal is also guessing. The sophistication of the agents on each side of the transaction is only as useful as the quality of the structured information they exchange.

    This is why AI-native advertising is not just about deploying better models. It requires a new data layer — one in which supply is described explicitly and honestly, and demand is specified clearly and completely. The next two units build that picture from the ground up: what it means for supply to be machine-readable, and what the data structure of a supply descriptor looks like.