This is a question very often asked by webmasters and developers – this post help you understand, which method you should be using got sending emails and their impacts.
PHP Mail() Introduction
PHP mail() by far is the easiest way to send emails BUT this comes with alot of security issues & weak controls – when you allow your website to send out emails through PHP mail function you don’t authenticate your email with password i.e. email is sent from blanket account tagging – needless to say, ISPs know this behavior and they can punish you by sending your emails to Junk instead of receiver’s inbox.
SMTP Authentication Introduction
SMTP authentication is the method where you authenticate your email credentials before it is sent out to the receiver. This may take an additional 5 minutes of your time compared to PHP Mail() to setup but you get the benefit of sending real email that tells ISPs that the email they are receiving is coming from a real email account i.e. better chances of you delivering email to user Inbox and not Junk!
PHP Mail() vs SMTP Authentication
We outlined the primary difference above between the two methods, however the below list helps you understand further details:
- When you send emails through SMTP, receiver ISP consider your email secure and improves email delivery
- PHP mails reduce the reputation of your domain/IP and it impacts alot factors negatively including suspension/blacklisting of IP addresses
- The most wide attack on any wordpress site are the scripts that generate tons of spam email through PHP mail, forcing SMTP means that you reduce your chances of getting hurt
- Better control when you use SMTP for email delivery, you can be sure that any email being sent through your account is password authenticated
With years of experience in managing thousands of sites, we say that you should always use SMTP authentication for any emails you send out. SMTP authentication method is secure, reliable and more than anything it improves your email delivery!