Menu
Amazon Simple Queue Service
Developer Guide

Amazon SQS Limits

This topic lists limits within Amazon Simple Queue Service (Amazon SQS).

Limits Related to Queues

The following table lists limits related to queues.

Limit Description
Inflight messages per queue

For standard queues, there can be a maximum of 120,000 inflight messages per queue. If you reach this limit, Amazon SQS returns the OverLimit error message. To avoid reaching the limit, you should delete messages from the queue after they're processed. You can also increase the number of queues you use to process your messages.

For FIFO queues, there can be a maximum of 20,000 inflight messages per queue. If you reach this limit, Amazon SQS returns no error messages.

Queue name

A queue name can have up to 80 characters. The following characters are accepted: alphanumeric characters, hyphens (-), and underscores (_).

Note

Queue names are case-sensitive (for example, Test-queue and test-queue are different queues).

The name of a FIFO queue must end with the .fifo suffix. The suffix counts towards the 80-character queue name limit. To determine whether a queue is FIFO, you can check whether the queue name ends with the suffix.

Queue tag

We don't recommend adding more than 50 tags to a queue.

The tag Key is required, but the tag Value is optional.
The tag Key and tag Value are case-sensitive.
The tag Key and tag Value can include Unicode alphanumeric characters in UTF-8 and whitespaces. The following special characters are allowed: _ . : / = + - @
The tag Key or Value must not include the reserved prefix aws: (you can't delete tag keys or values with this prefix).
The maximum tag Key length is 128 Unicode characters in UTF-8. The tag Key must not be empty or null.
The maximum tag Value length is 256 Unicode characters in UTF-8. The tag Value may be empty or null.
Tagging API actions are limited to 5 TPS per AWS account. If your application requires a higher throughput, file a technical support request.

Limits Related to Messages

The following table lists limits related to messages.

Limit Description
Message attributes A message can contain up to 10 metadata attributes.
Message batch

A single message batch request can include a maximum of 10 messages. For more information, see Configuring AmazonSQSBufferedAsyncClient in the Amazon SQS Batch API Actions section.

Message content

A message can include only XML, JSON, and unformatted text. The following Unicode characters are allowed: #x9 | #xA | #xD | #x20 to #xD7FF | #xE000 to #xFFFD | #x10000 to #x10FFFF

Any characters not included in this list are rejected. For more information, see the W3C specification for characters.

Message retention By default, a message is retained for 4 days. The minimum is 60 seconds (1 minute). The maximum is 1,209,600 seconds (14 days).
Message throughput Standard queues support a nearly unlimited number of transactions per second (TPS) per API action.
  • FIFO queues support up to 300 messages per second (300 send, receive, or delete operations per second).

  • When you batch 10 messages per operation (maximum), FIFO queues can support up to 3,000 messages per second. To request a limit increase, file a support request.

Message size

The minimum message size is 1 byte (1 character). The maximum is 262,144 bytes (256 KB).

To send messages larger than 256 KB, you can use the Amazon SQS Extended Client Library for Java. This library allows you to send an Amazon SQS message that contains a reference to a message payload in Amazon S3. The maximum payload size is 2 GB.

Message visibility timeout The default visibility timeout for a message is 30 seconds. The maximum is 12 hours.
Policy information The maximum limit is 8,192 bytes, 20 statements, 50 principals, or 10 conditions. For more information, see Limits Related to Policies.

Limits Related to Policies

The following table lists limits related to policies.

Name Maximum Size

Bytes

8192

Conditions

10

Principals

50

Statements

20