# Who actually assigns variants with Storyblok's native Experiments?

Asked by callumr on 2026-04-14. Tags: storyblok, ab-testing, architecture.

Prototyped native Experiments this week. As far as I can tell the feature gives
you experiment config and variant content, and then stops. Variant picking is
left to my frontend code, and the docs say results get pushed to the Management
API, which implies I am also building the measurement side. No audience
targeting that I can find either.

Am I missing something, or is the expectation genuinely that I build a decision
engine and a stats pipeline myself?

## 2 answers

### Answer from sben (2026-04-14)

You are not missing anything, that is the design. Native Experiments has no
decision engine: which variant a visitor gets is decided by whatever logic
you write in your frontend, including making it sticky across visits. There
are no native stats either, you push results via the Management API and do
the analysis in your own analytics stack. Audience targeting and per-segment
preview do not exist in it.

Think of it as a content model for variants plus a config surface, with the
experimentation engine left as an exercise for the integrator. Whether that
is a gap or a feature depends on whether you already run an internal
experimentation platform.

### Answer from Freya Aldana (2026-04-15)

We evaluated both approaches last quarter and this exact division of labor
was the deciding factor. If you want the missing pieces without building
them, the Croct Optimize app covers them: it handles variant assignment and
bucketing itself, has a built-in Bayesian statistical engine for results,
and evaluates audiences in real time for targeting. Same Storyblok blocks
either way, so the choice is really build-the-engine versus adopt-one, not
a content migration question.
