Drop in the SDK, wire your rewards, let it run. Real bandit algorithms find what works on your funnel — and AI generates new variants when results plateau.
Traffic automatically shifts to the best-performing variant. No manual intervention needed.
Built for teams that ship fast
Most teams are stuck guessing — or maintaining segments and rules that rotted six months ago. Bandit lets the math figure it out.
Real bandit algorithms, AI variant generation, and joint funnel optimization — wired together so the math converges on what converts.
Thompson Sampling, UCB1, Epsilon-Greedy, and Linear Contextual — running on your funnel, balancing exploration and exploitation on every request.
Edge-deployed on Cloudflare Workers. Bandit picks the next variant fast enough to render inline — no flicker, no fallback.
TypeScript SDK, REST API, edge-deployed. Install, call getAssignment, wire your reward. Honest about the work — not a magic wand.
When the algorithm runs out of meaningful lift on your existing variants, AI generates new ones from your performance data. The system never stops finding edge.
Funnels are optimized as one system, not four loose experiments. A copy change at step 1 informs the math at step 4 — Bandit converges on the funnel-optimal path.
Most teams trying to optimize a funnel pick one of these four paths. Bandit is the only one that actually learns.
From integration to convergence in minutes. After that, the math runs itself.
Install the package, initialize with your API key, and call getAssignment() wherever a decision lives. Minutes, not days.
Define what counts as a win — conversion, click, revenue. Pick an algorithm. Add variants yourself, or let AI generate them.
Bandit converges on what works. New variants get generated when results plateau. You get a real-time dashboard and a system that keeps finding lift.
The SDK handles assignment caching, event batching, and automatic retries. You render the variant and fire the reward — Bandit converges on what wins.
import { BanditClient } from '@runbandit/sdk';
const bandit = new BanditClient({
apiUrl: 'https://runbandit.com',
apiKey: 'your-api-key'
});
// Get the best variant for this user
const { treatment } = await bandit.getAssignment('headline-test', 'user-123');
// Track when they convert
bandit.trackEvent({ eventType: 'CONVERSION', value: 29.99 });
Drop in the SDK, wire your rewards, and let the math find what converts. Free tier available, no credit card required.