Plans
ABTestly has four self-serve plans plus Enterprise.What’s included in every plan
- Unlimited historical data preserved on every site (even after downgrade)
- Full targeting feature set
- Real-time results dashboard
- 99.9% snippet uptime
- Email support
Plan structure
| Free | Starter | Pro | Business | Enterprise | |
|---|---|---|---|---|---|
| Sites | 1 | 2 | 5 | 10 | Unlimited |
| Active experiments | 1 | 5 | Unlimited | Unlimited | Unlimited |
| Team members | 1 | 2 | 3 | 10 | Unlimited |
| Annual discount | — | 20% | 20% | 20% | Custom |
Current plans & limits
See live pricing, MTU caps per tier, and the annual discount applied.
What’s a Monthly Tracked User (MTU)?
An MTU is a unique visitor (identified by a per-site hashed user ID stored inlocalStorage) who is bucketed into at least one experiment during the calendar month. 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 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 apply immediately.Downgrading
Same path — choose a smaller plan. Your existing data is preserved (we call this “grandfathering”):- If you have 5 sites on Pro and downgrade to Starter (2 sites), your 5 sites continue running. You can’t add new sites until you’re under 2, but existing ones are unaffected.
- Same applies to active experiments — running tests stay running.
- MTU limit drops immediately to the new tier’s allowance. If that puts you over budget, graceful degradation kicks in.
Cancellation
In your dashboard → Billing & Plan → Manage subscription → opens Paddle’s customer portal → Cancel subscription. Your subscription continues to bill (and you keep paid-tier access) until the end of your current period. After the period ends:- Your account is downgraded to Free tier limits
- Your data is preserved forever (not deleted)
- You can re-subscribe anytime to get back to your previous tier