How to Send WordPress Emails via Outlook SMTP

Photo: Unsplash — free to use, no attribution required

Why WordPress Email Delivery Fails

By default, WordPress uses the PHP mail() function to send emails. This function relies on your web server's mail configuration, which on most shared hosting environments is either poorly configured or severely restricted. The result is predictable: emails fail silently, land in spam folders, or never arrive at all.

The core problem is authentication. When WordPress sends email through PHP mail, the message originates from your server's IP address without proper SMTP authentication. Email providers like Gmail, Outlook, and Yahoo increasingly reject or flag unauthenticated messages as potential spam. This affects everything from contact form submissions to WooCommerce order confirmations and password reset emails.

SMTP (Simple Mail Transfer Protocol) solves this by routing your WordPress emails through an authenticated mail server — the same way your email client sends messages. This authentication tells receiving mail servers that your email is legitimate, dramatically improving deliverability.

Prerequisites Before You Begin

Start by deciding which SMTP service fits your needs. The main options for WordPress sites include: Gmail/Google Workspace SMTP (good for low volume, free with Google account), Microsoft 365/Outlook SMTP (ideal if you already use Microsoft for business email), SendGrid (generous free tier of 100 emails/day), Mailgun (5,000 free emails for the first three months), and Amazon SES (extremely low cost at scale).

You will need administrator access to both your WordPress dashboard and your domain's DNS management panel. DNS access is required to add SPF, DKIM, and potentially CNAME records that authenticate your domain as an authorized sender through your chosen SMTP provider.

Install your chosen SMTP plugin before gathering credentials. The two most reliable options are WP Mail SMTP (by WPForms) and FluentSMTP. Both support all major SMTP providers and provide connection testing tools that simplify troubleshooting.

Configuration Walkthrough

After installing WP Mail SMTP or FluentSMTP, configure the mailer type. Most plugins offer both direct SMTP configuration and API-based connections. API connections (available for SendGrid, Mailgun, Amazon SES, and others) are generally more reliable than SMTP because they bypass potential port blocking on your hosting server.

For direct SMTP setup, enter these settings carefully — a single character error in the server address or port number will cause connection failure. Double-check your credentials by logging into your SMTP provider's dashboard to confirm the username and password or API key are correct.

Configure the "Return Path" to match your From address. This ensures that bounce notifications (undeliverable messages) come back to the correct address. Some SMTP plugins call this "Set the return-path to match the From Email" — enable this option if available.

Save your settings and proceed to the testing step before assuming the configuration is complete. Many WordPress email issues are only discovered when a test email fails — and it is better to catch these issues now than when a customer is waiting for an order confirmation.

Testing and Verification

After configuration, send a test email to verify everything works. Most SMTP plugins include a built-in test function — use it to send a test message to a personal email address (preferably Gmail or Outlook, as they have the strictest filtering). Check that the email arrives in the inbox, not the spam folder.

Examine the email headers of your test message. In Gmail, open the email, click the three dots menu, and select "Show original." Look for these indicators: SPF should show "PASS," DKIM should show "PASS," and the DMARC alignment should be "PASS." If any of these show "FAIL," your DNS authentication records need attention.

Use external verification tools to confirm your setup. Services like Mail Tester (mail-tester.com) provide a comprehensive score for your email configuration, checking SPF, DKIM, DMARC, blacklist status, and content quality. Aim for a score of 9/10 or higher before considering your configuration complete.

Troubleshooting Common Issues

Email delivery is not a set-and-forget configuration. Monitor your sender reputation regularly using tools like Google Postmaster Tools (for Gmail delivery) and Microsoft SNDS (for Outlook delivery). These free tools show how receiving servers perceive your email — including spam complaint rates, authentication pass rates, and delivery success.

Keep your SMTP plugin and WordPress core updated. Security vulnerabilities in outdated email plugins can be exploited for spam sending, which damages your domain's sender reputation. Schedule regular updates and test email delivery after each update to catch any compatibility issues.

If you switch hosting providers, re-verify your SMTP configuration. Different hosts have different outgoing port policies, IP reputations, and firewall rules. What worked on your old host may not work identically on the new one. Run the full testing checklist after any infrastructure change.

Frequently Asked Questions

Why is my WordPress site not sending emails?

The most common cause is that your site uses PHP mail() instead of authenticated SMTP. Most hosting servers have poor email configuration, causing messages to fail silently or land in spam. Installing an SMTP plugin like WP Mail SMTP or FluentSMTP and configuring it with a proper email service resolves this issue for the vast majority of WordPress sites.

Which SMTP plugin is best for WordPress?

WP Mail SMTP (by WPForms) and FluentSMTP are the two most reliable options. WP Mail SMTP has the largest user base and supports all major providers. FluentSMTP is free with no premium upsells and supports multiple SMTP connections. Both handle the core function — routing WordPress email through authenticated SMTP — equally well.

What SMTP port should I use for WordPress?

Port 587 with TLS encryption is the recommended standard for SMTP client submission. If your host blocks port 587, try port 465 with SSL encryption as an alternative. Port 25 is typically blocked on shared hosting and should be avoided. Your SMTP provider's documentation will confirm the correct port for their service.

Do I need a paid SMTP service for WordPress?

For sites sending fewer than 100-300 emails per day, free tiers from services like SendGrid (100/day), Brevo (300/day), or your existing Gmail/Google Workspace account may be sufficient. For WooCommerce stores or high-traffic sites, a paid transactional email service provides better deliverability, analytics, and dedicated IP addresses.