An administrator asked if it is possible to limit the number of outgoing Internet emails each user can send each day.
Yes, Exchange 2010 and 2013 can limit the number of messages a user sends, using the RecipientRateLimit and MessageRateLimit parameters in a Throttling Policy. These policies apply to both internal and Internet email.
MessageRateLimit controls the number of messages per minute that can be submitted. When messages are submitted using Outlook or OWA, the messages will stay in the Outbox longer when the user submits messages at a rate greater than the MessageRateLimit parameter. The messages are deferred, not denied, and will eventually be sent.
RecipientRateLimit limits the number of recipients that a user can send to in a 24-hour period. The user will receive an NDR for messages in excess of the limit.
Distribution groups (including dynamic distribution groups) in the Global Address List count as one recipient.
To create a new policy where the users can send to 30 recipients a day and no more than 1 message per minute, you would use this command:
New-ThrottlingPolicy -Name LimitMessagesSent -RecipientRateLimit 30 -MessageRateLimit 1
To assign it to a user, use this command:
Set-Mailbox -Identity user_alias -ThrottlingPolicy LimitMessagesSent
More Information
Understanding Message Throttling
Message rate limits and throttling
New-ThrottlingPolicy
New-ThrottlingPolicy
Rick Sandberg says
Do you know of an add-on to Outlook 2019 that will allow me to regulate the number of messages sent on a per minute and/or per hour basis? If I want to email 1400 members of our group but our web host has a 300 emails per hour limit, I have to send in 5 different batches at 5 different times. If I had a way to send only a certain number per minute or per hour then that would eliminate the extra work involved.
Diane Poremsky says
Some of the mail merge addins can do this, such as Sperry software's Send Individually. I have a list of mail merge utilities in the Tools section at
Mass Mail Tools for Outlook (slipstick.com)
Rick Sandberg says
Thank you!
Victor Ivanidze says
If you want to to limit the number of external recipients a certain group of people can send to, use “RestrictExtRecips for Outlook” and “RestrictExtRecips for Exchange” tools.
rino19ny says
is there a limit on the number of emails a user can receive per minute?
Diane Poremsky says
Receive? No, not really... it is controlled in part by the speed of your internet, your mail server and outlook. oh, and message size.
Matt says
Just as an update, I opened a ticket with microsoft about the messageratelimit we had set to 5 not working, we had recipientratelimit set to 500 so was hard to test, but sending 5 emails was no problem, only issue was the 6th email would go to, Microsoft tech was able to replicate this in their lab with the same issue. Just so happend the next day we had a user do a mail merge and call with a weird error they couldn't send more mail, sure enough it came back and said through some reading of the error couldn't send any more due to a policy set in the system, so the recipient rate limit worked but not the message rate limit, which for our organization was no problem! Just a FYI!
Matt
Sven says
I have the same problem, as the other ones. I set the MessageRateLimit with the value "2" to a new throttlingpolicy and set the policy to a test user, but i can also send unlimited messages per minute. Also a reboot not solve the problem. The server is a exchange 2013 with cu10. Probably it is a bug in a particular constellation or i don't know.
Rajah says
Hi Sven,
Im also facing this same issue with Exchange 2013 CU10 ? Did you got this resolved? any fix ? Please let me know
Rico says
Hi Diane,
i am looking for a solution to restrict how users send mass emails on my net work. i use office 360 cloud. the challenge here is that some of the user log in to via webmail client and others through out look .
Thanks
cl says
I'm looking for info on the expected send rate for Exchange 2010. We are sending individual 6kb emails to customers, not the same message and not BCC or CC, these are emails with one address going to a specific customer. When we sent the most recent batch of about 900+ emails they went at a rate of 4.4 per second. How fast is reasonable and are there any other adjustments I can make that could lower the send rate to 3.4 a second or even more?
I tested my mtu and set it for persistent 1472 as my best also now disabling rss, chimney and autotuninglevel. I also turned off all logging hoping for an additional reduction.
netsh interface tcp set global rss=disabled
netsh interface tcp set global chimney=disabled
netsh interface tcp set global autotuninglevel=disabled
My MessageRateLimit is null so this seems to indicate I couldn't send messages any faster yet I've been instructed to create new send policy.
If a MessageRateLimit is already set with null how could anything specified here cause an outgoing message to go any faster? After all if there are NO LIMITS anything else using logic would be slower? Creating a new policy and specifying any numerical value would be less than the existing policy of null or unlimited based on logic so maybe you can explain this?
Can you make any suggestions to speed up the outgoing messages?
Diane Poremsky says
There are a number of factors that can affect it - you can set a throttling policy -
New-ThrottlingPolicy -Name MessageRateLimit -MessageRateLimit 200 -ThrottlingPolicyScope Regular
but it may not help - internet connection speed and server load are a bigger factor. What client is generating the message? Outlook is very slow. It's been awhile since I looked at Exchange 2010, if it uses the IIS SMTP server, the bottleneck could be settings in it.
cl says
Diane, thanks for going backwards to 2010! First I'd want to clarify why I'd create a new throttling policy if my existing one can send at an unlimited rate? I've read a few times to just create a new throttling policy but no one explains why a new policy would be faster than the existing unlimited policy.
Seems to me null or unlimited is faster than anything with any numerical value that's been hard coded.
The server has plenty of resources, wen we were sending after I tweaked the network settings the network was only at 10MB on a GB Ethernet and processor and memory at less than 50%
Thanks!
jp.fenil@gmail.com says
Hello,
This is a great article. I have one question. Would this throttling policy apply to server side rules for a mailbox, i.e (Have server replying using specific template..). What I am asking is what the MessageRateLimit apply to that?
Thank you,
JP
Diane Poremsky says
Yes, it would apply to all messages that are sent from the sender's account.
iLikeIT says
Any way to throttle emails to a certain external domain?
Diane Poremsky says
No, not that I am aware of. Sorry.
Eric says
Diane,
The recipients are in the sender's contacts not in the GAL. SInce I posted this I have patched and rebooted 2 of the 3 CAS/Hub servers so maybe this month it will work.and throttle the email as expected.
Eric says
Diane,
Hopefully still monitoring this, I created a throttling policy and applied it to a specific mailbox that is used to send out monthly newletters. They send out 5 to 10 email with 200 to 300 recipients per email. I set the messageRateLimit to 5 and for 3 CAS/Hub servers that would be 15 emails sent per 60 seconds. However, when they sent thier last newsletter (2 weeks after I created and applied the policy) all the email still went out a once. Admittedly I have not recycled the RPC Client Access service. Any thoughts as to why it still sent each of the emails to all 200-300 people at once? We are running Exchange 2010 SP3 RU5 in a DAG.
Diane Poremsky says
Are the recipients in the GAL Contact Groups or in contacts? GAL Contact groups count as 1.
Robert says
Hi Diane,
Is there a way for administrators to quickly tell which users have gone over their recipient rate limit for the day?
Diane Poremsky says
No, quickly as in a powershell, not that I am aware of or can find (but i could be a poor searcher :)). There might be information in the server logs.
Shah Murad says
Hi Diane,
Not sure if you are still monitoring this, I had couple of questions and wondered if you might know the answers:
1: I know emails to Distribution Group is counted as single email message. What about personal Distribution Groups? And Mail Groups in Public folders?
2: If you expand the group (by clicking on the + sign to see the members), would the message be still treated as a single email message? Would it be differnet when using mail groups from Public Folders?
Thanks!
Shah
Diane Poremsky says
personal groups are not counted as 1, they expand in Outlook when you send the message and each member counts as 1. I think they are treated like PDLs, and would be expanded by Outlook, so 1 per member.
Mary E Lincoln says
Diane - Thanks for simplifying the topic. You mentioned Internet messages on the subject, does not apply to the internal messages?
Thanks!
Mary
Diane Poremsky says
it applies to all messages, internal or external. The original question asked specifically about internet. I'll clarify it in the article. Thanks!
Adrian says
It's a known bug, see the following link
https://support.microsoft.com/kb/2698571
Usmaan Amin says
Dear Diane
how to apply throttling policy for all users?
Diane Poremsky says
You'd use the Get-Mailbox policy to get all of the mailboxes in the Users OU then Set-Mailbox sets them -
Get-Mailbox -OrganizationalUnit Users | Set-Mailbox -ThrottlingPolicy LimitMessagesSent
Rich says
Diane,
Thanks for the info, just what we needed. However, it seems that in our case, the messages are not being DEFERed, but rather simply never sent. The user's Sent Items folder shows they were all sent, but a large portion of them have a "received" date of "none", and I have verified, those marked "none" were all not sent. I;ve checked the server message tracking, and there is no record of those messages at all, either "DEFER", "RECEIVE", "SEND" or "SUBMIT". Any thoughts as to why this might be happening?
Diane Poremsky says
This is an exchange account? If they are in the sent folder, they were handed off to the server. What antivirus do you use on the desktops? Is it scanning outgoing email?
Thomas Eugene says
Hi,
Already restarted RPC client and Transport services. Still no affect. It has been days, in that time, i have logged off and on. Any thing else I need to check?
Thanks.
Diane Poremsky says
Use Get-ThrottlingPolicy -Identity ThrottlingPolicy2 | Format-List to check the policy and make sure it is applied.
Thomas Eugene says
Hi,
Thanks for this info. I did all that by creating new policy and applying messageratelimit. But it turns out the users are still able to send emails without any limits. I set it to 4/min and they are able to send 10's. Is there something I am missing?
Thanks.
Diane Poremsky says
I don't think you need to restart the service... but that would be my next step. Also, because its policy, they need to log off and back on for it to apply.
Jonathan Santos says
Hi Diane!
Thank for information!
That helped me a lot!
Xabier Olmedo says
Hi Diane !
First, excuse my english.
Is there a general or international recommendation to put limits users regarding the number of recipients, so they do not consider us spammer?
Thanks.
Diane Poremsky says
No, it really depends on the decision of each mail server. Use mail merge when possible or put the addresses in the BCC field.