How to fix “554 Too many recipients” email error
A common email bounce error we see in VPS and Shared servers is:
The rejected e-mail address was 'email@example.com'. Subject 'My mail subject', Server Error: 554, Server Response: 554 Too many recipients, Server: 'mx.sender.com', Windows Live Mail Error ID: 0x800CCC79, Protocol: SMTP, Port: 587, Secure(SSL): No
This error is seen when people attempt to send group mails with a large CC or BCC list.
What is the error “554 Too many recipients”?
Every mail server places a limit on the number of recipients that can be placed in To, CC and BCC combined.
This limit is placed to:
- Keep a control on memory usage
- Prevent mail server abuse
If there’s no limit, malicious scripts can send spam to thousands of email IDs in just one mail transaction. This will make spam infections hard to detect and mitigate.
We’ve seen hosting providers keep recipient limits as low as 10 per mail, and up to 500 per mail.
When this limit is exceeded, the mail bounces with the error 554 Too many recipients.
How to fix “554 Too many recipients”
Many mail servers such as Postfix and Exim keep the default recipient limit as 50. This should be enough for all normal mail communications.
So, changing this limit is not recommended, especially in shared servers.
However, there can be exceptions based on the web hosts’s market segment. Here are two ways in which we tackle it in our customer servers.
1. Increase the Max recipients limit
The recipient limit can be changed by modifying these settings:
- Exim – Default limit is 0 (unlimited), but many vendors such as cPanel & DirectAdmin set it to 50. Edit the value recipients_max to change it.
- Postfix – Default value is 1000, but many vendors set it to 50. Edit smtp_destination_recipient_limit to change it.
- MailEnable – 300 is the default setting. Go to MailEnable MMC –> SMTP Connector [Right Click] –> Properties –> Security –> Maximum Number of Recipients, to change the limit.
- Sendmail – In Sendmail v8.10 and above the default limit is set as 0 (unlimited), but service providers set it to lower values. Edit MaxRecipientsPerMessage to change it.
- Zimbra – Zimbra uses Postfix as its mail server. Edit smtpd_recipient_limit in Postfix configuration file to change the limit
2. Setup a mailing list app
The ideal way to resolve this is to setup a mailing list software.
A mailing list will send individual mails to everyone in the list. This will give each recipient a personalized feel, and keeps the server safe by staying under the recipient limit.
Some common open source mailing lists we setup include Dada Mail, phpList, Sympa, mlmmj, etc.
Note : When setting up mailing lists, you must upgrade the app religiously. If not, attackers can exploit vulnerabilities to send spam, and get your IP blacklisted.
Hosting providers set limits on number of recipients per mail in an effort to prevent abuse, and to reduce resource usage. When that limit is exceeded, mails will fail with the error 554 Too many recipients. Today we’ve seen two ways in which our Support Engineers resolve this issue.