Plans · invoice billing

Start free. Scale when the data earns it.

Every plan is the same API and the same key — an upgrade is applied to your existing key in place (tier, limits, quota, expiry, history), no code change. We bill by invoice: email us the plan you want and your key prefix, and the plan is applied when the invoice is settled. Everything below is enforced server-side; your dashboard shows exactly what your key can do.

Trial

Free · 14 days
  • Latest monthly snapshot, all 62 jurisdictions
  • Every filter, sort & field on /v1/licenses · MCP
  • Contacts masked (preview only)
  • 30 / min · 300 / day · 2,000 / month
Get a trial key

Starter

Invoiced · monthly or annual
  • Unmasked matched_email / matched_phone (~76% / 69% US coverage)
  • 120 / min · 5,000 / day · 50,000 / month
  • CSV / NDJSON export, /v1/suggest, MCP
Request Starter

Pro

Invoiced · monthly or annual
  • Everything in Starter
  • 300 / min · 20,000 / day · 250,000 / month
  • Priority on limit raises & custom scopes
Request Pro

History add-on

Invoiced · 12 months back or full history
  • ?snapshot= for prior monthly snapshots
  • /v1/licenses/history: one license across months with a field-level change log
  • Month-over-month deltas for recruiting & churn
Request history

Enterprise

Contact us
  • Bulk monthly file delivery (full appended CSVs) alongside the API
  • Multiple keys per org, rotation, usage exports, full history
  • Custom SLAs & dedicated limits
Talk to us

How limits work

Per-minute / per-daySliding windows per key. Every response carries RateLimit-Limit / RateLimit-Remaining / RateLimit-Reset; a 429 includes Retry-After.
Monthly quotaHard cap on requests per UTC calendar month. Responses carry X-Quota-Limit / X-Quota-Used; over quota → 429 quota_exceeded until the 1st.
CountingEvery authenticated /v1/* or MCP call counts once, regardless of rows returned — use limit up to 1000 and sparse fields= to do more per call.
UpgradesBilled by invoice. Email eli@compcurve.com with your key prefix (shown on the dashboard — never send the full key) and the plan; entitlements are applied to your existing key when the invoice is settled. Time-boxed plans extend expires_at from your current expiry, so renewals stack.
See it yourselfGET /v1/me and GET /v1/usage, or the dashboard.