Configure your send process
Last updated
Last updated
Most of hosting companies (almost all of them) apply some restrictions to the send process so you won't be able to send a lot of e-mails at once (this limitation is usually around 300 e-mails per hour). This article will explain you how AcyMailing sends your e-mails and how you can overcome any server limitation.
First of all, AcyMailing always uses a queue to send your e-mails. So, if the message can not be sent immediately (time out, limitation of a shared hosting environment, memory limitation, etc.), AcyMailing will keep it in the queue so you will be able to send it later. If you are reading this article because you saw a lot of errors during the send process and the process stopped, don't panic! You will be able to easily resume your send process and you won't loose any message.
In some cases, the mail server does not return a failed status to AcyMailing so AcyMailing will consider that all your e-mails have been sent properly and won't be able to stop the send process automatically. In that case, it's very important to configure AcyMailing to respect your sending limitations.
You can see and manage your queue of messages by clicking on the queue menu on the AcyMailing back-end.
If you use AcyMailing Starter or our commercial version (without the Automatic Only option) and you send a Newsletter, AcyMailing will open a popup and start sending your Newsletter to your users. It will send one batch of e-mails then make a pause and then refresh the page and send another batch of e-mails and make a pause and refresh the page... until the end of the process.
If AcyMailing detects errors during the process, it will either automatically refresh the page (to avoid a time out for example) or stop the sending process (if a hosting limitation is detected). In both cases AcyMailing should display you a clear message about what's going on and if AcyMailing stopped the send process, you will be able to resume it by clicking on the Process button on the queue page.
During the send process, the sending window (the popup) should always stay opened. If you close it, AcyMailing will finish the current batch and then stop the send process. That's not a problem as you will be able to resume it anyway. If you want to be able to log out, turn off your computer and let Acy do the job, you will have to go for one of our paid version.
Using one of our commercial versions (AcyMailing Essential or Enterprise), you will be able to configure AcyMailing to automatically overcome any server limitation and you won't have to keep your internet connection opened during the send process. We even recommend you to use this method if you have a dedicated server as it will lower your spam score, it spreads the load on the server and also the traffic that's being generated from the newsletters.
If you use AcyMailing to send e-mails from the front-end, it will always use the Automatic process but you should still configure a cron task to trigger AcyMailing regularly.
Go on your AcyMailing Configuration page and click on the tab Queue process
Select the option Queue processing : Automatic Only
Using this option, if you send a Newsletter, AcyMailing won't even start the send process but will simply add all your e-mails in the queue and display you a confirmation message.
Now we will need a system to automatically trigger AcyMailing and enable it to automatically send your e-mails, this is what we call a cron task. So each time AcyMailing will be triggered, it will send X e-mails. That way, you will be able to configure AcyMailing to send 200 e-mails per hour or anything else which suits your hosting limitations.
The frequency you can see on the automatic send process configuration is a security parameter for AcyMailing. It's set by default to 15 minutes as our own cron service enables you to create a cron task with a 15 minutes frequency. This parameter is only there to avoid having someone else triggering your send process more often than it should be. You should set this parameter with the same value as your cron frequency.
On this same "Queue process" tab, you will see below an area "Cron"
On this interface you will be able to see the last report of the cron task, you will see your Cron URL (which is the url you should trigger every X minutes if you want to create your own cron task), you will see the last run time, etc.
Now the only thing you have to do is to configure a cron task. You can handle it on your own server or you can let our server do the job for you (We created a free and easy service on Acyba.com to avoid you spending time on that part as it can be technical depending on your hosting company).
Depending on your hosting limitations, you can optimize the AcyMailing send process.
We recommend you to keep 5% of e-mails for your other components (send passwords, registration confirmation...) so if your limitation is 250 e-mails per hour, you should not use more than 240 e-mails for AcyMailing.
Each batch should not send more than 250 e-mails. It's always better to increase your frequency than increasing the number of e-mails per batch.
Here is the optimal configuration you should use based on the hosting company you are using for your website :
Hosting Company | Limitations | Send X e-mails every Y minutes | Configuration / Observation |
1and1 | 100 per task 200 per hour | 95 e-mails / 30 minutes | |
Amazon SES |
| ||
BlueHost | 150 per hour | 70 e-mails / 30 minutes | |
DreamHost | 50 per hour | 45 e-mails / 1 hour | Do not leave the bounce e-mail address field empty! |
Free.fr | 20 per task 100 per hour 2000 per week | 18 e-mails / 15 minutes | If you're using your own cron or the manual send process, you can send 15 e-mails every 10 minutes |
GMail | 100 per hour 500 per day | 48 e-mails / 30 minutes 20 e-mails / 1 hour (>500 users) |
|
Google Apps for Business or Education editions | 2000 per day | 80 e-mails / 1 hour | |
GoDaddy | 100 per task 1000 per day | 95 e-mails / 15 minutes 40 e-mails / 1 hour (>1000 users) |
|
Goneo | 250 per hour | 60 e-mails / 15 minutes |
|
GreenGeeks | 100 per hour by default | 45 e-mails / 30 minutes | |
Host Gator | 500 per hour | 115 e-mails / 15 minutes | |
Host Monster | 500 per hour | 115 e-mails / 15 minutes | |
Hosting 2GO | 50 per 15 minutes | 45 e-mails / 15 minutes | |
Hotmail | 100 per day | Due to this limitation, you should not use Hotmail as smtp server. | |
Locaweb | 100 per hour | 45 e-mails / 30 minutes | |
Lunarpages | 20 per task 600 per hour | 19 e-mails / 15 minutes | You can use your own cron task to have a better frequency (every 2 minutes) |
Lypha | 2000 per hour | 400 e-mails / 15 minutes | |
Maven Hosting | 500 per hour | 115 e-mails / 15 minutes | |
Netissime | 500 per 15 minutes 1000 per day | 100 e-mails / 15 minutes 40 e-mails / 1 hour (>1000 users) | |
Office 365 |
| ||
One.com | 25 per 5 minutes | 24 e-mails / 15 minutes | You can use your own cron task to have a better frequency (every 5 minutes) |
OVH via smtp | 100 per hour Pack Perso: 500 per day Pack Pro: 500 per day Pack Business: 1500 per day Pack Premium: 2000 per day | Waits 10s between 2 emails 20 e-mails / 1 hour 20 e-mails / 1 hour 48 e-mails / 1 hour 80 e-mails / 1 hour |
|
OVH via phpMail | The process will be blocked if more than 5% of your messages bounce But you can easily unblock it on your account at: Manager v3 > Mutualisé > Récapitulatif > Hébergement > Suivi Emails Automatisés. | 200 e-mails / 1 hour |
Using this sending method, OVH will overwrite the bounce e-mail address so all delivery failures will be handled by OVH. You could then export the file generated by OVH and import it in Acy using our universal filter plugin but you won't be able to use our automatic bounce handling (you could use the smtp function then... but you will have stronger limitations). |
PHPNet | 100 per hour | 50 e-mails and 2 second pauses between each batch with the manual send process | E-mails are added to their own queue so you can send as many e-mails as you want and then their server will deliver automatically 100 e-mails per hour |
Rochen | 100 per 10 minutes 1000 per day | 95 e-mails / 15 minutes 40 e-mails / 1 hour (>1000 users) | |
Site5 | 1000 per hour | 240 e-mails / 15 minutes | Your from and bounce e-mail address should belong to your own domain |
Siteground | 400 per hour | 95 e-mails / 15 minutes | |
Techark | 250 per hour | 60 e-mails / 15 minutes | |
VCServer Network | 100 per hour | 45 e-mails / 30 minutes | |
Webcity | 20 per 6 minutes | 19 e-mails / 15 minutes | You can use your own cron task to have a better frequency (every 8 minutes) |
Yahoo | 100 per hour | 95 e-mails / 1 hour |
Your Cron frequency and the frequency displayed on the configuration should be the same. Please do NOT take this information for granted, as your email account provider or hosting company can change its email policy without any prior notification. It is always a good idea to contact your email account provider or hosting company and ask about the email send rate, before proceeding with a mass email campaign.
The number of emails you send each batch depends on your server: When your cron task is triggered, AcyMailing will try to send your 500 emails at once.. but every server has a maximum execution time! So for example if your server takes 1 second to send each email and its maximum execution time is 240 seconds, it will be able to send maximum 240 emails per batch. We usually recommend to not send more than 400 emails per batch, and if you need to send more emails, you can set up a multiple queue system. You can see the maximum execution time of your server in the AcyMailing configuration, tab "Queue process", the "real" value is the one displayed in the "Based on our check..." row.
It depends on your server... If you host your website on a shared plan, then most of them have sending limitations so you will be able to send between 200 and 1000 emails per hour (and you can configure AcyMailing to stay below this limitation... it will send 100 emails every 15 minutes for example).
If you install AcyMailing on your own dedicated server then you can send as many emails as you want... Some of our clients use AcyMailing with a mailing list of more than a million users.
You can also plug AcyMailing to an external delivery service so you won't be bothered by your host sending limitations. You can plug it to Mandrill, ElasticEmail, SendGrid, Amazon SES and even GMail itself (GMail has its own limitations as well).
With a limitation of 300 e-mails per hour, we recommend to configure AcyMailing to send 280 e-mails per hour so 70 e-mails every 15 minutes.
Go on the AcyMailing configuration page, tab "Queue Process" :
Queue processing : Automatic Only
Send 70 e-mails every 15 minutes
Click on the button "Create/Edit your cron task", select the frequency "15 minutes" in the popup and click on the button "save"
Save the AcyMailing configuration page to apply the changes.
Even if you don't have any sending limitation, we don't recommend you to send more than 300 e-mails per batch. Why?
To reduce the probability to be flagged as a spammer
To spread the load on the server
To spread the traffic that's being generated from the newsletters
If you don't mind your send process to take an entire day (or even more), the best configuration is usually to send 120 e-mails every 15 minutes.
Go on the AcyMailing configuration page, tab "Queue Process" :
Queue processing : Automatic Only
Send 120 e-mails every 15 minutes
Click on the button "Create/Edit your cron task", select the frequency "15 minutes" in the popup and click on the button "save"
Save the AcyMailing configuration page to apply the changes.
You can increase your number of e-mails per task if you want to speed up the send process and/or create your own cron task with a frequency of 5 minutes.
It depends on the sending method you're using.
If you use our free version, you will use the "manual" sending method so if you close the window then the send process will stop.
If you use our commercial version and use the "automatic only" send process, then AcyMailing will add your e-mails in the queue and take care of the send process using a cron task. So you can log out, turn off your computer and do something else.