I am utilizing a homemade PHP script with PHPmailer for delivering email, presently I simply do one choose statement in MYSQL after which operate a 100-150 email send request from PHPmailer using a for loop.

my issue is that I must port this script to some 7000 user subscriber list, and that i know it will not endure since delivering to 150 takes 8 secs of execution time - also delivering 7000 emails might mark me like a spammer or I will not have the ability to handle all responces.

I figured about splitting the 7000 into categories of like 200-500 and delivering an e-mail to every group every single day until delivering everybody - to achieve that i'm going to write a PHP script that handles the limits and takes note of when &lifier who out there has not received that email yet and it is because of receive it around the next batch.

What exactly are my options, what exactly are your ideas?

The first approach is a nice wise decision. As lengthy as you are comfortable with it taking about 3 minutes to transmit all of the emails (which it ought to be, if you are only delivering an every week e-newsletter or even the like). To lessen the risk of getting marked junk e-mail, lower the threshold or allow it to be take more time. Beyond that, it may be smart to transfer to a located mass mailing service.

Just my 2 cents.

1) To be sure with Dork re: allow it to be take more time of computer needs. Most black/gray listing may be the the recipient mail server determining there's a strange quantity of traffic in comparison to usual. Yahoo is terrible with this and because of the sheer amount of domain names they cope with, it may get annoying.

2) Using multiple IP addresses does not hurt. Extra Insolvency practitioners are often free, and when you're using exim, it is simple to configure it to make use of each IP according to e.g. EHLO, or send to domain and so forth. Which means that there's less volume originating from anyone IP.

3) Have a tabs on bounce backs. Some companies could keep a tabs on the amount of tries to deliver mail to some non-existent address, the greater you attempt, the greater suspicious it appears. Simplest method to have a tabs on them in my opinion is by using VERPs and obtain PHP to process the incoming data.

4) Setup reverse DNS. Some hosts will just disregard the mail should you haven't first got it setup for that sender. In my opinion America online is definitely an example.

Only a couple of pointers from the experience.

The action of delivering 7000 [or even more] emails won't enable you to get marked like a spammer ~presuming~ the mail you're delivering is:

  • not junk e-mail
  • consists of complete &lifier accurate header information

The only issue you can find is blocking your mail queue, however, you r volume continues to be pretty low. I'd say for scalability - throttle your delivery over around an hour approximately.

and consider ceejayoz's suggestion "MailChimp" it's release to 5000 emails/month and it has a great API that you could literally integrate to your application over a couple of hrs.

-sean