Back

For Publishers

Your AI app is a media business.
Start treating it that way.

Every query your users send has commercial intent. AgentAds runs a real-time auction and appends a single, relevant ad after your LLM response. You keep 70%.

No approval · No credit card · 5-minute setup

$8–15RPM

Average revenue per 1,000 AI responses

70%

Revenue share that goes directly to you

50ms

Hard timeout — zero latency impact

Integration

Works with your stack.
Already.

Vercel AI SDK

import { withAgentAds } from '@agentads/sdk/vercel' const model = withAgentAds(openai('gpt-4o'), { apiKey: process.env.AGENTADS_API_KEY, })

OpenAI SDK

import { wrapOpenAI } from '@agentads/sdk/openai' const openai = wrapOpenAI(new OpenAI(), { apiKey: process.env.AGENTADS_API_KEY, })

LangChain

import { AgentAdsCallback } from '@agentads/sdk/langchain' const chain = new LLMChain({ llm, prompt, callbacks: [new AgentAdsCallback({ apiKey: process.env.AGENTADS_API_KEY, })] })

Full setup

Step 01Install

npm install @agentads/sdk

Step 02Get API key

# Dashboard → Settings → API Keys

Step 03Set env var

AGENTADS_API_KEY=pub_live_...

React / Next.js

Drop-in React component.
Zero config.

Building a chat UI? Use <AgentAd /> — it handles fetching, rendering, and click tracking. Shows nothing on no-fill. No layout shift.

Code

components/messages.tsx
import { AgentAd } from '@agentads/sdk/react'

// After each assistant message:
<AgentAd
  publisherApiKey={process.env
    .NEXT_PUBLIC_AGENTADS_KEY!}
  query={userMessage}
  response={assistantText}
/>

What renders

...the AI response is shown here. When it's done, the component calls the auction and renders below.

SponsoredClerk — Auth in 5 minutes

Add sign-in and user management with 4 lines of code. Free up to 10k MAU.

← renders nothing if no ad won the auction

Also available: fetchAd() for full control

Use the low-level function for non-React environments, server-side rendering, or custom ad UI. Works in Node.js, Python, and any HTTP client. See docs →

Ad Format

One ad. After the response.
Never inside it.

Ads are appended as a labeled block after your AI response. Users see clear "Sponsored" attribution. No injection into the response itself.

AI Response
To deploy a Next.js app to production, run next build then next start. For Vercel, push to GitHub and it auto-deploys. For Docker, use the standalone output mode...
Sponsored

Render — Deploy Next.js in 2 minutes

Free tier, auto-scaling, zero cold starts. Used by 100k+ developers.

render.com →

FAQ

Common questions.

Will ads slow down my AI responses?

No. The auction runs in parallel with a hard 50ms timeout. If we miss the deadline, no ad is shown — your response is never delayed.

How do I get paid?

Monthly payouts via Stripe. We require a minimum of $10 before sending. You can track earnings in real-time in your dashboard.

Can I control which ads appear?

Yes. You can block IAB categories (e.g., competitor ads, adult content) and keyword lists from your publisher dashboard.

What does 70% revenue share mean?

For every $1.00 an advertiser pays, $0.70 goes to you. No hidden fees, no minimum commitments.

Do I need to approve my account?

No. Sign up and get your API key instantly. We review accounts passively — you can start earning on day one.

Ready to monetize?

Free forever. No credit card. Setup takes 5 minutes.