When to use this
Pro is the default paid tier for a single marketing website or SaaS marketing origin. It includes managedSites, runtimeProtection, live consentBanner publishing, basicCategories, basicAppearance, hosted legal page generation, runtimeHeartbeat, runtimeHealthDashboard, runtimeTelemetry, ownerDiagnostics, publicPrivateScanComparison, and billingDashboard. maxActiveSites is one verified protected site.
Choose Pro when you need runtime protection, a published consent banner, legal pages, page coverage, and owner diagnostics on one protected website, but do not need Growth setup for tracker blocking configuration, custom blocking rule editors, daily scans, or a three-site portfolio. Pro completes six required setup steps: Step 1 Connect Site, Step 2 Install Script, Step 3 Consent Banner, Step 5 Legal Pages, Step 6 Runtime Verification, and Step 7 Go Live. Step 4 Tracker Blocking is Growth-only and appears as optional on Pro. Many small businesses stay on Pro indefinitely.
Review this article when evaluating upgrade from Free or when deciding whether Growth is necessary for your roadmap.
Pro includes publicPrivateScanComparison so you can explain discrepancies between anonymous scanner results and what your runtime actually enforces—useful in security questionnaires and vendor reviews. Owner diagnostics remain private to your login and never appear on shared compliance report links unless you export them deliberately.
Annual versus monthly billing, if offered on your pricing page, does not change feature flags: entitlements derive from PLAN_LIMITS keyed to PRO regardless of interval. Internal or comped accounts may show INTERNAL plan in admin tools; customer documentation here assumes standard Stripe-backed PRO.
Customer success reviews at 90 days should include Pro scan comparison and heartbeat uptime—early consent or install misconfiguration is cheaper to fix before peak campaign season.
Step-by-step instructions
- Visit /pricing and select Pro; complete Stripe checkout while signed into the correct account.
- Land on checkout success, copy install snippet if shown, and continue to dashboard.
- Verify plan shows PRO under Account billing with active subscription.
- Add and verify your single root domain—second active sites require upgrade or site replace.
- Complete setup wizard through go live.
- Use public/private scan comparison to validate external vs runtime views.
- Manage invoices in Billing dashboard via Stripe customer portal when enabled.
- Consider Growth upgrade if you need second brand domain, advanced blocking, or localization.
- Invite teammates by sharing account practices documented in account settings—Pro does not include separate seat licensing in default packaging.
- Schedule quarterly rescans at /scanner and archive PDFs alongside heartbeat screenshots from Protection view.
- Set calendar reminder before renewal date to validate payment method in Stripe portal.
Expected result
Full setup wizard and protection features for one production site. Heartbeat and diagnostics visible in Protection view. Billing history accessible.
Entitlement errors referencing GROWTH only appear when touching Growth-exclusive UI such as advanced appearance or custom tracking rules editor.
Treat Pro as production baseline for single-brand SaaS: one verified root, full wizard, billing portal, and owner diagnostics—sufficient for many EU B2B marketing sites without Growth complexity.
Troubleshooting
Need second site on Pro
Pro allows one active site. Archive or replace per site replace flow, or upgrade to Growth for up to 3 sites.
Growth feature shown locked
Expected on Pro. Upgrade via change-plan help or pricing page.
Subscription past due
Stripe may restrict features until payment resolves. Open billing portal and update payment method.
Checkout succeeded but Setup still locked
Stripe webhooks apply plan changes asynchronously. Stay on checkout success until activation polling completes, then open Billing. If plan reads PRO but Setup locked, hard refresh and confirm you are not on a second Free account created with a different email. Contact support with session_id from success URL if still stuck after ten minutes.