Rate Limit Tiers
Rate limits are enforced per API token and depend on your workspace plan:Rate limits are measured in requests per time period and reset at the end of each interval.
Free Plan
- Standard API: 60 requests per minute
- Analytics API: Not available on Free plan
Pro Plan
- Standard API: 600 requests per minute
- Analytics API: 2 requests per second
Business Plan
- Standard API: 1,200 requests per minute
- Analytics API: 4 requests per second
Advanced Plan
- Standard API: 3,000 requests per minute
- Analytics API: 8 requests per second
Enterprise Plan
Enterprise plans can have custom rate limits tailored to your needs. Contact sales for more information.Endpoint Categories
Rate limits are applied differently based on the endpoint category:Standard API Endpoints
All non-analytics endpoints use the standard API rate limit:/links/domains/tags/folders/customers/partners/track/*- And others
Analytics API Endpoints
Analytics endpoints have separate, more restrictive rate limits:/analytics/events
Analytics endpoints are rate limited per second due to their data-intensive nature, while standard endpoints are limited per minute.
Rate Limit Headers
Every API response includes rate limit information in the headers:Header Descriptions
The maximum number of requests allowed in the current time window.
The number of requests remaining in the current time window.
Unix timestamp (in seconds) when the rate limit window resets.
Number of seconds until you can retry the request (only included when rate limited).
Rate Limit Exceeded
When you exceed the rate limit, the API returns a429 Too Many Requests response:
Status Code: 429 Rate Limit Exceeded
Response Body:
Handling Rate Limits
1. Respect Rate Limit Headers
Monitor theX-RateLimit-Remaining header to track your usage:
2. Implement Exponential Backoff
When you receive a429 response, implement exponential backoff:
3. Use the Retry-After Header
When rate limited, use theRetry-After header to determine when to retry:
4. Batch Operations
Use bulk endpoints when available to reduce the number of API calls:Rate Limiting for Sessions
When using session-based authentication (non-API requests from the Dub dashboard), different rate limits apply:- Standard API: 600 requests per minute
- Analytics API: 12 requests per second
Best Practices
- Cache responses: Cache API responses when possible to reduce requests
- Monitor headers: Always check rate limit headers to track usage
- Use webhooks: Instead of polling for updates, use webhooks for real-time events
- Batch requests: Use bulk endpoints to create, update, or delete multiple resources
- Upgrade plan: If you consistently hit rate limits, consider upgrading your plan
- Implement backoff: Always implement retry logic with exponential backoff
Exceeding Limits
If you need higher rate limits than your current plan provides:- Upgrade your plan: Higher plans include increased rate limits
- Contact sales: Enterprise customers can request custom rate limits
- Optimize usage: Review your API usage patterns and optimize where possible
Rate limits are enforced to ensure fair usage and system stability. Repeatedly exceeding rate limits may result in temporary API access restrictions.