Rate Limits

Request limits, counting rules, and response headers

Limits by Tier

TierDaily LimitHourly Limit
Free250 requests100 requests
Plus (Individual)50,000 requests5,000 requests
Pro (Individual)100,000 requests10,000 requests
Plus (Commercial)250,000 requests25,000 requests
Pro (Commercial)500,000 requests50,000 requests

Counting Rules

  • Each API call = 1 credit. Exceptions: Compare and Watchlist GET cost 1 credit per ticker. Events with cross-asset correlation costs 2 credits
  • /v1/assets never counts against limits
  • HTTP 304 (conditional/cached) responses do not count
  • Daily limits reset at midnight UTC
  • Hourly limits reset at the top of each UTC hour
  • When either limit is reached: HTTP 429 with upgrade_url in response body
Safety Rails
Daily limits are safety rails, not the primary pricing lever. Normal human usage should never hit them.

Rate Limit Headers

Every response includes these headers:

HeaderTypeDescription
X-Request-LimitintegerMax requests per day for your tier
X-Requests-UsedintegerRequests used today
X-Requests-RemainingintegerRemaining today
X-Request-ResetstringUTC timestamp when daily limit resets
X-Hourly-Request-LimitintegerMax requests per hour
X-Hourly-Requests-UsedintegerRequests used this hour
X-Hourly-Requests-RemainingintegerRemaining this hour
X-Hourly-Request-ResetstringUTC timestamp when hourly limit resets

Example Headers

X-Request-Limit: 50000 X-Requests-Used: 42 X-Requests-Remaining: 49958 X-Request-Reset: 2026-03-24T00:00:00Z

429 Response

{ "error": "rate_limit_exceeded", "message": "Daily request limit reached. Resets at midnight UTC.", "upgrade_url": "https://tickerapi.ai/pricing", "reset": "2026-03-24T00:00:00Z" }