More generations
Drive users to create more images, videos, prompts, agent runs, or outputs.
generate_10+50 creditsLaunch usage campaigns that increase generations, feature adoption, referrals, repeat sessions, and credit purchases, without rebuilding your product.
Made for teams building
ActiveKit turns your product events into campaigns that move the metrics AI apps actually care about. You set the reward, ActiveKit records the grant, and your own billing system fulfills it.
Drive users to create more images, videos, prompts, agent runs, or outputs.
generate_10+50 creditsLaunch top-up incentives that increase credit purchase frequency and average order size.
topup_1000+20% bonusTurn new or ignored features into campaigns users have a reason to try.
try_video+25 creditsGrant credits when an invited user activates, upgrades, or completes a key action.
friend_activated+100 creditsBuild daily usage loops with streaks, login rewards, milestones, and challenges.
7_day_streakunlock perkEngineering sends user events. Growth configures the campaigns, rules, rewards, schedules, and reporting. The five campaign types are one engine with different criteria, so the next campaign is configuration, not a deploy.
Send events like image_generated or credits_purchased.
Credits, usage, access, discounts, bonuses, or custom rewards.
See completions, conversions, revenue influence, and repeat usage.
ActiveKit gives your team a system for moving users from first action to repeat usage, top-up, referral, and upgrade.
Build a campaignStart with proven mechanics, then customize the events and rewards around your AI product. Each campaign template is the same engine with different criteria, and every grant is fulfilled from your own credit ledger.
Reward: +50 credits
Reward: +200 credits
Reward: +20% bonus
Reward: +25 credits
Reward: +100 credits
Reward: Badge + credits
Connect your user identity and send key product events. Your growth team can take it from there.
One package, no peer dependencies, typed end to end.
Name the credit balance you already meter. Sandbox mirrors production caps.
Send the signal you already emit. Names are yours, not ours.
Grant credits in your own code. ActiveKit signs, retries, and records every attempt.
Every grant carries a deterministic key, so your code grants credits once even when a delivery retries. Failed deliveries queue for 72 hours and can be replayed from the dashboard or the API.
{
"id": "grant_8f12c4",
"campaign": "referral-loop",
"user": "u_8412",
"credits": 1000,
"ledger": "prod-credits",
"idempotency_key": "ref_8412_04",
"created_at": "2026-08-08T09:41:02Z"
}| Method | Path | What it does | p50 |
|---|---|---|---|
| POST | /v1/events | Track an event against a user and ledger | 38 ms |
| POST | /v1/campaigns | Create or version a campaign object | 52 ms |
| GET | /v1/campaigns/:id/metrics | Enrollment, completion, and grant totals | 61 ms |
| POST | /v1/grants/:id/replay | Replay a failed grant delivery idempotently | 44 ms |
| GET | /v1/ledgers/:id/balance | Read balance and reserved credits from your own ledger | 29 ms |
| POST | /v1/sandbox/seed | Seed a sandbox ledger from past events | 88 ms |
Sandbox first, production when you are ready. Both ledgers speak the same API, so nothing changes but the key.
Every plan is one monthly price with unlimited apps, no usage metering. Campaign and user limits count across all your apps. ActiveKit records what users earn, then you fulfill grants from your own billing system. ActiveKit issues no monetary value, holds no funds, and never pays out. Coins are earned in the customer's product, never bought: there is no way to put value in, no transfer between users, and no cash-out. A balance never leaves the product it was earned in. Coins buy cosmetics, which ActiveKit fulfills, and the customer's own product value, which the customer fulfills. The store prices everything in coins and nothing in money, and ActiveKit sells nothing a coin buys.
Prove the loop: one live campaign on a real integration.
For teams scaling campaigns across every surface.
Run without limits across every app you ship.
Connect your app once, then launch campaigns that drive more usage, referrals, top-ups, and revenue.