Edge experimentation Founding pricing open

A/B testing built for the edge.

ABTestly is a small, cacheable experiment runner that ships variants from Cloudflare's edge — so visitors see the right version before the rest of your page can blink. Built for teams who care about speed, instrumentation, and the numbers behind a decision.

Edge-deployed · Cloudflare 300+ cities Served per-version, cached at the PoP Snippet runtime under 8KB gzipped
At a glance
300+Edge cities
~8KBGzipped snippet
<1.5KBLoader
NativeGA4 integration
Features

Honest tools, fast where it matters.

The things you actually need to run good experiments — without dragging down the page you're testing on.

Edge-deployed

Served from Cloudflare's network across 300+ cities and cached per config version — your experiments live where your visitors are.

No flicker

Config is served from Cloudflare's edge; the variant is applied synchronously, before your page reveals. No FOUC, no white-flash, no “original-then-test” jump.

Native GA4

Every exposure pushes an experience_impression event to your dataLayer with the experiment and variant IDs, so it flows into GA4 through your existing GTM/GA4 setup — no separate analytics add-on or SKU.

SSR & static-site compatible

Works with static and server-rendered sites — Astro, Hugo, Eleventy, Rails, the server-rendered output of Next, and plain HTML. Anywhere you can drop a small script tag, you can run experiments on the rendered page.

Stats you can defend

Significance testing with confidence intervals and a sample-size calculator — and a plain-language verdict that won't call a winner before the data supports it. Built so your CRO lead and your engineering lead are looking at the same numbers.

Comparison

How we stack up.

The honest version. Pricing and capabilities reflect public information from each vendor.

ABTestly Best value
VWO
Convert
Optimizely
Entry paid plan, monthly
$79 /mo · or $63 annual
$314 /mo
$299 /mo
Custom
Per-version config from edge compute
Yes
No
No
No
Snippet size
~8 KB gzipped
Larger
~50–60 KB
Larger
No-flicker variant swap
Yes
Partial
Yes
Yes
GA4 events included in every plan
Yes
Yes
Yes
Yes
Static sites + SSR pages
Yes
Partial
Yes
Yes

ABTestly figure is the Starter (entry) plan. VWO and Convert figures are each vendor's entry/Growth tier; their higher tiers cost more. Optimizely is quote-only. Snippet figure is the runtime snippet, excluding inlined config. Competitor capabilities and pricing verified May 2026 from each vendor's public documentation. Check their sites for current details.

Founding 100 · Open

Get Pro at $143/mo for 12 months.

The first hundred paying customers get 20% off the Pro plan for their first 12 months when billed annually. Use code FOUNDING100 at checkout. Renews at standard Pro pricing after twelve months. Cancel any time.

FAQ

Honest answers.

How fast is the ABTestly snippet?

The snippet is around 8 KB gzipped (the loader itself is under 1.5 KB) and is served from Cloudflare's edge across 300+ cities, cached per version. In practice that means it's fetched from a PoP close to your visitor and reused across page loads.

We're not going to put a specific millisecond figure here until we have a benchmark we're willing to publish. If a vendor's marketing site quotes one without methodology, treat it as marketing.

Does it work with Next, Astro, Rails, plain HTML?

Yes — anywhere you can drop a script tag onto a server-rendered or static page. (Single-page apps that swap content with client-side routing need our dedicated SPA handling, which is rolling out.)

How does the GA4 integration work?

ABTestly pushes a dedicated experience_impression event to your dataLayer carrying the experiment and variant IDs; it reaches GA4 through your existing GTM/GA4 configuration. One-time setup is mapping those fields to GA4 custom dimensions — we ship a GTM template to do it in a few clicks. No separate analytics add-on or SKU; it's included in every plan.

Will it flicker?

No. The experiment config is delivered from Cloudflare's edge, and our loader is inline and synchronous — so the variant is in place before your page reveals and visitors see the assigned version from the first frame. The difference from most client-side tools isn't where the decision is made; it's that the page doesn't reveal an un-tested version first while an async script loads.

Can I cancel any time?

Yes. Monthly plans are month-to-month and annual plans can be cancelled within 14 days for a full refund — see the refund policy.

Run your first experiment in an afternoon.

Free plan, no card, no “contact sales”. Drop in the snippet, define one variant, watch the events.