SES - complaint rate never goes down over time

8

I use SES, and the bounce % rate goes up and down over time (number of emails / number of bounces). With the complaint rate though, the percentage only ever goes up. I send thousands of emails and the vast majority are clean without complaint. My complaint rate is now 0.1% and has been this way for a couple of months, despite no complaints being made in that time. I would expect it to go down over time, same way as the bounce rate does. It's a simple calculation of email sent / number of complaints. But it never ever goes down, the only way it ever goes is up - heading towards warnings etc, even though my complaint rate is clearly lower than that shown. Basically, if I get one more complaint amongst the thousands sent (all legitimate emails to registered customers) I'll probably tip over 0.1%.

Venton
asked 2 years ago941 views
5 Answers
1

The complaint rate calculation has a bug, it's showing a totally different value compared to what's the real metrics give by total(complaint) / total(sent).

I've spent some time writing this script to calculate the correct value.

Please submit it to the technical team to review, I don't have that level of subscription.

SEND=$(aws cloudwatch get-metric-statistics \
  --namespace AWS/SES --metric-name Send \
  --start-time 2023-01-01 --end-time 2024-01-01 \
  --period 864000000 --statistics Sum --query 'Datapoints[0].Sum')

BOUNCE=$(aws cloudwatch get-metric-statistics \
  --namespace AWS/SES --metric-name Bounce \
  --start-time 2023-01-01 --end-time 2024-01-01 \
  --period 864000000 --statistics Sum --query 'Datapoints[0].Sum')
    
COMPLAINT=$(aws cloudwatch get-metric-statistics \
  --namespace AWS/SES --metric-name Complaint \
  --start-time 2023-01-01 --end-time 2024-01-01 \
  --period 864000000 --statistics Sum --query 'Datapoints[0].Sum')
    
BOUNCE_RATE=$(bc <<< "scale=4; ($BOUNCE/$SEND)*100")
COMPLAINT_RATE=$(bc <<< "scale=4; ($COMPLAINT/$SEND)*100")

echo "bounce rate: $BOUNCE_RATE%"
echo "complaint rate: $COMPLAINT_RATE%"
answered 6 months ago
0

I am having the same issue, did you manage to solve it?

Like I will send 2k emails a day, and each week will get 1 complaint. Each week my complaint rate increases. I am now at 0.7% and will soon hit the limit despite my true rate being 0.007.

Something is fundamentally broken and I am afraid of using AWS further.

answered a year ago
0

No I didn't solve it. Like you I'm scared to use it, so I had no choice but to use a different provider. Frankly SES is a joke.

Venton
answered a year ago
-1

The complaint rate is calculated by dividing the total number of complaints received by the total number of emails sent, and is expressed as a percentage. This means that if you continue to send emails without receiving any new complaints, the complaint rate will remain the same, even if the number of emails you are sending increases.

Additionally, it is important to note that the complaint rate is a cumulative metric, and does not reset over time. This means that even if you receive no new complaints for a long period of time, the complaint rate will still reflect the total number of complaints you have received in the past.

If you are concerned about your complaint rate, there are a few things you can do to help reduce it. First, make sure that you are only sending emails to recipients who have specifically agreed to receive them. This can help reduce the likelihood of receiving complaints from recipients who did not want to receive your emails in the first place.

Additionally, it can be helpful to review the content of your emails to ensure that they are relevant and engaging to your recipients. This can help reduce the likelihood of recipients marking your emails as spam, which can increase your complaint rate.

Finally, if you continue to receive complaints even after taking these steps, it may be worth reaching out to AWS support for assistance. They will be able to provide more specific information about the cause of your high complaint rate and help you develop a plan to reduce it.

profile picture
answered a year ago
  • Hi Robert, thanks for taking the time to comment. You say "The complaint rate is calculated by dividing the total number of complaints received by the total number of emails sent, and is expressed as a percentage. "

    Lets say I've had 10 complaints, and 1000 emails sent. 10/1000 *100 = 1% If I have no further complaints and send 10,000 emails, 10/10000 * 100 = 0.1%

    So the statement "This means that if you continue to send emails without receiving any new complaints, the complaint rate will remain the same, even if the number of emails you are sending increases." appears to be incorrect. This is really the whole point of my posting. It shouldn't stay the same, it should reduce.

-2

Hi Venton, Complaint rates are not calculated based on a fixed period of time, because different senders send at different rates. Instead, SES looks at a representative volume—an amount of mail that represents your typical sending practices. To be fair to both high- and low-volume senders, the representative volume is different for each user and changes as the user's sending patterns change. Additionally, the complaint rate isn't calculated based on every email. Instead, it's calculated as the percentage of complaints on mail sent to domains that send complaint feedback to Amazon SES.

profile picture
answered a year ago

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions