Rate Limits

Per-Minute Rate Limits

Each plan has a per-minute request limit:

PlanRate LimitMonthly Quota
Free10 req/min500
Starter30 req/min3,000
Pro60 req/min15,000
Scale120 req/min50,000
Enterprise300 req/minCustom

Rate Limit Headers

Every API response includes rate limit headers:

HeaderDescription
X-RateLimit-LimitMaximum requests per minute
X-RateLimit-RemainingRequests remaining this minute
X-Credits-UsedTotal credits used this month
X-Credits-RemainingCredits remaining this month

Exceeding Limits

Per-minute limit

When you exceed your per-minute rate limit, you’ll receive a 429 response with error code RATE_LIMITED. Wait until the next minute to retry.

Monthly quota

  • Free plan: Requests are blocked with QUOTA_EXCEEDED until the next billing cycle
  • Paid plans: You can continue making requests. Overage is billed at your plan’s per-screenshot rate

Overage Rates

PlanOverage Rate
Starter$0.005 per screenshot
Pro$0.003 per screenshot
Scale$0.002 per screenshot

Best Practices

  1. Implement retry with backoff — on 429 responses, wait 1s, then 2s, then 4s
  2. Use caching — set cache_ttl to avoid redundant renders of the same URL
  3. Monitor usage — check the dashboard to track consumption
  4. Batch wisely — if you need many screenshots, spread requests across minutes