Rate Limits

Three-tier rate limiting system with sliding window algorithm protecting the API from abuse while ensuring fair usage.

How Rate Limiting Works

Jiro uses a 3-tier rate limiting system with a sliding window algorithm. Each request is checked against per-second, per-minute, per-hour, and per-day limits simultaneously — if any window is exceeded, the request is immediately rejected with a 429 status code and a rate_limit_exceeded error.

The system enforces four independent sliding windows per tier: - Per-second — burst protection - Per-minute — sustained throughput - Per-hour — medium-term capacity - Per-day — daily cap

All windows use a sliding algorithm, meaning the window moves with time rather than resetting at fixed intervals.

Rate limit headers are included in every response: - X-RateLimit-Limit-Sec — max requests per second - X-RateLimit-Remaining-Sec — requests remaining this second - X-RateLimit-Limit-Min — max requests per minute - X-RateLimit-Remaining-Min — requests remaining this minute - X-RateLimit-Limit-Hour — max requests per hour - X-RateLimit-Remaining-Hour — requests remaining this hour - X-RateLimit-Limit-Day — max requests per day - X-RateLimit-Remaining-Day — requests remaining today

Tier Limits

Jiro offers three subscription tiers with different rate limits. Each tier defines per-second, per-minute, per-hour, and per-day request limits, plus a burst size for handling traffic spikes.

Rate Limit Tiers

NameTypeDescription
Free
5 RPS5 requests/second, 60/minute, 500/hour, 5,000/day. Burst size: 10. Default for new accounts.
Pro
20 RPS20 requests/second, 200/minute, 5,000/hour, 50,000/day. Burst size: 50. For professional developers.
Enterprise
100 RPS100 requests/second, 1,000/minute, 50,000/hour, 500,000/day. Burst size: 200. For high-throughput workloads.

Monthly Quotas

In addition to per-request rate limits, each tier has monthly usage quotas. Quotas reset on the 1st of each month. If you exceed a quota, subsequent requests of that type are rejected until the next billing cycle.

Monthly Quotas

NameTypeDescription
Free
1,000 searches1,000 searches, 500 scrapes, 100 AI queries per month. Max 5 concurrent requests.
Pro
50,000 searches50,000 searches, 25,000 scrapes, 5,000 AI queries per month. Max 20 concurrent requests.
Enterprise
1,000,000 searches1,000,000 searches, 500,000 scrapes, 100,000 AI queries per month. Max 100 concurrent requests.

Per-Engine Rate Limits

Each search engine has its own RPM limit shared across all users. This prevents any single user from monopolising a particular engine and ensures equitable access. When an engine's limit is reached, requests to that specific engine are rejected while requests to other engines continue normally.

Engine RPM Limits

NameTypeDescription
Google
10 RPM10 requests per minute, burst: 2. Most restrictive due to upstream API constraints.
Amazon
10 RPM10 requests per minute, burst: 2. Product search with strict rate limits.
Baidu
10 RPM10 requests per minute, burst: 2. Chinese search engine with conservative limits.
Bing
30 RPM30 requests per minute, burst: 5. Default engine with moderate limits.
Brave
30 RPM30 requests per minute, burst: 5. Independent search engine.
eBay
15 RPM15 requests per minute, burst: 3. Auction and product search.
YouTube
20 RPM20 requests per minute, burst: 3. Video search.
Yandex
20 RPM20 requests per minute, burst: 3. Russian-language search.
DuckDuckGo
60 RPM60 requests per minute, burst: 10. Most permissive engine limits.

429 Error Response

When a rate limit is exceeded, the API returns a 429 status with the following JSON body:

json

Best Practices

  • Implement exponential backoff — when you receive a 429, wait and retry with increasing delays
  • Monitor rate limit headers — use X-RateLimit-Remaining-* headers to proactively throttle
  • Cache aggressively — cached results cost fewer credits and bypass some rate limits
  • Use multiple engines — rotate between engines to spread your load across per-engine limits
  • Upgrade your plan — if you consistently hit limits, consider upgrading from Free to Pro or Enterprise

Need help?

Check our error codes or reach out to the team.