Everything you need to add Fill to your app, understand the credit system, and start earning.
Fill is a cross-promotion network for apps built with AI. Show ads from other builders' apps, earn credits, spend credits to promote your own app.
There are no minimum traffic requirements, no approval process, and no waiting. Your AI coding agent handles the entire integration via MCP tools -- you never have to touch a dashboard or read API docs.
Fill is designed for the way software gets built now: you describe what you want, your agent does the work.
Fill uses a credit system with two distinct types. Understanding the difference matters.
Spend on promotion only. NOT cashable.
Real value. Cashable when available.
Promo credits are spent first. Earned credits are only consumed after promo credits are depleted. This means your welcome bonus gets you started promoting immediately while you build up real earnings.
Three steps. Under two minutes.
Add this to your Claude Code, Cursor, or Windsurf MCP config:
{
"mcpServers": {
"fill": {
"command": "npx",
"args": ["@fill-md/mcp"]
}
}
}
Say monetize this app with ads in your AI coding tool. The agent calls Fill's MCP tools to register your app and generate the integration code.
Open the signup link the agent gives you, accept the Terms of Service, and your app starts showing ads and earning credits immediately.
Install the SDK:
npm install @fill-md/sdk
Displays a banner ad unit. Renders inline, respects host app theming.
Override any visual property to match your app's design system.
Full-screen interstitial ad. Shows on demand, user can dismiss.
These tools are available to your AI agent when the Fill MCP server is configured. Your agent calls them automatically -- you don't need to invoke them manually.
| Tool | Description |
|---|---|
| fill_init | Register your app with Fill. Returns app ID and API key. |
| fill_add_ads | Generate integration code for your app. Detects framework automatically. |
| fill_promote | Create a promotion campaign to advertise your app across the network. |
| fill_status | Check your earnings, impressions, and credit balance. |
| fill_dashboard | Get a URL to your Fill dashboard for detailed analytics. |
| fill_recover | Recover your API key via email if lost. |
| fill_configure | Set ad placement strategy (e.g., banner position, frequency). |
Base URL: https://api.fill.md. Auth via x-api-key header where required.
| Method | Path | Auth | Description |
|---|---|---|---|
| POST | /apps | No | Register a new app |
| GET | /ad | Yes | Fetch an ad to display |
| POST | /render | Yes | Report that an ad was rendered |
| POST | /impression | Yes | Report a viewable impression (1 credit) |
| POST | /click | Yes | Report a valid click (5 credits) |
| POST | /campaigns | Yes | Create a promotion campaign |
| GET | /me | Yes | Get account info and credit balance |
| PATCH | /apps/:id | Yes | Update app details |
| POST | /auth/recover | No | Email-based API key recovery |
| GET | /network/stats | No | Public network statistics |
| GET | /network/apps | No | Public directory of apps on the network |
$1 CPM equivalent. 10K visitors/month with 50% viewability = ~5,000 impressions = ~$5/month in earned credits. Credits can be spent to promote your app or cashed out when Stripe integration launches.
Indie apps from the Fill network. Cross-promotions from other builders. We also run house ads for popular open-source tools. No tracking-based targeting -- ads are contextual and network-wide.
Yes. No cookies, no persistent identifiers, no cross-site tracking. The SDK makes zero client-side storage calls. See our Privacy Policy for full details.
React (npm install @fill-md/sdk) and vanilla JavaScript (script tag). Coming soon: Vue, Svelte.
Not yet. Ad content policy prohibits adult, gambling, malware, and deceptive content. Full ad review controls coming soon.
Cash-out via Stripe is coming soon. For now, earned credits can be spent to promote your app across the network.
Under 10KB gzipped. Zero runtime dependencies. React as a peer dependency only.
See what your app could earn on Fill.
Assumes 50% viewability rate (industry standard). 1 credit per impression. Actual results vary based on ad placement, visitor engagement, and fill rate.
The following content is prohibited in all Fill campaigns:
Fill reserves the right to remove any campaign at its sole discretion. Repeated violations result in account suspension. See the full Terms of Service for details.
How Fill compares to other ad networks for indie developers.
| Fill | AdSense | Carbon Ads | EthicalAds | |
|---|---|---|---|---|
| Min traffic | None | ~3K/mo | ~10K/mo | 50K+/mo |
| Approval | Instant | Weeks | Invite-only | Application |
| Rev share | 70% | 68% | 75% | 70% |
| Agent-native | Yes (MCP) | No | No | No |
| Exclusivity | No | No | Yes | No |
| Formats | Banner, Interstitial | Multiple | Text only | Text only |