PUBLISHED PROVIDER LIMITS
Limits keep their provider-specific dimensions.
HubSpot combines short interval limits with account-tier daily quotas. Public OAuth apps and private apps use different allowances.
Authentication: OAuth access token, Private app access token
Primary scope: App Per Account, With Daily Account Quotas
Measured dimensions: Requests, Daily Requests, Endpoint Requests
Profile coverage: Public OAuth app limits, private app burst and daily limits by account tier, API Limit Increase packs, unauthenticated Forms submissions, and documented response headers. Search and other endpoint-specific exceptions remain outside this profile.
OAuth Rate
| Limit | Value | Period | Scope | Conditions and variability |
|---|---|---|---|---|
| Public OAuth app requests | 110 requests | Per 10 second | App Per Account | Applies to public apps using OAuth |
Private App Rate
| Limit | Value | Period | Scope | Conditions and variability |
|---|---|---|---|---|
| Private app Free and Starter rate | 100 requests | Per 10 second | App Per Account | Published provider limit. |
| Private app Professional and Enterprise rate | 190 requests | Per 10 second | App Per Account | Published provider limit. |
Daily Quota
| Limit | Value | Period | Scope | Conditions and variability |
|---|---|---|---|---|
| Private app Free and Starter daily quota | 250,000 requests | Per day | Account | Published provider limit. |
| Private app Professional daily quota | 625,000 requests | Per day | Account | Published provider limit. |
| Private app Enterprise daily quota | 1,000,000 requests | Per day | Account | Published provider limit. |
| API Limit Increase pack | 1,000,000 additional requests | Per day | Account | Up to two packs can be purchased The short interval allowance increases to 250 requests per 10 seconds per app. |
Endpoint limits
| Limit | Value | Period | Scope | Conditions and variability |
|---|---|---|---|---|
| Unauthenticated Forms submissions | 50 requests | Per 10 second | Source Ip | Published provider limit. |
RESPONSE METADATA
Headers expose the applicable limit state.
X-HubSpot-RateLimit-DailyFormat: Integer- Daily request limit for the account when the daily headers apply.
X-HubSpot-RateLimit-Daily-RemainingFormat: Integer- Requests remaining in the account's daily quota.
X-HubSpot-RateLimit-Interval-MillisecondsFormat: Integer Milliseconds- Length of the short rate-limit interval in milliseconds.
X-HubSpot-RateLimit-MaxFormat: Integer- Maximum requests allowed in the current short interval.
X-HubSpot-RateLimit-RemainingFormat: Integer- Requests remaining in the current short interval.
WHEN A LIMIT IS EXCEEDED
Read the response before choosing a delay.
- Rate-limit responses can use HTTP 429.
- Daily headers are not returned for OAuth requests, and Search API responses do not include the standard rate-limit headers.
RECOMMENDED HANDLING
Protect both the provider and your own queue.
- Use the applicable interval and remaining headers when they are available.
- Track daily usage separately for private apps.
- Apply exponential backoff with jitter after 429 responses.
- Avoid sustained unauthenticated Forms retries that can trigger additional source-IP protection.
VERIFICATION RECORD