Rate Limits
Request rate limits, monthly event quotas, and how overages work.
DeepTracer rate limits protect the ingestion service and make sure every project gets fair access. The SDK handles rate limiting automatically — this page is mostly for developers hitting the API directly.
Request rate limits
Each API key is limited to 5,000 requests per minute using a fixed-window counter.
The max request body size is 5 MB.
Response headers
Every response from the ingestion API includes rate limit headers:
| Header | Description |
|---|---|
X-RateLimit-Limit | Requests allowed per window |
X-RateLimit-Remaining | Requests remaining in the current window |
X-RateLimit-Reset | Unix timestamp when the window resets |
When you hit the limit
If you exceed 5,000 requests in a minute, the API returns 429 Too Many Requests:
{ "error": "Rate limit exceeded" }The response includes a Retry-After header with the number of seconds to wait before retrying.
SDK automatic retries
The DeepTracer JavaScript SDK handles 429 responses automatically:
- 3 retries with exponential backoff
- Respects the
Retry-Afterheader - Events are buffered and re-sent when the window resets
- Your app is never affected — the SDK fails silently
If you're calling the API directly, implement similar retry logic in your code.
Monthly event quotas
Each plan includes a monthly event allowance:
| Plan | Events per month |
|---|---|
| Free | 25,000 |
| Pro | 2,000,000 per project |
What counts as an event
Each of these is one event:
- One log entry (even when sent in a batch — a batch of 100 logs = 100 events)
- One error report
- One trace span
- One LLM usage report
How batching works
The /ingest/logs endpoint accepts up to 1,000 log entries per request. Each log entry in the batch counts as a separate event toward your quota. Batching reduces the number of HTTP requests (helping with rate limits) but does not reduce your event count.
Overages
Free plan
When you hit 25,000 events, the SDK stops sending new data for the rest of the month. Your app keeps running normally — monitoring just pauses until the next billing cycle.
Your app is never affected by hitting the event limit. The SDK quietly stops sending data — it never crashes or slows down your app.
Pro plan
DeepTracer never cuts off your data on the Pro plan. If you go over 2,000,000 events in a month:
- Data continues flowing normally
- Excess events are billed at $0.50 per 100,000 events
- You'll see overage charges on your next invoice
This means you never have to worry about missing critical production data because of a billing limit.
Summary table
| Limit | Value |
|---|---|
| Requests per minute | 5,000 per API key |
| Max request body | 5 MB |
| Free plan events | 25,000/month (hard cutoff) |
| Pro plan events | 2,000,000/project/month (soft overage) |
| Pro overage rate | $0.50 per 100,000 events |
| SDK retries | 3 attempts with exponential backoff |