Temporal · Rate Limits

Temporal Io Rate Limits

Temporal Cloud governs load per namespace with three related rate metrics. APS (Actions Per Second) caps the rate of billable Actions - such as starting or signaling a workflow - in a namespace, protecting the system from spikes. RPS (Requests Per Second) controls the rate of gRPC requests at the service level. OPS (Operations Per Second) is a lower-level measure of everything a user does directly or that Temporal does on their behalf. Each namespace defaults to On-Demand capacity at a 500 APS floor that auto-scales based on the last 7 days of usage (comparing average and P90) and never drops below the floor. Namespaces can switch to Provisioned capacity set with Temporal Resource Units (TRUs), each adding 500 APS. Self-hosted Temporal has no vendor rate limits - throughput is bounded by your own cluster and its dynamic-config rate limiters.

Temporal Io Rate Limits is the machine-readable rate-limit profile for Temporal on the APIs.io network, conforming to the API Commons Rate Limits specification.

It captures 5 rate-limit definitions, measuring actions, requests, operations, and temporal-resource-units.

The profile also includes 4 backoff/retry policies defined and response codes documented for throttled and grpcThrottled.

Tagged areas include Durable Execution, Workflow Orchestration, Temporal Cloud, Rate Limiting, and Quotas.

5 Limits Throttle: 429
Durable ExecutionWorkflow OrchestrationTemporal CloudRate LimitingQuotas

Limits

Actions Per Second (APS) namespace
actions
500 APS default floor (On-Demand, auto-scaling)
Caps the rate of billable Actions per namespace; auto-scales on the last 7 days of usage and never falls below the floor.
Requests Per Second (RPS) namespace
requests
dynamic (per capacity mode)
Rate of gRPC requests to the Temporal Service; dynamic under On-Demand, fixed by provisioned TRUs.
Operations Per Second (OPS) namespace
operations
dynamic
Lower-level measure of all direct and Temporal-initiated operations that place load on the server.
Provisioned Capacity (TRU) namespace
temporal-resource-units
500 APS per TRU
Optional Provisioned mode sets fixed capacity; each Temporal Resource Unit adds 500 APS.
Self-Hosted Throughput deployment
requests
cluster-bound
No vendor limit; governed by your own cluster sizing and dynamic-config rate limiters.

Policies

Priority-Based Throttling
When limits are exceeded, low-priority operations are throttled first while high-priority operations (StartWorkflowExecution, SignalWorkflowExecution, UpdateWorkflowExecution) continue when possible.
ResourceExhausted Retry
Throttled requests return a gRPC ResourceExhausted error (HTTP 429 on the HTTP API); SDK clients automatically retry per the default gRPC retry policy.
Capacity Auto-Scaling
On-Demand namespaces auto-scale APS based on average and P90 usage over the last 7 days, never dropping below the 500 APS floor.
Backoff Strategy
Clients should implement exponential backoff with jitter and honor server retry signals when throttled.

Sources