%name How can I send thousands of emails without limits in php?

If you run your own server and send legitimate emails, there is no practical limit to how many emails you can send. You’re not paying per-message fees, and almost all spam filtering is now done by what the users do with their messages – so if they act like you’re sending stuff they want (i.e. they read it and don’t mark it as spam), you will have no deliverabilty issues.

There’s nothing to say that a server sending high volumes of email will necessarily get blacklisted, though it is often regarded as suspicious if a new server suddenly starts sending lots of messages, so it’s a good idea to ramp it up slowly, and/or spread your sending across multiple IPs.

I have self-built sites that send high volumes using PHPMailer – sometimes millions per day each – but you may have trouble configuring an off-the-shelf server to do that. PHP is quite capable of sending several hundred messages per second, mostly depending on your templating system.

You do have to be completely paranoid about your config though:

  • Set up strict SPF
  • Sign with DKIM
  • Configure DMARC
  • You can’t use BCC for personalised messages
  • Don’t send attachments
  • Keep messages small, link to bigger content
  • Make sure your mail server DNS records resolve both ways
  • Make sure you have good bounce handling (difficult in PHP)
  • Use VERP addressing (helps bounce handling)
  • Monitor your mail server queues
  • Deal with any unsubscribes, spam reports or blacklisting immediately
  • Alwaysalways use double-opt-in for new subscriptions
  • Never use bought-in lists

All this stuff is essentially what you’re paying for when you use an ESP, and though they will often try to tell you otherwise, there’s nothing stopping you from doing it all yourself – as the saying goes, it’s free so long as your time has no value!

As others have mentioned, RSS or notifications may allow you to reduce the amount you need to send via email.