Available CloudWatch metrics for Amazon SQS
Amazon SQS sends the following metrics to CloudWatch.
Note
For some metrics, the result is approximate because of the distributed architecture of Amazon SQS. In most cases, the count should be close to the actual number of messages in the queue.
Amazon SQS metrics
Amazon SQS automatically publishes operational metrics to Amazon CloudWatch under the
AWS/SQS
namespace. These metrics help you monitor queue health and
performance. Due to SQS’s distributed nature, many values are approximate, but accurate
enough for most operational decisions.
Note
-
All metrics emit non-negative values only when the queue is active.
-
Some metrics (such as
SentMessageSize
) are not emitted until at least one message is sent.
Metric | Description | Units | Reporting behavior | Key notes |
---|---|---|---|---|
ApproximateAgeOfOldestMessage |
The age of the oldest unprocessed message in the queue. | Seconds |
Reported if the queue contains at least one active message. |
|
ApproximateNumberOfGroupsWithInflightMessages |
For FIFO only. The number of message groups with one or more in-flight messages. | Count |
Reported if the FIFO queue is active. |
|
ApproximateNumberOfMessagesDelayed |
The number of messages in the queue that are delayed and not immediately available for retrieval. |
Count |
Reported if delayed messages exist in the queue. |
|
ApproximateNumberOfMessagesNotVisible |
The number of in-flight messages that have been received but not yet deleted or expired. | Count |
Reported if in-flight messages exist. |
|
ApproximateNumberOfMessagesVisible |
The number of messages currently available for retrieval and processing. | Count |
Reported if the queue is active. |
|
NumberOfEmptyReceives ¹ |
The number of ReceiveMessage API calls that returned no messages. | Count |
Reported during receive operations. |
|
NumberOfDeduplicatedSentMessages |
For FIFO only. The number of sent messages that were deduplicated and not added to the queue. | Count |
Reported if duplicate MessageDeduplicationId values or content are
detected. |
|
NumberOfMessagesDeleted ¹ |
The number of messages successfully deleted from the queue. |
Count |
Reported for each delete request with a valid receipt handle. |
|
NumberOfMessagesReceived ¹ |
The number of messages returned by the ReceiveMessage API. | Count |
Reported during receive operations. |
|
NumberOfMessagesSent ¹ |
The number of messages successfully added to a queue. | Count |
Reported for each successful manual send. |
|
SentMessageSize ¹ |
The size of messages successfully sent to the queue. |
Bytes |
Not emitted until at least one message is sent. |
|
¹ These metrics reflect system-level activity and may include retries, duplicates, or delayed messages. Don’t use raw counts to estimate real-time queue state without factoring in message lifecycle behavior.
Dead-letter queues (DLQs) and CloudWatch metrics
When working with DLQs, it's important to understand how Amazon SQS metrics behave:
-
NumberOfMessagesSent
– This metric behaves differently for DLQs:-
Manual Sending – Messages manually sent to a DLQ are captured by this metric.
-
Automatic Redrive – Messages automatically moved to a DLQ due to processing failures are not captured by this metric. As a result, the
NumberOfMessagesSent
andNumberOfMessagesReceived
metrics may show discrepancies for DLQs.
-
-
Recommended Metric for DLQs – To monitor the state of a DLQ, use the
ApproximateNumberOfMessagesVisible
metric. This metric indicates the number of messages currently available for processing in the DLQ.
Dimensions for Amazon SQS metrics
Amazon SQS metrics in CloudWatch use a single dimension: QueueName
. All metric data is grouped and filtered by the name
of the queue.
Monitoring tips
Monitor SQS effectively using key metrics and CloudWatch alarms to detect queue backlogs, optimize performance, and stay within service limits.
-
Set CloudWatch alarms based on
ApproximateNumberOfMessagesVisible
to catch backlog growth. -
Monitor
NumberOfEmptyReceives
to tune poll frequency and reduce API cost. -
Use
ApproximateNumberOfGroupsWithInflightMessages
in FIFO queues to diagnose throughput limits. -
Review SQS quotas to understand metric thresholds and service limits.