Early access

Feature flags and A/B tests
decided before the request
hits your app.

AyBee runs at the edge. It evaluates segments, picks variants, and injects decisions into request headers — so your application reads a value, not calls a service.

Get early access

Takes a minute. No spam — just a heads-up when it's ready, and maybe one question about your setup.

How it works

incoming
request
evaluate
edge
AyBee
+ header
your
app
# AyBee injects one header into every request

X-AYBEE: 1.4.chk.dGZl.Ag

# major · minor · area · feature bitmap · experiment vector

# your app reads it through a thin SDK — no network call

enabled("new-checkout") // → true
variant("button-color") // → "green"

Your flag SDK
is a network call
on every request.

Most feature flag systems work the same way: your app calls an external service to find out if a feature is on. That's a round-trip on every request — latency you absorb on every page load, every API call, every checkout.

When the flag service is slow, your app is slow. When it's down, you're shipping fallback logic for infrastructure that's supposed to make shipping safer.

AyBee moves the decision to the edge, before the request reaches your app. The result arrives as a header. Your app reads a value — it never knows a flag service exists.

What you get

Everything your team needs.
Nothing in the hot path.

latency
Zero added latency
Decisions happen at the edge before your app sees the request. No SDK round-trips. No timeouts to handle.
targeting
Flexible segmentation
Target by country, device, header, cookie, query param, or custom attributes — with AND / OR / NOT logic.
rollout
Gradual rollouts
Ship to 5%, watch the metrics, promote to 100%. Deterministic bucketing means users don't flip between variants.
experiments
A/B experiments
Run multiple variants with weighted allocation. Same visitor, same variant — always. Track conversions via response headers.
routing
Traffic routing
Route requests to different origins by percentage, segment, or experiment. Blue/green, canary, shadow — all in config.
sdk
Thin SDK
The SDK decodes the header. That's it. No persistent connections, no background polling, no initialization latency.

Integration

Your app doesn't change much.
That's the point.

// install the SDK — reads the X-AYBEE header, nothing else
import { AyBee } from "@aybee/sdk"

// initialise from the incoming request (one line)
const ab = AyBee.fromRequest(req)

// feature flag
if (ab.enabled("new-checkout")) {
  renderNewCheckout()
}

// A/B experiment
const color = ab.variant("button-color") // "green" | "blue" | "control"

// report a conversion — the SDK writes the header for you
ab.track(res, "purchase", { amount: 149.90 })
// under the hood: res.setHeader("X-AYBEE-METRIC", "purchase,amount=149.90")

Runs on your infra too.

AyBee is open source. The same binary that powers the managed service can run inside your own infrastructure — no data leaves your environment.

open source self-hostable written in Rust single binary runs anywhere

AyBee is in development.
Get early access.

Tell us a bit about your setup. Submitting opens a pre-filled email — just hit send, and we'll reach out personally.

What interests you most
✓ Got it — your email draft is ready. Hit send and we'll be in touch.