I have a PHP app I have written for clients to create HTML newsletters and send them out to emails in a database. Mailing is done via the mail() command (I know, crappy), from a CRON job with proper pauses, etc. Up to now, all clients have had limited lists (the maximum was 8000 mails, sent in two hours). The server is my own - no restrictions there. The software handles bounced mails, opt out options, etc.
A new client wants to send out 100,000 mails a month in 25K weekly batches and I want to replace the mail() function. Any suggestions? Would the PHPMailer class do the trick?
Check out SwiftMailer - it is much better than PHPMailer and is actively being developed (PHP Mailer seems sporadic at best)
For this kind of volume, you'd be much better off going with an external service, such as
- Constant Contact
- Exact Target
- Mail Chimp
- Net Atlantic
If you try to do this yourself, you'll more than likely end up getting flagged as a spammer. In addition, you need to be careful of managing opt-out lists and such (as per CAN-SPAM).
These services will usually have an API, so it should be relatively simple to integrate with your current codebase without any trouble.
Using a such a service will mean less work in the long run, better compliance, less trouble with getting marked as spam, and the likes.
(Information compiled from a related Something Awful thread.)