Introduction
Retail media is moving from the browser and app into the physical world. End caps, freezer doors, pharmacy aisles, and self-checkout lanes are being fitted with digital panels that can carry paid messages and product storytelling. The opportunity is huge - in-store dwell time and purchase proximity give creative and merchandising teams a canvas that is far closer to the point of decision than a pre-roll or a banner. The catch is that most of these networks are still bought like traditional out-of-home - fixed loops, fixed pricing, opaque measurement, and limited optimization. If retail media is to fulfill its promise for performance-minded brands and retail media networks, these screens must become biddable with the control, transparency, and accountability the supply side has learned from web, app, and CTV. This thought piece lays out a practical sell-side architecture for making store aisle screens programmatic-ready. It is engineered around privacy-by-design, operational pragmatism, and the standards that actually work in production. It also maps where Red Volcano’s supply intelligence can help retailers and SSPs de-risk and accelerate the journey.
Why Biddability Matters in the Aisle
In-store biddability is not about turning every frame into a chaotic open auction. It is about enabling dynamic allocation and decisioning so that:
- Inventory is priced and prioritized by real retail signals - traffic, proximity to category, time-of-day, and promotional calendars.
- Demand partners can activate retail-specific deals and optimizations without months of manual trafficking.
- Measurement can be aligned to outcomes that matter - verified plays, attention proxies, basket uplift - rather than opaque loop counts.
When executed with safeguards, biddable store media aligns incentives across retailers, CPGs, and SSPs. It also lets retailers harmonize omnichannel monetization - your site, app, CTV, and store screens can share common audiences, pacing, and brand safety guardrails.
Guiding Principles for Store-Side Programmatic
Any sell-side architecture for in-aisle screens should be designed against five non-negotiables:
- Privacy-first: No PII, no persistent device tracking, and tight governance for any audience matching via clean rooms.
- Deterministic transparency: Use supply transparency primitives like sellers.json, supplychain object, and auditable logs.
- Resiliency at the edge: Screens must play through network brownouts with graceful degradation and reliable audit trails.
- Retail-aware decisioning: Bids and allocation shaped by store context and merchandising rules, not only media KPIs.
- Standards before invention: Leverage VAST, OpenRTB 2.6, and existing IAB Tech Lab specs, then extend judiciously via ext.
References for these principles exist across IAB Tech Lab specifications and retail media guidance, which continue to evolve as programmatic DOOH matures. See OpenRTB 2.6 and retail media measurement guidance from IAB for baselines that already work in production IAB Tech Lab - OpenRTB 2.6, IAB - Retail Media Measurement Guidelines.
The Sell-Side Blueprint: From Aisle Screen to Auction
At a high level, a biddable in-aisle architecture has four planes working together:
- Edge Delivery Plane - screen player, cache, health telemetry, proof-of-play.
- Retail Control Plane - policy, merchandising rules, inventory catalog, pacing.
- Exchange Plane - SSP connectivity, OpenRTB requests, deal management, audit.
- Measurement and Governance Plane - privacy-safe attribution, QA, and transparency.
Let’s unpack each and show where standards fit and where extensions are sensible.
1) Edge Delivery Plane
The edge is the physical player attached to the screen. It must be robust, controllable, and verifiable.
- Local cache and schedule: Maintain a rolling cache of creative and a local schedule that can play through 24-72 hours of connectivity issues.
- Slot-aware media engine: Define slots with duration, resolution, audio flags, and category constraints. Each slot maps to an auctionable impression.
- Telemetry: Emit heartbeat, environmental signals (optional) like ambient light, and cryptographically signed proof-of-play logs.
- Privacy controls: Do not collect PII. If a camera is present for footfall, aggregate on-device to coarse counts - do not transmit raw frames.
- Creative validation: Enforce retailer and brand safety rules at the edge - file size, codec, duration caps, content categories.
2) Retail Control Plane
This is where retail-specific brains live. It informs which demand is even eligible before the screen asks anyone to bid.
- Inventory catalog: Hierarchical taxonomy of store - zone - fixture - screen - slot. Include metadata like category proximity, aisle adjacency, ADA considerations.
- Policy and merchandising rules: Brand/category exclusivity windows, retailer category blocklists, price floors by daypart, and promotion overrides.
- Pacing and fairness: Protect house ads, shopper experience thresholds, and avoid over-frequency at a location.
- Deal packaging: Define private marketplaces by category, region, loyalty audience cohort, and screen class.
- Eligibility gating: Decide when a slot is programmatic versus reserved retail content or compliance messaging.
3) Exchange Plane
Programmatic does the heavy lifting here. This is the SSP-connected layer that speaks OpenRTB and enforces supply transparency and commercial governance.
- OpenRTB 2.6 transport: Represent an in-aisle impression as a bid request with video or banner objects, PMP deals, and ext fields for DOOH context.
- Deal management: Default to PMPs for early phases. Reserve open auction for non-sensitive contexts if the retailer is comfortable.
- Supply transparency: Publish sellers.json and pass schain. Use ads.txt concepts where web domains are part of the supply path.
- Creative QA and brand safety: Pre-vet demand partners and apply retailer-specific category and content rules.
- Auditability: Persist bidstream, decisions, and delivery receipts with time sync to support reconciliation and MRC-style audits.
4) Measurement and Governance Plane
Measurement for in-aisle media must be honest about what can be known, and how. Viewability in the web sense does not translate one-to-one to a shared public screen.
- Proof-of-play first: Log signed, tamper-evident play events with timestamp, slot, creative ID, and player ID.
- Attention proxies: Add footfall counts and dwell time ranges at the screen level as optional metrics - keep them aggregated.
- Outcome linkage: Use clean rooms to match exposed cohorts to basket level outcomes in aggregate. No individual-level reports.
- Freshness SLAs: Commit to reporting windows that respect retail data latency - for example, T+3 days for sales signals.
- Standards compliance: Align measurement definitions to IAB retail media guidelines and DOOH industry practices where applicable.
Data Model for Aisle Inventory
Getting the data model right avoids rework and vendor lock-in. Here is a pragmatic schema for the supply side.
- Screen: id, store_id, zone, fixture, resolution, orientation, audio, owner, install_date.
- Slot: id, screen_id, duration_ms, media_type, floor_price, deal_ids, category_rules, dayparting.
- Context: store_type, region, category_proximity, compliance_flags, traffic_band.
- Telemetry: heartbeat cadence, last_online, firmware_version, content_hash.
OpenRTB Representation
Retail DOOH is not a brand-new protocol. You can use OpenRTB 2.6 with ext fields to convey retail context. Stick with the standards and extend only where necessary. Here is an example bid request for a 10-second end-cap video slot:
{ "id": "req-8c2e-aisle-0001", "source": { "tid": "txn-2025-09-17-123456", "ext": { "schain": { "ver": "1.0", "complete": 1, "nodes": [ { "asi": "retailer.example", "sid": "retail-media-network", "hp": 1, "rid": "store-0453-screen-12", "name": "Retailer RMN", "domain": "retailer.example" }, { "asi": "ssp.example", "sid": "ssp-123", "hp": 1, "name": "Trusted SSP", "domain": "ssp.example" } ] } } }, "tmax": 300, "cur": ["USD"], "device": { "devicetype": 5, "ifa": "00000000-0000-0000-0000-000000000000", "ua": "RetailScreen/1.5", "ip": "0.0.0.0" }, "site": { "name": "Store 0453 - Aisle 12 Endcap", "publisher": { "id": "retail-001", "name": "Retailer RMN", "domain": "retailer.example" }, "ext": { "dooh": { "venue_type": "grocery", "zone": "aisle-12-endcap", "screen_id": "store-0453-screen-12", "category_proximity": ["cereal", "snacks"] } } }, "imp": [ { "id": "imp-1", "tagid": "slot-10s-video", "secure": 1, "video": { "mimes": ["video/mp4"], "w": 1080, "h": 1920, "minduration": 10, "maxduration": 10, "protocols": [2, 3, 5, 6], "placement": 4 }, "bidfloor": 6.00, "pmp": { "private_auction": 1, "deals": [ { "id": "deal-snacks-q3-2025", "bidfloor": 6.00, "at": 2, "wseat": ["buyer-123", "buyer-456"] } ] }, "ext": { "retail": { "store_id": "0453", "region": "southwest", "daypart": "afternoon", "traffic_band": "high" } } } ], "user": { "ext": { "consent": "N/A", "sda": { "taxonomy": "IAB Tech Lab SDA", "segments": ["grocery_shopper", "loyal_snacks"], "provider": "retailer_cohort_service" } } } }
Notes:
- Use devicetype 5 for connected devices or 3 for set-top style where appropriate. Avoid spoofing mobile or desktop.
- VAST-compatible video is common for digital signage. For static imagery, use banner with w, h.
- Encapsulate DOOH specifics in site.ext.dooh and retail context in imp.ext.retail. Keep PII out of the payload.
- Use PMP deals for retailer-controlled access. Adopt open auction only when governance is mature.
IAB Tech Lab’s OpenRTB 2.6 and the AdCOM model provide flexibility to represent inventory while keeping transport standardized IAB Tech Lab - OpenRTB 2.6.
Transparency: sellers.json, ads.txt, and schain
Supply transparency matters in the aisle as much as on the web. While a kiosk is not a web domain, buyers still need to know who is authorized to sell, and through which intermediaries.
- sellers.json: The retailer or the RMN publishes a sellers.json file declaring itself as SELLER or PUBLISHER and listing intermediaries.
- SupplyChain object: Pass schain in the bid request to show the path from retailer to SSP. It helps buyers enforce SPO.
- ads.txt alignment for web components: Where a retailer also sells web or app media, ads.txt and app-ads.txt keep the programmatic story consistent across surfaces.
Example sellers.json snippet:
{ "contact_email": "ads@retailer.example", "version": "1.0", "sellers": [ { "seller_id": "retail-001", "name": "Retailer RMN", "domain": "retailer.example", "seller_type": "PUBLISHER" }, { "seller_id": "ssp-123", "name": "Trusted SSP", "domain": "ssp.example", "seller_type": "INTERMEDIARY" } ] }
For web and app surfaces tied to the same retail network, standard ads.txt and app-ads.txt are recommended IAB Tech Lab - ads.txt and IAB Tech Lab - sellers.json with the SupplyChain object IAB Tech Lab - SupplyChain Object.
Allocation Strategies That Work In-Store
Not every slot should hit the exchange. The optimal allocation mixes retail programming, fixed-price sponsorships, and biddable inventory.
- Retail programming: House messaging, safety notices, store events. Always-on allocation - for example 15 percent of loop.
- Guaranteed sponsorship: Category or brand takeovers for weekly or monthly windows. Reserve these before programmatic calls.
- Biddable slots: Eligible when not pre-empted. Use dynamic floors based on traffic and proximity signals.
- Performance optimization: After play-logs, adjust floor prices and deal prioritization by zone and daypart.
Three practical auction modes: 1) Pre-bid caching - call auctions hours in advance and cache winners to guarantee play through. 2) Just-in-time bidding - call within 200-400 ms before the slot. Requires strong connectivity. 3) Hybrid - prefetch for low-connectivity stores, just-in-time for high-bandwidth locations. In early phases, pre-bid caching is a safer operational choice, especially for geographies with spiky connectivity.
Privacy-by-Design for the Aisle
Retailers are already stewards of highly sensitive first-party data. Extending into screens must not add risk.
- No PII on the screen plane: Avoid direct linkage to shopper identities. If loyalty signals inform eligibility or pricing, do it as cohort metadata without re-identification risk.
- Seller Defined Audiences: Use SDA to expose cohorts like “loyal snack buyer” without leaking underlying user-level data [IAB Tech Lab - Seller Defined Audiences](https://iabtechlab.com/seller-defined-audiences/).
- Clean rooms for outcomes: Link proof-of-play cohorts to transaction data in a clean room. Publish only aggregated lift metrics aligned to IAB’s retail measurement guide [IAB - Retail Media Measurement Guidelines](https://www.iab.com/guidelines/retail-media-measurement-guidelines/).
- Data minimization: Pass only context needed to price and select. Region, store type, and daypart usually suffice. Avoid granular lat-long.
- Governed data retention: Keep raw play-logs only as long as required for audit and reconciliation.
Measurement That Buyers Trust
Buyers will demand standards-based, audit-ready reporting that maps to real outcomes.
- Proof-of-play: Signed logs from edge to control plane, de-duplicated, with verified time sync.
- Traffic and attention proxies: Provide store-hour traffic bands and optional dwell ranges. Treat them as context, not deterministic reach.
- Attribution: For outcome reporting, expose experiments - holdout stores, pre-post windows, and statistical controls. Avoid overstated claims.
- Currency clarity: Be explicit whether billing is per play, per thousand plays, or per estimated impressions derived from traffic bands.
Align definitions with IAB retail media measurement guidance to simplify cross-network comparability IAB - Retail Media Measurement Guidelines.
Operational Controls and SLAs
Turning on biddability without operational guardrails is a recipe for broken loops and refund tickets.
- Latency budgets: Decide per store whether you support just-in-time. If yes, cap exchange round-trip at 300 ms. Else use prefetch.
- Creative SLA: Enforce creative ingestion and QA windows. Provide a pre-flight API so buyers can test artifacts against retail rules.
- Failover logic: On timeout or no-bid, fall back to house content or the previous cached winner for the slot.
- Reconciliation cadence: Weekly bill-ready data with a T+3 or T+7 lag for outcome metrics.
Example: PMP Deal for Beverage Aisle Screens
Below is a quick deal setup pattern that keeps control with the retailer:
- Deal ID: deal-bev-Q4-takeover
- Eligibility: Grocery format, beverage aisle, 4 pm to 7 pm, Friday to Sunday.
- Creative rules: Max 10-second video, audio off, no flashing content.
- Pricing: Fixed CPM per play-equivalent, with surge multiplier for high traffic bands.
OpenRTB PMP snippet:
"pmp": { "private_auction": 1, "deals": [ { "id": "deal-bev-Q4-takeover", "bidfloor": 9.50, "at": 2, "wseat": ["buyer-cpg-789"], "ext": { "eligibility": { "zones": ["beverage-aisle"], "dayparts": ["16-19"], "days": ["fri", "sat", "sun"], "traffic_bands": ["medium", "high"] } } } ] }
Example: Content Safety and Category Exclusions
You can enforce category and adjacency controls via bid request metadata and creative pre-vetting.
"imp": [{ "id": "imp-1", "banner": { "w": 1080, "h": 1920 }, "ext": { "retail": { "category_proximity": ["pharmacy"], "exclusions": ["alcohol", "supplements-vigorous-claims"] } } }]
On the creative side, keep a rules engine that maps IAB content categories and retailer-specific flags to allow or deny lists.
Code Sample: Edge Failover Logic Pseudocode
A simple pattern at the screen player ensures reliability even when the network blips.
def play_slot(slot): creative = cache.get(slot.id) or house_fallback(slot) start_time = now() # try just-in-time auction if store supports it if store_supports_jit() and network_ok(): bid = ssp.bid(request_for(slot), timeout_ms=250) if bid and bid.price >= slot.floor: creative = bid.creative cache.put(slot.id, creative, ttl=slot.ttl()) render(creative) log_proof_of_play(slot, creative, start_time)
Interop With Web, App, and CTV
Retailers already sell media on owned web, app, and often CTV through partners. Bringing aisles into the same sell-side stack allows for:
- Unified deals: A brand can buy web homepage modules, app placements, CTV sponsorship, and aisle screens under a single PMP, with channel-specific targeting.
- Cohort consistency: Seller Defined Audiences can label cohorts consistently across channels without moving PII around [IAB Tech Lab - Seller Defined Audiences](https://iabtechlab.com/seller-defined-audiences/).
- Cross-channel pacing: Avoid overexposure by capping at the cohort level across surfaces.
- Measurement harmonization: A single clean room framework can compare exposed cohorts versus sales outcomes across channels.
Where Red Volcano Fits
Red Volcano specializes in supply intelligence across web, app, and CTV. The same DNA helps retail and SSP partners get the aisle programmatic stack right, faster.
- Inventory discovery and taxonomy: Standardized screen and slot taxonomy to reduce custom work with each DSP and SSP.
- Technology stack tracking: Map which stores, players, and screen vendors run what tech - vital for integration planning and QA.
- Transparency monitoring: Continuous checks for sellers.json and schain integrity across retail media endpoints.
- Measurement QA: Independent audits of proof-of-play coverage, freshness, and data drift.
- Sales enablement: Packaging insights that turn aisle inventory into credible PMPs aligned to buyer expectations.
Build vs Partner vs Buy
Retailers and SSPs have three pragmatic paths:
- Build: Full control of the control plane and edge stack. Higher upfront cost, stronger differentiation.
- Partner: Use a DOOH ad server or SSP that already handles scheduling, proof-of-play, and PMP plumbing. Faster time-to-value.
- Buy: Acquire or white-label an existing in-store media platform to compress timelines if the retailer is scaling nationally.
When in doubt, start with a partner for a 100-store pilot, prove reliability and measurement, then decide what to internalize.
Phased Rollout Plan
A realistic path avoids boiling the ocean.
- Phase 1 - Foundation: 50 to 100 screens across 10 stores. Pre-bid caching, PMPs only, proof-of-play plus weekly sales lift via clean room.
- Phase 2 - Scale: 1,000 screens. Hybrid bidding, dynamic floors by traffic band, expanded categories, and early third-party verification.
- Phase 3 - Optimization: Network-wide. Cross-channel pacing, unified deals, and continuous price optimization by zone and daypart.
KPIs That Actually Matter
Focus on KPIs that signal a healthy programmatic supply, not vanity numbers.
- Play integrity: 99.5 percent proof-of-play coverage with under 0.5 percent duplicate or corrupt logs.
- Eligible biddable slots: Share of total slots that are programmatically eligible - target 30 to 50 percent once operations stabilize.
- Fill and price: Effective fill for biddable slots and median clearing price by zone and daypart.
- Outcome lift: Basket lift for exposed cohorts versus control - reported with confidence intervals.
- Time to creative live: Hours from creative submit to first compliant play.
Common Pitfalls and How to Avoid Them
Retailers and SSPs often trip on the same issues when they first enable biddability.
- Over-promising measurement: Do not claim deterministic impressions from footfall sensors. Treat them as context proxies.
- Ignoring offline resiliency: A beautiful programmatic plan fails if the store Wi-Fi does. Cache and schedule locally.
- Fragmented taxonomy: If every vendor names zones differently, you cannot run network-wide optimization. Standardize early.
- Too many open auctions too soon: Start with PMPs to keep control and quality. Expand after ops and QA are steady.
- PII creep: Resist the temptation to identify individuals at a screen. Use cohorts and clean rooms for outcome analysis.
Security, Integrity, and Anti-fraud
While fraud in physical screens is different from web spoofing, integrity still needs active defense.
- Signed logs: Use device certificates to sign proof-of-play. Reject logs from unrecognized devices.
- Content hashing: Validate that the creative fingerprint that was sold is what actually played.
- Tamper detection: Alert on firmware changes, clock drift, and suspicious play patterns.
- Third-party spot checks: Independent field audits to corroborate device-reported plays.
IAB Tech Lab’s authentication work, like ads.cert v2 concepts, offers patterns to build trust in ad serving and provenance, even if not yet universally adopted for DOOH IAB Tech Lab - ads.cert.
Example: Minimal Inventory Catalog API
An internal API that enumerates biddable slots keeps your SSP adapter simple.
GET /api/v1/inventory/catalog?store=0453 { "store_id": "0453", "screens": [ { "screen_id": "store-0453-screen-12", "zone": "aisle-12-endcap", "w": 1080, "h": 1920, "slots": [ { "slot_id": "slot-10s-video", "duration_ms": 10000, "media_type": "video", "daypart": ["morning", "afternoon", "evening"], "pmp_deals": ["deal-snacks-q3-2025"], "floor_price": 6.00 } ] } ], "updated_at": "2025-09-17T12:00:00Z" }
Keep this catalog decoupled from any buyer-specific logic so multiple SSPs can integrate cleanly.
Governance and Commercial Terms
Biddability changes commercial conversations. Align legal and revenue operations early.
- Creative SLAs and indemnities: Spell out content acceptability, takedown timelines, and recourse for violations.
- Data processing agreements: Define what data flows, retention periods, and clean room roles and responsibilities.
- Refund and makegood policy: Tie to proof-of-play integrity, not estimated impressions.
- Retailer override rights: Reserve the right to pre-empt slots for safety messaging or operational needs.
The Road Ahead
As in-aisle networks mature, three trends will reshape supply-side capabilities:
- Better context signals: Live inventory levels and promotional calendars will inform pricing, constrained by privacy and operational readiness.
- Attention calibration: Standardized attention proxies suitable for shared screens will emerge, avoiding the pitfalls of web viewability.
- Cross-channel planning: Retailers will sell experiences across web, app, CTV, and aisle under unified deals and common governance.
Standards will likely evolve to include richer DOOH context objects and authentication mechanisms tailored to physical endpoints. The safest path is to adopt existing standards now and extend via ext fields rather than inventing one-off protocols.
Conclusion
Making retail media screens biddable is not a tech parlor trick. It is an operational discipline that starts at the edge with reliable playback and climbs through a retail-aware control plane into a standards-based exchange layer, all wrapped in privacy and measurement governance. Retailers that take this approach will unlock premium PMPs matched to shopping context, while buyers gain transparency and performance signals they can trust. With the right taxonomy, transparency, and QA, in-aisle screens can finally join web, app, and CTV as first-class citizens in supply strategy. Red Volcano’s role is to de-risk this journey - from taxonomy and supply transparency to measurement QA and packaging insights - so SSPs and retail media networks can turn aisle screens into a durable, biddable business with confidence.
References
- IAB Tech Lab - OpenRTB 2.6 - https://iabtechlab.com/standards/openrtb/
- IAB - Retail Media Measurement Guidelines - https://www.iab.com/guidelines/retail-media-measurement-guidelines/
- IAB Tech Lab - Seller Defined Audiences - https://iabtechlab.com/seller-defined-audiences/
- IAB Tech Lab - ads.txt - https://iabtechlab.com/ads-txt/
- IAB Tech Lab - sellers.json - https://iabtechlab.com/standards/sellers-json/
- IAB Tech Lab - SupplyChain Object - https://iabtechlab.com/standards/supplychain-object/
- IAB Tech Lab - ads.cert - https://iabtechlab.com/ads-cert/