Product
In-conversation ads, explained
17 June 2026 · 6 min read · Monetzly team
"Ads in AI chat" usually gets pictured as a banner above the message list. That is a display ad that happens to live near a chatbot, and it performs about as well as it sounds.
An in-conversation ad is a different object: a sponsored element inside the assistant's answer, matched to what the user just asked, rendered in the same voice as the rest of the response. This post covers what that means mechanically.
Where the ad enters the response
The insertion point is between your model and your client. Your app generates a response the way it already does; the ad layer reads the conversation context, decides whether any campaign is a genuine match, and — if one is — weaves a sponsored mention into the stream before it reaches the user.
- The user sends a turn. Your app builds its prompt and calls the model as usual.
- The response begins streaming. The ad layer sees the same token stream, plus a session id.
- Context is matched against available campaigns. Most turns match nothing — that is the expected case.
- On a match, the sponsored mention is injected into the stream with a disclosure label. On no match, the stream passes through byte-for-byte.
- Impressions and clicks are attributed to the session and surfaced in your dashboard.
Because it operates on the stream, the user never sees a pause, and you never hold a response back waiting on an auction.
Four constraints that make it native rather than intrusive
1. The ad answers the question
A sponsored mention only works when it is a legitimate part of the answer. If the user asks for a nonstick pan and the placement is a nonstick pan, the ad is information. If the placement is a mattress, the ad is noise and the user learns to distrust every future answer.
2. Disclosure is not optional
Sponsored content inside an AI response must be labelled as sponsored. This is both a legal requirement in most jurisdictions and the thing that keeps the format viable — an undisclosed ad inside an assistant's recommendation is exactly the failure mode that would kill the channel.
3. Frequency has to stay low
An ad on every turn destroys the product. A low fill rate is not lost revenue; it is what keeps the placements that do run worth something.
4. The app keeps the last word
Categories, competitors and formats stay under the developer's control. An assistant for children's education and a general consumer chatbot should not be drawing from the same pool, and the app — not the network — is the one that knows which is which.
What it looks like in practice
A user asks a cooking assistant how to keep eggs from sticking. The answer explains pan temperature and fat, then notes — labelled as sponsored — a specific nonstick pan that fits the advice, with a link. The user got a complete answer; the advertiser reached someone actively choosing a pan.
Compare that with a banner for the same pan above the chat window. Same product, same user, and roughly none of the value, because nothing about the banner knows what was asked.
Try it, then wire it up
Monetize the conversations you already have
Wrap your existing response stream with the Monetzly SDK and earn on sessions that were never going to convert to a subscription.