# A/B testing

Test single elements or whole journeys. Croct assigns the variant on the server, so nothing
flickers, and reads the result with Bayesian statistics on all of your data rather than a
sample.

## How it works

You mark the content that should vary as a slot, then define the experiment in the Croct
interface: the variants, the audience, the goal. At request time Croct assigns the visitor a
variant and returns it inside the first response. Results accumulate in built-in dashboards you
can break down by device, audience, time window or custom event.

Bayesian analysis reports the probability that a variant is better, which is a decision you can
act on, rather than a p-value you have to interpret. It runs on 100% of the data, with bot
traffic filtered out.

## Features

- **Bayesian statistics.** Clear probability of improvement instead of significance
  thresholds.
- **No sampling.** Every data point counts toward the result.
- **Server-side assignment.** No flicker, no anti-flicker snippet, no loading state.
- **Parallel testing.** Multiple experiments at once without traffic overlap.
- **Cross-device consistency.** An identified user sees the same variant everywhere.
- **Bot filtering.** Known bots and crawlers stay out of your results.
- **Full-journey testing.** Experiment across pages, product flows and backend logic, not
  just landing pages.
- **Feature flags.** Roll a change out gradually and let data guide the rollout.
- **Localized experiments.** Location-specific variants, measured per market.
- **Scheduling.** Launch, pause or change an experiment on your own timetable.
- **Granular analytics.** Drill down by device, audience, time window or custom event.
- **SPA support.** Flicker-free experiments in single-page applications.

## Building with it

Developers define the slots once. After that, marketers create, edit, pause and roll out
experiments from the interface, and applying a winning variant takes one click and no code
change.

Setup is one command, `npx croct@latest init`, which installs the SDK, wires the provider
and generates TypeScript types for every slot. Official SDKs cover Next.js, React, Vue,
Nuxt, Astro, Remix, Svelte, Gatsby, JavaScript, PHP, Laravel and Shopify Hydrogen. Most
teams are live the same day, and the forever-free plan needs no credit card.

## Frequently asked questions

### Why Bayesian rather than frequentist?

Because the question teams actually ask is "which variant should I ship", and a probability of
improvement answers that directly.

### Does it sample my traffic?

No. Results use every data point, with bots filtered out.

### Do experiments cause flicker?

No. The variant is chosen on the server and arrives inside the first response.

### Can I test more than the landing page?

Yes. Any slot in any page, plus product flows and backend logic through feature flags.

### What does it cost?

The forever-free plan covers 10,000 monthly active users with 3 content slots and 1
experience or experiment, and needs no credit card. Growth starts at $100 per month billed
annually for 20,000 monthly active users. Scale is custom. See [pricing](/pricing) for the
full table.
