The stuff people email about before they sign up. Click any question to expand. If something is missing, ask us directly.
Paste <script async src="https://abforge.3dshawn.com/t.js?k=YOUR_KEY"></script> into your <head>. The tracker loads asynchronously and starts posting pageviews, sessions, click + scroll heatmap data, and any active A/B / MVT assignments. No tag manager, no SDK install, no build step. Works on React, Vue, Next, Astro, WordPress, plain HTML — anything that loads JavaScript.
No for the basics: experiments are configured in the dashboard (pick a URL pattern, define variants, pick a goal). For custom events you call abforge('event','name',{prop:value}) from anywhere in your JS — one line. We have copy-paste snippets for every common framework in the docs.
Most teams see their first pageview in the dashboard within 30 seconds of pasting the snippet. Spinning up an A/B test on a new headline takes another 2 minutes. The realtime view refreshes every 15 seconds so you'll know it's working immediately.
Yes. Each site gets its own public key and its own dashboard view. Free supports 1 site, Starter 3, Growth 10, Scale unlimited. You can run different experiments per site or share segments across them.
A/B compares two (or more) full variants of a page. MVT (multivariate) compares combinations of factors — e.g. 2 headlines × 3 CTA colors × 2 hero images = 12 variants — and tells you which combination wins AND which individual factor moves the needle most. A/B is faster to ship; MVT is more powerful when traffic allows.
Two-proportion z-test with configurable confidence threshold (default 95%). We display confidence interval, p-value, sample size, and a recommended sample-size to detect your minimum-effect-size at 80% power. We never declare a winner before the sample-size estimate is reached — that's how teams trick themselves with peeking.
A signed cookie sets a sticky variant on first visit. Same visitor sees the same variant for the life of the experiment, across pages and sessions. You can override assignment for QA via a URL parameter (?_abf=variant_b).
Seven: page_view, url_destination, click_selector, custom_event, form_submit, revenue, and scroll. You can attach multiple goals per experiment and watch each independently.
No. The tracker is loaded with a tiny inline hide-rule for elements being mutated, the swap runs synchronously before paint, and the hide-rule is removed. The result is a clean first paint of the assigned variant. We measured median FCP impact under 4ms in our own tests.
Every click is anchored to a stable DOM selector plus pixel offset within the element. When you view the heatmap at a desktop width, mobile clicks render against the desktop DOM correctly because we re-resolve the selector. No more "all clicks are at the top-left" garbage.
We sample max-scroll-Y on a debounced scroll handler and beacon it on page unload. The dashboard renders a depth overlay showing what percentage of visitors reached each band of the page.
The Realtime tab polls every 15 seconds. The main analytics dashboard caches for 60 seconds. The 30-day trend chart refreshes hourly. All KPIs back-fill instantly when you switch date ranges.
Yes. No credit card, no trial expiry. 10K pageviews/month, 1 site, 3 experiments, full heatmap + analytics dashboard. Upgrade when (or if) you outgrow it.
We email you at 80% and 100%. We never stop tracking mid-month. The overage on the next invoice is prorated at the next tier's per-pageview rate — or you can upgrade and skip it.
We issue refunds as account credit applied automatically to your next invoice. Cleaner books, faster than a card refund (which takes 5–10 business days to settle). If you cancel entirely with unused credit, we work out a card refund case-by-case.
Yes. Upgrades take effect immediately with proration. Downgrades take effect at the next billing anchor so you keep what you paid for.
No. You retain full ownership of your visitor data, events, experiments, and heatmaps. You can export everything (CSV + JSON) at any time. If you cancel, you get a 90-day grace period to export before data is purged.
Yes. The tracker uses a first-party signed cookie for sticky experiment assignment — no third-party cookies, no cross-site tracking. You can configure cookie-free mode (visitor ID derived from a hash) if you'd rather skip the cookie consent banner. We have a DPA available for Growth+ plans.
Your database lives in our US-East datacenter by default. EU-West is available on request for Scale + Enterprise. Self-hosters keep data wherever they install MariaDB.
2FA (TOTP), session-revoke from Settings, full audit log of admin actions, role-based access on team plans, encrypted-at-rest database, TLS 1.3 in transit. SOC 2 Type II audit in progress for 2026.
Yes, on Enterprise. You get the full CGI tree, MariaDB schema, and an install script. Your team manages updates. Many regulated industries prefer this — your data never leaves your infrastructure.
Email response: same business day for Growth+, <48 hours for Starter, community-driven for Free. Scale plans get a shared Slack channel; Enterprise gets a named CSM and SLA.
Inside the dashboard at /docs.cgi. Every page has a Help icon up top that links to plain-English how-tos with copy-paste examples. Quick-start guides for React, Vue, Next, WordPress, and plain HTML included.
Yes. We offer free white-glove migration for Growth+ subscribers — we'll map your existing experiments, goals, and segments into ABForge so you don't rebuild them by hand.