plans.py · entitlements.py
Quotas are configuration. Capabilities are a map.
An account's plan selects a limits row read by both quota checks and the rate limiter, so synchronous requests and background jobs never disagree. Locked modules return HTTP 402 with an explicit upgrade path.
FREE
$0 /mo
Validate the ledger round-trip
- max_campaigns
- 3
- max_users
- 2
- max_api_keys
- 3
- rate_limit
- 60 / min
DEFAULTcommon
$79 /mo
Full intelligence stack for a single operator
- max_campaigns
- 50
- max_users
- 10
- max_api_keys
- 20
- rate_limit
- 300 / min
PRO
$249 /mo
Live connectors, automation, API access
- max_campaigns
- 250
- max_users
- 25
- max_api_keys
- 50
- rate_limit
- 600 / min
ENTERPRISE
Custom
Agency, white-label, enterprise controls
- max_campaigns
- 100,000
- max_users
- 1,000
- max_api_keys
- 1,000
- rate_limit
- 6,000 / min
Entitlement matrix
| Module | FREE | DEFAULT | PRO | ENTERPRISE |
|---|---|---|---|---|
| Core Analytics | ● | ● | ● | ● |
| Opportunity Engine | ● | ● | ● | ● |
| Profit Score | — | ● | ● | ● |
| Optimization Engine | — | ● | ● | ● |
| Predictive Intelligence | — | ● | ● | ● |
| Advanced Forecasting | — | ● | ● | ● |
| Profit Discovery | — | ● | ● | ● |
| Command Center | — | ● | ● | ● |
| Benchmark Intelligence | — | ● | ● | ● |
| AI Profit Copilot | — | ● | ● | ● |
| Learning Loop | — | ● | ● | ● |
| Cross-Network Intelligence | — | ● | ● | ● |
| Live Network Connectors | — | — | ● | ● |
| Automation Engine | — | — | ● | ● |
| Autonomous Optimization | — | — | ● | ● |
| Team Collaboration | — | — | ● | ● |
| API Access | — | — | ● | ● |
| Multi-Client / Agency | — | — | — | ● |
| White-Label Reporting | — | — | — | ● |
| Enterprise Controls | — | — | — | ● |
402 PAYMENT_REQUIRED → { module, required_plan, current_plan } — the UI reads the same map to render locked state.