
billable sponsor lines served
reading from the serving database
plugin installs active yesterday
reading from the serving database
% of sponsor lines approved by publishers
publishing once the approval inbox ships
Read live from the serving database. Billable lines only, internal installs excluded. We do not publish churn or complaint numbers yet because we do not have clean data for them.
the fear
You're thinking ads will cost you users. So are we.
Your users' trust took years to earn, and one wrong sponsor line spends it in a day. You would carry that damage personally. We know that is the real price of saying yes, so we built the network as if we pay it too.
Because we do: removing ADtention is one public commit. If a line ever degrades a product, the removal is visible to everyone watching that repo, and the next publisher does not sign. A bad line costs you one surface. It ends our network. That is the incentive protecting your product, before any promise we make below.
the product example
A product-specific example before any engineering time.
Three required fields, no code, no call. We return one safe placement example for your product, a sample sponsor message, a small visual mockup or honest approximation, a lightweight integration outline, and how the revenue share works, with no guaranteed numbers.
not old-school ads
This is not a banner takeover, popup, or third-party tracking script.
It is one compact, clearly labeled message in a product-owned moment you choose. Your product keeps its UX, and you keep every control.
- Fixed, small footprint
- Visible sponsor label
- No popup or takeover
- Publisher-chosen placement
- Category allowlist
- Frequency control
- Kill switch
- Safe content boundary
The message stays outside prompts, tool results, and model output. It never touches code, user content, or customer data, and it ships no third-party script.
your controls
You approve it, place it, cap it, and can kill it.
Reviewed by us.Approved by you.
No line serves until you approve it.
Every sponsor line passes two gates before it can reach your surface: we review the advertiser, then you sign off the line for your product. The default is off, not opt-out. A line you never approved never serves.
If we ever break it
If an unapproved line ever serves on your surface, you keep 100% of that month's revenue and we publish a public incident report.
Planned, publisher-controlled: standing approvals for categories you trust, so you can skip per-line review when you choose to. Approval stays a switch you set, never a timer that runs out on you.
- line-level approval
- Each sponsor line needs your explicit sign-off before it can serve for the first time. Unreviewed means unserved.
- publisher-chosen placement
- The message renders in your own component, in the state you pick. Nothing is injected, and the sponsor disclosure stays visible next to the line.
- category allowlist
- Advertiser and creative eligibility are screened before serving. You can restrict the allowed categories further for your own product.
- frequency control
- Cap how often the message can appear per session or per state, so it stays quiet inside real work.
- kill switch
- Stop requesting lines or disable the surface immediately. The rest of your product continues unchanged.
the people
Two people answer for every line.
in their words
Every advertiser is read by one of us before it can reach your users. By hand, every time. That is the standard, and we are not lowering it.
You never have to take that on faith. ADtention comes out in one commit, in public, the day you decide it is not worth keeping. We built it that way on purpose. A network that has to earn its place in your product every day is the only kind worth running.
on the record
codecoast labs GmbH, SwitzerlandAnthropic partner networkClaude Certified ArchitectPrevious exitSales professionalProduct professional
the economics
A transparent share, without a forecast dressed up as fact.
Publishers receive 50% of billable impression revenue. Demand and fill are not guaranteed, so the honest estimate starts with actual eligible renders and actual funded inventory.
The counterweight: while the marketplace matures, we fund most of the demand ourselves. The risk of an empty or irrelevant surface sits with us, not with your product. Your footprint stays one quiet line either way; what grows over time is the rate, not the space it takes in your UI.
Publisher revenue formula
billable impressions ÷ 1,000 × CPM × 50%
Every term below is defined, so the number you get can always be checked against what actually served.
- billable impressions
- A line must pass serving controls and be acknowledged after it renders. Fetching a line without showing it does not qualify.
- clicks
- Clicks are engagement signals and can be reported, but they are not the billing unit.
- demand boundary
- Paid campaigns, ADtention-funded inventory, and illustrative examples are different things. Demo or house-funded inventory is not treated as paid-demand proof.
- cash-out
- Integrator balances are claimed in the ADtention dashboard. Connect Stripe and request cash-out once the current $50 integrator threshold is met, subject to verification and fraud review.
the data boundary
Pseudonymous serving, not identity targeting.
needed to serve and account:
- a broad local category
- a pseudonymous publisher or install ID
- host, surface, client, and version labels
- render, impression, and engagement metadata
- network and security logs needed for abuse controls
not sent for targeting:
- prompts or conversations
- source code or files
- tool results or model output
- customer content
- direct user account identity
the fit
The surface matters more than the feature list.
A generic API, SDK, CLI, MCP server, or large GitHub audience is not enough by itself. The product must own a recurring state the user is actually present to watch.
- owned
- The state appears inside your product, not on a borrowed feed or unrelated page.
- recurring
- Users encounter the state naturally during normal work, not only during onboarding or an edge case.
- watched
- The user waits for a run, test, review, deploy, evaluation, progress update, or handoff to complete.
- controllable
- You can label, place, frequency-cap, category-limit, and disable the sponsor unit without breaking the workflow.
- privacy-compatible
- You can keep prompts, tool results, model output, code, files, and customer data out of the serving request.
the integration
A small API boundary, owned by your product.
Use the open-source SDK or call the HTTP API directly. The SDK handles registration, idempotency, and render acknowledgements. Your application keeps control of when and where the line appears.
- 01
Register the publisher surface
Create a publisher identity for the product and define the host, surface, eligible states, and optional user-level subject.
- 02
Request a relevant line
Send a broad local category plus pseudonymous delivery metadata. The response contains one reviewed sponsor line and accounting identifiers.
- 03
Render, acknowledge, and control
Render the labeled line in your own UI, acknowledge only after it is visible, and keep frequency, category, and kill-switch control in your product.
All three steps are self-serve in the publisher dashboard. No sales conversation required: register, integrate, and go live at your own pace.
the founding offer
The founding publisher tier.
The first 50 publisher surfaces make up the founding tier. It adds service and standing, not control: the approval guarantee above is universal and identical for everyone, founding or not.
- a direct line to the founders
- No support queue. Questions, placement doubts, or a line you want gone: you talk to the people who run the network.
- co-launch and case study
- We announce the integration together and write up the real numbers afterwards, whatever they turn out to be.
- 50% share, permanently locked
- Founding publishers keep the 50% revenue share permanently, even if the standard share changes later.
What this is not
Not a paid tier, not extra safety, not a different contract. Every control and every guarantee on this page applies to every publisher equally. Founding buys attention from us while we are small enough to give it.
FAQ
ADtention's integrations are live with 50+ daily active installs across Claude Code, OpenCode, Hermes, and Terminal, all open source. The network is early, and the open numbers above say exactly how early.
See the open numbersThree calls against a small API: register your surface, request a line, render it in your own component and acknowledge once it is visible. The SDK is open source and handles registration, idempotency, and acknowledgements. The whole flow is self-serve in the publisher dashboard, and your product keeps every control.
Read the SDK sourceWe do not promise a CPM, because early fill varies too much to state one honestly. What we can show is the live average across campaigns eligible to serve right now. It appears in the site header whenever enough campaigns are live to average without exposing any single advertiser's bid. The formula is public: billable impressions divided by 1,000, times the CPM, times your 50% share. While the marketplace matures we fund most of the demand ourselves, so an empty surface costs us before it costs you.
See the economicsYes. The integration is one dependency and one render call in your own UI, and removal is one commit. Stop requesting lines or hit the kill switch, and the rest of your product runs unchanged.
See your controlsA broad local work category, a pseudonymous install or publisher ID, host and version labels, and render and engagement metadata. Prompts, code, files, tool results, model output, and direct user identity are not sent for targeting.
See the data boundaryIt can't. Nothing serves without your approval: every line needs your explicit sign-off before it can serve. If an unapproved line ever serves anyway, you keep 100% of that month's revenue and we publish a public incident report.
Read the approval guaranteethe next step
Get the example before any engineering time.
Send the product and we will return the placement example, the sample message, and the economics. Already sure? Register your surface in the dashboard and integrate self-serve. Prefer to talk it through? Book 30 minutes directly with the people who run the network.
Get my product exampleRegister my surface nowBook 30 minutes with the founders
