Quotas
AWS Step Functions places quotas on the sizes of certain state machine parameters, such as the number of API actions during a certain time period or the number of state machines that you can define. Although these quotas are designed to prevent a misconfigured state machine from consuming all of the resources of the system, many aren't hard quotas.
To request a service quota increase, you can do one of the following:
-
Use the Service Quotas console at https://console.aws.amazon.com/servicequotas/home
. For information about requesting a quota increase using the Service Quotas console, see Requesting a quota increase in the Service Quotas User Guide. -
Use the Support Center page in the AWS Management Console to request a quota increase for resources provided by AWS Step Functions on a per-Region basis. For more information, see AWS service quotas in the AWS General Reference.
Note
If a particular stage of your state machine execution or activity execution takes too long, you can configure a state machine timeout to cause a timeout event.
Topics
General quotas
Quota | Description |
---|---|
Names in Step Functions |
Names of state machines, executions, activity tasks, and rate controls must not exceed 80 characters in length. These names must be unique for your account and AWS Region, and must not contain any of the following:
If your state machine is of type Express, you can provide the same name to multiple executions of the state machine. Step Functions generates a unique execution ARN for each Express state machine execution, even if multiple executions have the same name. Step Functions allows you to create names for state machines, executions, and activities, rate controls, and labels that contain non-ASCII characters. These non-ASCII names don't work with Amazon CloudWatch. To ensure that you can track CloudWatch metrics, choose a name that uses only ASCII characters. |
Quotas related to accounts
Resource | Default quota | Can be increased to |
---|---|---|
Maximum number of registered state machines | 10,000 | 25,000 |
Maximum number of registered activities |
10,000 |
15,000 |
Maximum request size |
1 MB per request. This is the total data size per Step Functions API request, including the request header and all other associated request data. |
Hard quota |
Maximum open executions per account |
1,000,000 executions for each AWS account
in each AWS Region. Exceeding this will cause an
ExecutionLimitExceeded error.
This
doesn't
apply to Express Workflows. |
Millions |
Maximum number of open Map Runs An open Map Run is a Map Run that has started, but hasn't yet completed. Scheduled Map Runs wait at the MapRunStarted event until the total number of open Map Runs is less than the default quota of 1000. |
1000 This quota is applicable for Distributed Map state. |
Hard quota |
Maximum redrives of a Map Run. |
1000 This quota is applicable for Distributed Map state. |
Hard quota |
Quota related to HTTP Task
Resource | Bucket size | Refill rate per second |
---|---|---|
HTTP Task | 300 | 300 |
Quotas related to state throttling
Step Functions state transitions are throttled using a token bucket scheme to maintain service bandwidth. Standard Workflows and Express Workflows have different state transition throttling. Standard Workflows quotas are soft quotas and can be increased.
Note
Throttling on the StateTransition
service metric is reported as
ExecutionThrottled
in Amazon CloudWatch. For more information, see the ExecutionThrottled CloudWatch metric.
Standard | Express | |||
---|---|---|---|---|
Service metric | Bucket size | Refill rate per second | Bucket size | Refill rate per second |
|
5,000 |
5,000 |
Unlimited |
Unlimited |
|
800 |
800 |
Unlimited |
Unlimited |
Quotas related to API action throttling
Some Step Functions API actions are throttled using a token bucket scheme to maintain service bandwidth. These quotas are soft quotas and can be increased.
Note
Throttling quotas are per account, per AWS Region. AWS Step Functions may increase both the bucket size and refill rate at any time.
Standard | Express | |||
---|---|---|---|---|
API name | Bucket size | Refill rate per second | Bucket size | Refill rate per second |
StartExecution — In US East (N. Virginia),
US West (Oregon), and Europe (Ireland) |
1,300 | 300 | 6,000 | 6,000 |
StartExecution — All other
regions |
800 | 150 | 6,000 | 6,000 |
Quota related to TestState API
API name | Quota |
---|---|
TestState | 1 transaction per second (TPS) |
Other quotas
These quotas are soft quotas and can be increased.
In US East (N. Virginia), US West (Oregon), and Europe (Ireland) | All other regions | |||
---|---|---|---|---|
API name | Bucket size | Refill rate per second | Bucket size | Refill rate per second |
CreateActivity |
100 | 1 | 100 | 1 |
CreateStateMachine |
100 | 1 | 100 | 1 |
DeleteActivity |
100 | 1 | 100 | 1 |
DeleteStateMachine |
100 | 1 | 100 | 1 |
DescribeActivity |
200 | 1 | 200 | 1 |
DescribeExecution |
300 | 15 | 250 | 10 |
DescribeStateMachine |
200 | 20 | 200 | 20 |
DescribeStateMachineForExecution |
200 | 1 | 200 | 1 |
GetActivityTask |
3,000 | 500 | 1,500 | 300 |
GetExecutionHistory |
400 | 20 | 400 | 20 |
ListActivities |
100 | 10 | 100 | 5 |
ListExecutions |
200 | 5 | 100 | 2 |
ListStateMachines |
100 | 5 | 100 | 5 |
ListTagsForResource |
100 | 1 | 100 | 1 |
SendTaskFailure |
3,000 | 500 | 1,500 | 300 |
SendTaskHeartbeat |
3,000 | 500 | 1,500 | 300 |
SendTaskSuccess |
3,000 | 500 | 1,500 | 300 |
StartSyncExecution |
Synchronous Express execution API calls don't contribute to existing account capacity limits. Step Functions provides capacity on demand and automatically scales with sustained workload. Surges in workload may be throttled until capacity is available. If you experience throttling, try again after some time. For information about Synchronous Express workflows, see Synchronous and Asynchronous Express Workflows. |
|||
StopExecution |
1,000 | 200 | 500 | 25 |
TagResource |
200 | 1 | 200 | 1 |
UntagResource |
200 | 1 | 200 | 1 |
UpdateStateMachine |
100 | 1 | 100 | 1 |
Quotas related to state machine executions
The following table describes quotas related to state machine executions. State machine execution quotas are hard quotas that can't be changed, except for the Execution history retention time quota.
Quota | Standard | Express |
---|---|---|
Maximum execution time |
1 year. If an execution runs for more than the 1-year maximum, it
will fail with a |
5 minutes. If an execution runs for more than the 5-minute
maximum, it will fail with a |
Maximum execution history size |
25,000 events in a single state machine execution history. If the execution history reaches this quota, the execution will fail. To avoid this, see Avoid reaching the history quota. | Unlimited. |
Maximum execution idle time |
1 year (constrained by the maximum execution time). |
5 minutes (constrained by the maximum execution time). |
Execution history retention time |
90 days after an execution is closed. After this time, you can no longer retrieve or view the execution history. There is no further quota for the number of closed executions that Step Functions retains. To meet compliance, organizational, or regulatory requirements, you can reduce the execution history retention period to 30 days by sending a quota request. To do this, use the AWS Support Center Console and create a new case. The change to reduce the retention period to 30 days is applicable at the account level. |
To see execution history, Amazon CloudWatch Logs logging must be configured. For more information, see Logging using CloudWatch Logs. |
Execution redrivable period Redrivable period refers to the time during which you can redrive a given Standard Workflow execution. This period starts from the day a state machine completes its execution. |
14 days. This hard quota is applicable for Distributed Map state. |
Redrive is currently not supported for Express workflows. |
Quotas related to task executions
The following table describes quotas related to task executions, and are hard quotas that can't be changed.
Quota | Standard | Express |
---|---|---|
Maximum task execution time |
1 year (constrained by the maximum execution time) |
5 minutes (constrained by the maximum execution time) |
Maximum time Step Functions keeps a task in the queue |
1 year (constrained by the maximum execution time) |
5 minutes (constrained by the maximum execution time) |
Maximum activity pollers per Amazon Resource Name (ARN) |
1,000 pollers calling |
Does not apply to Express Workflows. |
Maximum input or output size for a task, state, or execution |
256 KB of data as a UTF-8 encoded string. This quota affects tasks (activity, Lambda function, or integrated service), state or execution output, and input data when scheduling a task, entering a state, or starting an execution. |
256 KB of data as a UTF-8 encoded string. This quota affects tasks (activity, Lambda function, or integrated service), state or execution output, and input data when scheduling a task, entering a state, or starting an execution. |
Quotas related to versions and aliases
Resource | Default quota |
---|---|
Maximum number of published state machine versions |
1000 for each state machine. To request an increase to this soft limit, use the Support Center page in the AWS Management Console. |
Maximum number of state machine aliases |
100 for each state machine. To request an increase to this soft limit, use the Support Center page in the AWS Management Console. |
Restrictions related to tagging
Be aware of these restrictions when tagging Step Functions resources.
Note
Tagging restrictions cannot be increased like other quotas.
Restriction | Description |
---|---|
Maximum number of tags per resource |
50 |
Maximum key length |
128 Unicode characters in UTF-8 |
Maximum value length |
256 Unicode characters in UTF-8 |
Prefix restriction |
Do not use the |
Character restrictions |
Tags may only contain Unicode letters, digits, whitespace, or
these symbols: |