Get a free website with any plan

See how
WORDPRESS

Sending WordPress email through SMTP

Last updated

IN SHORT

WordPress sends messages through PHP mail by default, causing inboxes to reject messages for missing SPF and DKIM authentication. To ensure reliable delivery on Flashcloud, configure a WordPress SMTP plugin to route outgoing email through your authenticated Flashcloud mailbox or a transactional email provider.

WordPress uses PHP's mail() function by default, which most inboxes flag as spam or drop outright because it doesn't authenticate against SPF or DKIM records. The fix is to route outgoing mail through actual SMTP with real authentication instead. The fastest path is an SMTP plugin, installed from wp-admin → Plugins → Add New, pointed at either your Flashcloud mailbox or a transactional email service.

If you just need password resets, order notifications, and contact form mail to land reliably, this is a 10-minute fix. No server-side configuration required.

Why PHP mail() fails

When WordPress calls mail(), the message gets handed to the server's local mail transfer agent and sent with minimal headers. It doesn't authenticate as coming from your domain, so receiving mail servers checking SPF and DKIM see a mismatch and either bin the message or reject it outright. This has nothing to do with your hosting being slow or misconfigured. It's just how mail() works everywhere, not only on Flashcloud.

SMTP fixes this because it logs in to a real mail server with a username and password, using a connection that's already set up to authenticate correctly for that domain.

Set up an SMTP plugin

The plugin route works for almost every site and needs no code:

  1. In wp-admin → Plugins → Add New, search for an SMTP plugin (WP Mail SMTP and Easy WP SMTP are both common choices).
  2. Install and activate it.
  3. Run its setup wizard and choose a mailer. Two options work well here:
    • Your Flashcloud mailbox. Use an Email Account you've already created for the domain (see the Email Accounts tile in the portal). Host is mail.yourdomain.com, port 465 with SSL or 587 with STARTTLS, and the username is the full email address, not just the local part.
    • A transactional email service (SendGrid, Mailgun, Postmark, etc.). Better for higher volume or if you want delivery analytics, since these services specialize in inbox placement and give you send logs.
  4. Enter the credentials and send a test email from the plugin's test tab.

Once the test email arrives, every WordPress-originated email goes out through SMTP instead of the local mail function: password resets, comment notifications, and WooCommerce order confirmations if you're running a WooCommerce store.

Test before you rely on it

Don't just trust the plugin's built-in test button. Trigger a real-world flow:

  • Request a password reset for a test account and confirm it arrives, and check spam if it doesn't show up in a minute or two.
  • If you run a store, place a test order and verify the confirmation email fires. See running a WooCommerce store for why order mail specifically matters.
  • Check any contact form plugin you use separately, some route mail through their own settings rather than deferring to the SMTP plugin's hook, so verify each form independently.

If you're changing mail configuration, do it on staging first

Swapping mailers or reconfiguring SMTP on a live store or high-traffic site carries a small but real risk. If the test fails mid-swap, you can end up with a window where no mail sends at all: missed order confirmations, missed password resets. If you're not confident the change will go cleanly, test it on a staging copy first, verify the send flow end to end, then apply the same settings to production.

It's also worth taking a fresh backup before touching mail plugins on a store, since some SMTP plugins bundle form or logging add-ons that write to the database. See running a WooCommerce store for the general rule.

When to open a ticket

Most SMTP setup issues are credential typos or the wrong port, and the plugin's error log usually names the exact SMTP response code. If test emails still fail after double-checking host, port, and encryption mode, or if you suspect the domain's SPF or DKIM records aren't matching what your SMTP provider expects, open a ticket from Support → New ticket in the portal. A real person can check your domain's DNS records and mail authentication status directly.

Common questions

Why are my WordPress emails going to spam?

Receiving servers reject or bin default WordPress messages because the PHP mail function does not authenticate with SPF or DKIM records. Routing your messages through an authenticated SMTP server fixes this mismatch.

What server settings do I use for a Flashcloud mailbox?

Use mail.yourdomain.com for the host with port 465 on SSL or port 587 on STARTTLS. Enter your full email address as the username, not just the local part.

When should I use a transactional email service instead of my mailbox?

Choose a transactional service if you send high volumes or require delivery analytics and send logs. A standard Flashcloud mailbox handles routine password resets, order notifications, and contact forms.

Can reconfiguring my mail plugin break live emails?

Yes, an invalid credential or port typo can stop all site emails until you fix the setting. Test changes on a staging copy first and take a fresh backup before modifying plugins on a live store.

CAN'T FIND IT?

Real humans answer fast.

Hosting with us? Open a ticket and a real person replies - no scripts, no upsells. Still choosing a host? The same team is included with every plan, from day one.