The limits, in numbers
A site is one domain and everything under it. Add
example.com and
the same snippet covers www.example.com, shop.example.com and
every other subdomain, as one site with one visitor identity. Add a
second site only for a genuinely different domain.
“Unlimited” sites on Business and Enterprise carries a fair use
ceiling of 100. At 100 the create is declined with a message asking
you to email sales@abtestly.com, and we lift it.
The tracked user allowance is pooled across every site in the
account, not allocated per site. See
what a tracked user is.
The Free tier
The Free column is still in the table because the tier still exists. It is no longer a way to start. Closed to new signups on 5 September 2026. Accounts created before that date keep it indefinitely, on the limits in the table above. Accounts created on or after it were never offered it. It is still where an account lands when a subscription ends. A cancellation, a scheduled downgrade, and a first charge that fails all put an account on Free, and that has not changed. What an account created on or after 5 September 2026 can do while it sits there. Everything except create a new experiment. Sites keep serving, the snippet keeps loading, experiments that are already running keep running and keep collecting, publishing works, and every result you have stays where it is. The only blocked action is starting something new, and subscribing lifts it immediately. Read a refusal as “you cannot start a new experiment without a plan”, never as “your account stopped working”.What every plan gets
The honest end of the math is on every plan, including Free.- A/B and split testing
- Page and URL targeting
- Behavioral and audience targeting (device, source, cookies, visit history)
- Basic segment filters on results
- Frequentist statistics (two-proportion Z, proper CI, SRM guard)
- The Exact Experiment Ledger, no sampling
- Monaco code editor for variations (no visual/WYSIWYG editor is offered on any plan)
- Goals plus two system-default guardrails auto-attached
- Preview and QA tools
- Visitor opt-out
- Data collection health warnings
- Goal setup intelligence
What each paid tier adds
Availability walks up the tier ladder. Every tier includes everything in the tier below.Starter, adds
- Scheduled starts, ends, and max-run-days
- Clone experiment
- CSV export of the results table
- Change history (activity log)
- Custom guardrail metrics (secondary metrics a winner must not harm)
Pro, adds
- Geo targeting (country, region, city)
- Activation triggers (click, view, manual, in addition to page load)
- Sequential statistics (anytime-valid CI, peek without penalty)
- Bayesian statistics (probability-to-be-best plus expected loss)
- Revenue and ecommerce metrics (RPV, AOV, OPV with mean-diff CIs)
- Outlier control for revenue
- Time-to-decision projection
- Global JS (site-wide script before every variant)
- Dev and variation libraries (curated Splide, GLightbox, etc.)
- Speed-aware experiments (per-device LCP guardrail)
Business, adds
- Mutual Exclusion Groups (guarantee visitors never see two conflicting tests)
- Full segment matrix (every segment against every variant in one grid)
- Raw event export (async job, every row from the ledger)
- Blocked IPs (server-side filter for your office or bot ranges)
- Business impact projection on winning verdicts
- Team & Access permissions (25 per-site keys, Manage access drawer)
Enterprise
Everything in Business, plus custom MTU limits, dedicated support, security review, MSA, DPA, and the rest of the procurement paperwork. Contact enterprise@abtestly.com.The pricing page grid has the same
information in a side-by-side table with checkmarks per column. Both
pages are kept in sync; if you spot a mismatch, the pricing page
wins.
What’s a Monthly Tracked User (MTU)?
An MTU is a unique visitor who is bucketed into at least one experiment during the calendar month. The visitor id lives inlocalStorage and a cookie on your domain; the meter hashes it with
your organization id and counts distinct hashes. The counter resets at
00:00 UTC on the 1st of each month.
- If a visitor returns multiple times in the same month, they count once.
- If they’re in 5 experiments simultaneously, they still count once.
- If they browse several subdomains of one site, they still count once.
- If they visit two of your sites on different domains, they count twice. Each domain has its own isolated browser storage, so the same person arrives as two unrelated visitors.
- If they have no
localStorage(e.g., they cleared cookies, switched browser, or use private browsing), each visit is a new MTU.
What happens if I hit my MTU limit?
ABTestly never auto-charges for overages. Instead, your site enters graceful degradation:- Visitors already bucketed continue to see their variant. Their cached
localStorageassignment is honored, exposures still flow to your dashboard, statistical validity is preserved for the active cohort. - New visitors are NOT bucketed. They see the original page and don’t consume an MTU.
- No data loss. Already-bucketed users keep generating exposures and conversions.
- You get email warnings at 80% and 100% so you can upgrade if needed.
How it works under the hood
ABTestly maintains a Durable Object per organization that tracks distinct user hashes across all sites in that month. When the count hits 100% of your plan’s MTU, the snippet’s served config gets adegraded: true flag injected at the edge. The snippet’s new-visitor branch reads this flag and skips bucketing.
The change propagates within ~5 minutes of hitting the cap (cron tick interval + edge cache TTL).
Upgrading
In your dashboard → avatar menu → Billing & Plan → choose a higher tier. Checkout is handled by Paddle (our Merchant of Record; they handle tax, invoicing, and global payments). Upgrade takes effect within 5 seconds of payment. Your new limits and newly unlocked features apply immediately.Downgrading
Same path, choose a smaller plan. Downgrades are scheduled, not immediate. Unlike an upgrade, the smaller plan takes effect at the start of your next billing period. Until that date nothing changes: you keep your current limits, your current allowance, and every feature you are paying for. This is the one asymmetry in the billing model, and it is deliberate. A downgrade that dropped your allowance mid-month could stop a running experiment from recruiting halfway through, and lose you the result you were already paying for. On the renewal date the new limits apply. From then on:- Existing sites, experiments, and results are all kept. Nothing is deleted, frozen, archived, or made read only, and you are never asked to choose which ones survive.
- Every running experiment keeps running and keeps collecting. If one uses a feature no longer in your plan (say it runs on the sequential engine and you moved to Starter), it finishes on the engine it started on. The engine and method version lock at start, so a downgrade cannot silently change a running test’s math.
- You cannot start new experiments that need paywalled features, and you cannot add sites or start experiments past the new plan’s counts. Both are checked at the moment you create or start something, never retroactively.
- The new MTU allowance applies from the renewal date. If that month’s usage is already past it, new enrollment stops and graceful degradation takes over: visitors already in a test keep their variant, and visitors arriving after that see your site as published.
Cancellation and refunds
In your dashboard → Billing & Plan → Manage subscription → opens Paddle’s customer portal → Cancel subscription. Cancelling stops the renewal. There is no further charge, and you keep full paid access until the end of the period you have already paid for. After that date:- Your account moves to Free tier limits, on the nightly job that runs at 02:00 UTC
- Your sites and experiments keep running. Nothing is deleted, frozen, or made read only. See what changes on a downgrade
- If the account was created on or after 5 September 2026 it is not entitled to the Free tier, so it cannot create a new experiment until you subscribe again. Everything already running is untouched. See the Free tier
- Your configuration and aggregate results stay for as long as the account is retained. Raw ledger events still age out on the standard 90 day window, which is a retention policy rather than a billing one
- You can re-subscribe any time to get back to your previous tier