# Higher rate limits on the Claude API

> Source: <https://platform.claude.com/docs/en/api/rate-limits>
> Published: 2026-06-27 08:15:18+00:00

We use cookies to deliver and improve our services, analyze site usage, and if you agree, to customize or personalize your experience and market our services to you. You can read our Cookie Policy [here](https://www.anthropic.com/legal/cookies).

** Claude Platform on AWS:** The rate limits on this page apply. Billing and spend limits differ: spend limits are not available, and billing is through AWS Marketplace (not Anthropic credit purchases). Organizations on Claude Platform on AWS are placed on the Start tier and do not move between usage tiers automatically. To request higher limits, contact your Anthropic account representative. Per-workspace rate limit configuration and

There are two types of limits:

The API enforces service-configured limits at the organization level, but you may also set user-configurable limits for your organization's workspaces.

These limits apply to both Standard and Priority Tier usage. For more information about Priority Tier, see [Service Tiers](/docs/en/api/service-tiers).

Each of the Start, Build, and Scale tiers carries a monthly spend cap, which is the maximum your organization can spend on the API each calendar month. Once you reach your tier's spend cap, API usage pauses until the next month unless you request a higher limit. You can view your organization's monthly spend cap on the [Limits](/settings/limits) page.

| Usage tier | Monthly spend cap |
|---|---|
| Start | $500 |
| Build | $1,000 |
| Scale | $200,000 |

Organizations on the Custom tier have no monthly spend cap; limits are arranged with their account team.

You can also set your own spend limit below your tier's cap to control costs:

Navigate to the Limits page

Go to [Settings > Limits](/settings/limits) in the Claude Console.

Open the spend limit editor

In the **Spend limits** section, click **Change Limit** (or **Set spend limit** if no limit is currently set).

Adjust your spend limit

Enter a new value. Your spend limit cannot exceed your current tier's cap.

The rate limits for the Messages API are measured in requests per minute (RPM), input tokens per minute (ITPM), and output tokens per minute (OTPM) for each model class.
If you exceed any of the rate limits you will get a [429 error](/docs/en/api/errors) describing which rate limit was exceeded, along with a `retry-after`

header indicating how long to wait.

You might also encounter 429 errors because of acceleration limits on the API if your organization has a sharp increase in usage. To avoid hitting acceleration limits, ramp up your traffic gradually and maintain consistent usage patterns.

Many API providers use a combined "tokens per minute" (TPM) limit that may include all tokens, both cached and uncached, input and output. **For most Claude models, only uncached input tokens count towards your ITPM rate limits.** This is a key advantage that makes the rate limits effectively higher than they might initially appear.

ITPM rate limits are estimated at the beginning of each request, and the estimate is adjusted during the request to reflect the actual number of input tokens used.

Here's what counts towards ITPM:

`input_tokens`

(tokens after the last cache breakpoint) ✓ `cache_creation_input_tokens`

(tokens being written to cache) ✓ `cache_read_input_tokens`

(tokens read from cache) ✗ The `input_tokens`

field only represents tokens that appear **after your last cache breakpoint**, not all input tokens in your request. To calculate total input tokens:

```
total_input_tokens = cache_read_input_tokens + cache_creation_input_tokens + input_tokens
```

This means when you have cached content, `input_tokens`

will typically be much smaller than your total input. For example, with a 200k token cached document and a 50 token user question, you'd see `input_tokens: 50`

even though the total input is 200,050 tokens.

For rate limit purposes on most models, only `input_tokens`

+ `cache_creation_input_tokens`

count toward your ITPM limit, making [prompt caching](/docs/en/build-with-claude/prompt-caching) an effective way to increase your effective throughput.

**Example**: With a 2,000,000 ITPM limit and an 80% cache hit rate, you could effectively process 10,000,000 total input tokens per minute (2M uncached + 8M cached), because cached tokens don't count towards your rate limit.

Claude Haiku 3.5 (marked with † in the following rate limit tables) also counts `cache_read_input_tokens`

toward ITPM rate limits.

For all models without the † marker, cached input tokens do not count towards rate limits and are billed at a reduced rate (10% of base input token price). This means you can achieve significantly higher effective throughput by using [prompt caching](/docs/en/build-with-claude/prompt-caching).

**Maximize your rate limits with prompt caching**

To get the most out of your rate limits, use [prompt caching](/docs/en/build-with-claude/prompt-caching) for repeated content like:

With effective caching, you can dramatically increase your actual throughput without increasing your rate limits. Monitor your cache hit rate on the [Usage page](/usage) to optimize your caching strategy.

OTPM rate limits are evaluated in real time as output tokens are produced, counting only the actual tokens generated. The `max_tokens`

parameter does not factor into OTPM rate limit calculations, so there is no rate limit downside to setting a higher `max_tokens`

value.

Rate limits are applied separately for each model; therefore you can use different models up to their respective limits simultaneously.
You can check your current rate limits and behavior in the [Claude Console](/settings/limits), or read the configured limits programmatically with the [Rate Limits API](/docs/en/manage-claude/rate-limits-api).

Rate limits are currently shared across all `inference_geo`

values. Requests with `inference_geo: "us"`

and `inference_geo: "global"`

draw from the same rate limit pool.

* - Opus rate limit is a total limit that applies to combined traffic across Claude Opus 4.8, Opus 4.7, Opus 4.6, and Opus 4.5.

** - Sonnet 4.x rate limit is a total limit that applies to combined traffic across Sonnet 4.6 and Sonnet 4.5.

† - Limit counts cache_read_input_tokens towards ITPM usage.

The Message Batches API has its own set of rate limits which are shared across all models. These include a requests per minute (RPM) limit to all API endpoints and a limit on the number of batch requests that can be in the processing queue at the same time. A "batch request" here refers to part of a Message Batch. You may create a Message Batch containing thousands of batch requests, each of which count towards this limit. A batch request is considered part of the processing queue when it has yet to be successfully processed by the model.

[Claude Managed Agents](/docs/en/managed-agents/overview) endpoints are rate-limited per organization. These limits are separate from the Messages API rate limits above.

| Operation | Limit |
|---|---|
| Create endpoints (for example, agents, sessions, and environments) | 300 requests per minute |
| Read endpoints (for example, retrieve, list, and stream) | 1,200 requests per minute |

When using [fast mode](/docs/en/build-with-claude/fast-mode) (research preview) with `speed: "fast"`

on Claude Opus 4.8, Opus 4.7, or Opus 4.6, dedicated rate limits apply that are separate from standard Opus rate limits. When fast mode rate limits are exceeded, the API returns a `429`

error with a `retry-after`

header.

The response includes `anthropic-fast-*`

headers that indicate your fast mode rate limit status. See [Fast mode](/docs/en/build-with-claude/fast-mode#rate-limits) for details on these headers.

You can monitor your rate limit usage on the [Usage](/usage) page of the [Claude Console](/).

In addition to providing token and request charts, the Usage page provides two separate rate limit charts. Use these charts to see what headroom you have to grow, when you may be hitting peak use, better understand what rate limits to request, or how you can improve your caching rates. The charts visualize a number of metrics for a given rate limit (for example, per model):

To request higher rate limits or a higher monthly spend cap, use **Request rate limit increase** on the [Limits](/settings/limits) page.

Support can also raise limits. For urgent needs, contact [support](https://support.anthropic.com).

For more about workspaces, see [Workspaces](/docs/en/manage-claude/workspaces).

To protect Workspaces in your Organization from potential overuse, you can set custom spend and rate limits per Workspace.

Example: If your Organization's limit is 40,000 input tokens per minute and 8,000 output tokens per minute, you might limit one Workspace to 30,000 input tokens per minute. This protects other Workspaces from potential overuse and ensures a more equitable distribution of resources across your Organization. The remaining unused tokens per minute (or more, if that Workspace doesn't use the limit) are then available for other Workspaces to use.

Note:

To read your current organization and workspace rate limits programmatically, use the [Rate Limits API](/docs/en/manage-claude/rate-limits-api).

The API response includes headers that show you the rate limit enforced, current usage, and when the limit will be reset.

The following headers are returned:

| Header | Description |
|---|---|
`retry-after` | The number of seconds to wait until you can retry the request. Earlier retries will fail. |
`anthropic-ratelimit-requests-limit` | The maximum number of requests allowed within any rate limit period. |
`anthropic-ratelimit-requests-remaining` | The number of requests remaining before being rate limited. |
`anthropic-ratelimit-requests-reset` | The time when the request rate limit will be fully replenished, provided in RFC 3339 format. |
`anthropic-ratelimit-tokens-limit` | The maximum number of tokens allowed within any rate limit period. |
`anthropic-ratelimit-tokens-remaining` | The number of tokens remaining (rounded to the nearest thousand) before being rate limited. |
`anthropic-ratelimit-tokens-reset` | The time when the token rate limit will be fully replenished, provided in RFC 3339 format. |
`anthropic-ratelimit-input-tokens-limit` | The maximum number of input tokens allowed within any rate limit period. |
`anthropic-ratelimit-input-tokens-remaining` | The number of input tokens remaining (rounded to the nearest thousand) before being rate limited. |
`anthropic-ratelimit-input-tokens-reset` | The time when the input token rate limit will be fully replenished, provided in RFC 3339 format. |
`anthropic-ratelimit-output-tokens-limit` | The maximum number of output tokens allowed within any rate limit period. |
`anthropic-ratelimit-output-tokens-remaining` | The number of output tokens remaining (rounded to the nearest thousand) before being rate limited. |
`anthropic-ratelimit-output-tokens-reset` | The time when the output token rate limit will be fully replenished, provided in RFC 3339 format. |
`anthropic-priority-input-tokens-limit` | The maximum number of Priority Tier input tokens allowed within any rate limit period. (Priority Tier only) |
`anthropic-priority-input-tokens-remaining` | The number of Priority Tier input tokens remaining (rounded to the nearest thousand) before being rate limited. (Priority Tier only) |
`anthropic-priority-input-tokens-reset` | The time when the Priority Tier input token rate limit will be fully replenished, provided in RFC 3339 format. (Priority Tier only) |
`anthropic-priority-output-tokens-limit` | The maximum number of Priority Tier output tokens allowed within any rate limit period. (Priority Tier only) |
`anthropic-priority-output-tokens-remaining` | The number of Priority Tier output tokens remaining (rounded to the nearest thousand) before being rate limited. (Priority Tier only) |
`anthropic-priority-output-tokens-reset` | The time when the Priority Tier output token rate limit will be fully replenished, provided in RFC 3339 format. (Priority Tier only) |

The `anthropic-ratelimit-tokens-*`

headers display the values for the most restrictive limit currently in effect. For instance, if you have exceeded the Workspace per-minute token limit, the headers will contain the Workspace per-minute token rate limit values. If Workspace limits do not apply, the headers will return the total tokens remaining, where total is the sum of input and output tokens. This approach ensures that you have visibility into the most relevant constraint on your current API usage.

Was this page helpful?
