Self-build
When it fits
- Maximum control
- In-house ad-tech team
- Own ops and billing
Why teams still switch
- Keep UX and data rules
- Avoid auctioning and SSP ops
- Outsource proof and billing
When your user sends a prompt, two things happen at the same time. The model thinks. An ad is matched. Neither waits for the other.
Model path
Your API call runs exactly as usual
~800ms+
Ad path
Filtered signal goes to the ad market
< 20ms
Filter
Only topic and language leave your system. No prompts. No PII. No history.
Match
OpenRTB 2.6 auction during model inference. No extra user-side roundtrip.
Prove
Every impression gets signed proof. Auditable. Billable. No self-reporting.
What data leaves your system
Your app
After firewall
topic: travel, lang: en
Ad market
Receives only abstract category and language. It never sees the original prompt, user data, or conversation history.
You control what leaves. Config is explicit. Missing config means blocked by default.
The timeline
The ad is ready before the model finishes. Zero added latency to the user.
Proof chain
1
Slot created
2
SSP fills
3
Beacon sent
4
Proof signed
Every impression is cryptographically linked to a compute unit. Settlement is signed, auditable, and billable. No self-reported counting.
In code
wrapper-flow.ts
typescript
const job = await client.createJob({
job_type: "chat",
model_id: "gpt-4o-mini",
locale: "en-US",
consent: { semantic_targeting: true },
prompt: { text: userMessage },
});
const decision = await client.getDecision(job.slot_ids[0]);
if (decision.fill) {
renderAd(decision.creative);
await client.sendBeacon({
beacon_type: "rendered",
asset_token: decision.asset_token,
});
}Compliance
Built on Compute Sponsoring v1.0
Profile: CS-S (S1/P0)
Ads are usually not the hard part. The real choice is ownership: market access, consent, proof, billing, and rollout.
When it fits
Why teams still switch
What works
What is missing
When it fits
Where it falls short
What you get
Why wavebird sits on top
Next step
Start with the SDK for the production path, or talk to the team if you want rollout, placement, or partnership guidance.