What is a KVM?
A Key-Value Map (KVM) is a structured key → value payload carried inside the ext field of an OpenRTB 2.6+ bid request, as defined by the IAB Tech Lab OpenRTB specification. It lets publishers, SSPs, and bidders exchange arbitrary signals that aren't part of the core OpenRTB spec — without requiring a new spec revision for every signal type.
KVMs are the carrier mechanism for next-generation programmatic signals: AdCP context payloads, agentic intent hints, vector-based audience scores, and contextual brand-safety flags all travel as KVMs.
Where KVMs live in the bid request
KVMs can attach at multiple levels of the OpenRTB object graph:
{
"imp": [{
"ext": {
"kvm": {
"adcp_context": "agentic-research",
"intent_score": 0.87,
"garm_floor": "low"
}
}
}],
"site": {
"ext": {
"kvm": {
"page_topic_vec": "v1:0.42,0.18,...",
"ucp_session": "abc123"
}
}
}
}
See the OpenRTB 2.6 specification (§3.2 — Object Model) for the formal definition of the ext extension fields used above.
imp[].ext.kvm— per-impression signals (creative-level)site.ext.kvm/app.ext.kvm— page or app contextuser.ext.kvm— audience or session signals (consent-gated)bidrequest.ext.kvm— exchange-level metadata
Role in agentic RTB
In agentic ad pipelines, KVMs are how the DSP tells downstream bidders why this impression matters. An AdCP context payload — describing the user's research intent, content vector, and brand-safety class — is serialized into a KVM and passed in imp.ext.kvm. The bidder's LLM-driven model then decodes the KVM and adjusts its bid strategy in real time.
This is the mechanical foundation of AdCOM-style structured ad commerce: a flexible signal-carrier that doesn't require ratifying a new IAB spec for every new use case.
Why it matters
- Spec-flexible: new signals ship without OpenRTB revisions
- Vendor-neutral: any SSP/DSP that respects the
extconvention can read KVMs - Composable: multiple signals coexist in a single
kvmobject - Forward-compatible: agentic, contextual, and identity signals all share the same carrier
Caveats
KVMs are powerful but unstandardized — imp.ext.kvm.intent_score from one SSP may mean something different from another SSP's. Successful KVM use depends on bilateral schema agreements between sellers and buyers, often documented in deal-specific SSP↔DSP integration guides. The AdCP initiative (adcontextprotocol.org) is one effort to standardize the most common KVM payloads.