WP Mail SMTP by WPForms

Wordpress Plugin
Download latest - 3.5.1

Download Stats

Today 23
Yesterday 4,086
Last Week 23,016
All Time 4,228,734
Banner 772x250

WordPress Mail SMTP Plugin

Having problems with your WordPress site not sending emails? You're not alone. Over 1 million websites use WP Mail SMTP to send their emails reliably.

Our goal is to make email deliverability easy and reliable. We want to ensure your emails reach the inbox.

WP Mail SMTP fixes your email deliverability by reconfiguring WordPress to use a proper SMTP provider when sending emails.

What is SMTP?

SMTP (Simple Mail Transfer Protocol) is an industry standard for sending emails. Proper SMTP configuration helps increase email deliverability by using authentication.

Popular email clients like Gmail, Yahoo, and Office 365 are in a constant battle with email spammers. One of the things they look at is if an email is originating from the location it claims to be originating from.

If the proper authentication isn't there, then emails either go in the SPAM folder or worst, don't get delivered at all.

This is a problem for a lot of WordPress sites because by default, WordPress uses the PHP mail function to send emails generated by WordPress or any contact form plugin like WPForms.

The issue is that most WordPress hosting companies don't have their servers properly configured for sending PHP emails.

The combination of two causes your WordPress emails to not get delivered.

How does WP Mail SMTP work?

WP Mail SMTP plugin easily resolves email delivery problems by improving and changing how your WordPress site sends email. We reconfigure the wp_mail() function to either use proper SMTP host credentials or leverage a built-in SMTP mail provider.

When using one of our built-in SMTP mail provider integrations (recommended), emails are sent using the provider's direct API. This means even if your web host is blocking SMTP ports, your emails still send successfully.

This helps you fix all WordPress not sending email issues.

WP Mail SMTP plugin includes many different SMTP setup options:

  1. SMTP.com (Recommended)
  2. Pepipost SMTP (Recommended)
  3. Sendinblue SMTP
  4. Mailgun SMTP
  5. SendGrid SMTP
  6. Gmail SMTP
  7. Microsoft SMTP (Outlook.com and Office 365) [Pro]
  8. Amazon SES SMTP [Pro]
  9. All Other SMTP

For all options, you can specify the "from name" and "email address" for outgoing emails.

Instead of having users use different SMTP plugins and workflows for different SMTP providers, we decided to bring it all in one. This is what makes WP Mail SMTP, the best SMTP solution for WordPress.


SMTP.com is a recommended transactional email service.

With over 22 years of email delivery expertise, SMTP.com has been around for almost as long as email itself. They are known among internet providers as one of the most reliable senders on the internet.

Their easy integration process lets you start sending emails in minutes and benefit from years of experience. SMTP.com provides users 10,000 free emails the first 30 days.

Read our SMTP.com documentation for more details.

Pepipost SMTP

Pepipost is a recommended transactional email service.

Every month they delivers over 8 billion emails from 20,000+ customers.

Their mission is to reliably send emails in the most efficient way and at the most disruptive pricing ever. Pepipost provides users 30,000 emails the first 30 days.

Read our Pepipost documentation for more details.

Sendinblue SMTP

They serve 80,000+ growing companies around the world and send over 30 million emails each day.

Their email deliverability experts are constantly at work optimizing the reliability and speed of their SMTP infrastructure. Sendinblue provides users 300 free emails per day.

Read our Sendinblue documentation for more details.

Mailgun SMTP

Mailgun SMTP is a popular SMTP service provider that allows you to send large quantities of emails. They provide 5,000 free emails per month for 3 months.

WP Mail SMTP plugin offers a native integration with MailGun. All you have to do is connect your Mailgun account, and you will improve your email deliverability.

Read our Mailgun documentation for more details.

SendGrid SMTP

SendGrid has a free SMTP plan that you can use to send up to 100 emails per day. With our native SendGrid SMTP integration, you can easily and securely set up SendGrid SMTP on your WordPress site.

Read our SendGrid documentation for more details.

Gmail SMTP

Often bloggers and small business owners don't want to use third-party SMTP services. Well you can use your Gmail or G Suite account for SMTP emails.

This allows you to use your professional email address and improve email deliverability.

Unlike other Gmail SMTP plugins, our Gmail SMTP option uses OAuth to authenticate your Google account, keeping your login information 100% secure.

Read our Gmail documentation for more details.

Microsoft SMTP (Outlook.com and Office 365)

Many business use Outlook.com or Office 365 to their to power their email. For those users, the Microsoft mailer can be a great option. This integration allows you to use your existing Outlook.com or Office 365 account to send your emails reliably.


Advanced or technical users can harness the power of Amazon AWS (Amazon Web Services) with the Amazon SES mailer. With this integration, you can send a high volume of emails at a very reasonable rate.

Read our Amazon SES documentation for more details.

Other SMTP

WP Mail SMTP plugin also works with all major email services such as Gmail, Yahoo, Outlook, Microsoft Live, and any other email sending service that offers SMTP.

You can set the following options:

  • Specify an SMTP host.
  • Specify an SMTP port.
  • Choose SSL / TLS encryption.
  • Choose to use SMTP authentication or not.
  • Specify an SMTP username and password.

To see recommended settings for the popular services as well as troubleshooting tips, check out our SMTP documentation.

We hope that you find WP Mail SMTP plugin helpful!


In addition to native Microsoft and Amazon SES integrations, WP Mail SMTP Pro provides access to many other powerful features and services.

Click here to purchase WP Mail SMTP Pro now!

Email Log

Email Logging lets you log and view all emails sent from your site. Email logs are helpful for storing emails for your records, auditing outgoing emails, and debugging during site development.

Manage WordPress Emails and Notifications

The Manage Notification feature gives you full control over which email notifications WordPress sends. This means you can disable different WordPress notification emails. Don't want to receive emails when new users are created? No problem, turn it off.

Expert Support

We provide limited support for the WP Mail SMTP plugin on the WordPress.org forums. Access to our world class one-on-one email support is available to WP Mail SMTP Pro users.

White Glove Setup

Our White Glove Setup service is a great option that anyone can benefit from. Whether you don't have the time or maybe you feel a bit in over your head - we've got you covered.

You can sit back and relax while we set up everything for you. White glove setup includes WP Mail SMTP plugin installation and setup, configuration adjustments to your DNS for proper email domain name verification, Mailgun setup, and final testing to confirm everything is passing with flying colors.


The WP Mail SMTP team takes security very seriously. Not only does the plugin follow all security best practices, but we have several options available to ensure your site is safe and secure.

  • Direct SMTP mailer integrations (recommended), such as SMTP.com, Pepipost and Mailgun, use the official provider APIs. This means you never enter your username or password in the plugin settings and these credentials are not stored in the database. Instead, we use tokens or API keys which are much more secure.

  • When using Other SMTP mailer, we provide the option to insert your password in your wp-config.php file, so it's not visible in your WordPress settings or saved in the database.


WP Mail SMTP plugin was originally created by Callum Macdonald. It is now owned and maintained by the team behind WPForms - the best drag & drop form builder for WordPress.

You can try the free version of WPForms plugin to see why it's the best in the market.

What's Next

If you like this plugin, then consider checking out our other projects:

  • OptinMonster - Get More Email Subscribers with the most popular conversion optimization plugin for WordPress.
  • MonsterInsights - See the Stats that Matter and Grow Your Business with Confidence. Best Google Analytics Plugin for WordPress.
  • SeedProd - Jumpstart your website with the #1 Coming Soon & Maintenance Mode Plugin for WordPress.

Visit WPBeginner to learn from our WordPress Tutorials and find out about other best WordPress plugins.

Releases (57 )

Version Release Date Change Log
2.0.1 2020-05-07
  • 2020-05-07 =
  • Changed: Improved description of the "Do Not Send" plugin option.
  • Fixed: Due to Pepipost API changes we now convert new lines so they are preserved in plain text emails.
  • Fixed: Downgrade internal Guzzle dependency to 6.4 to temporarily fix compatibility issues with WordPress and Guzzle 6.5. Affects Gmail mailer.
2.0.0 2020-04-27
  • 2020-04-27 =
  • IMPORTANT: Support for PHP 5.2-5.4 has been discontinued. If you are running one of those versions, you MUST upgrade PHP before installing or upgrading to WP Mail SMTP v2.0. Failure to do that will disable WP Mail SMTP functionality.
  • Added: new mailer - SMTP.com integration.
  • Changed: Plugin filters that change the FROM Name/Email in emails are now always running last.
  • Fixed: false value of the WPMS_SMTP_AUTH/WPMS_SMTP_AUTOTLS constants was not properly handled in UI.
  • Fixed: various minor code and internal links improvements.
1.9.0 2020-03-23
  • 2020-03-23 =
  • Added: Add various Status tests and Info section on Tools > Site Health page.
  • Added: Notify admin if there are unsaved changes in plugin admin area options.
  • Fixed: Test email now has a proper bottom margin for better look.
  • Changed: Update "About us" plugin page with relevant information.
  • Changed: Save default WordPress FROM Email address when incorrect FROM Email address is saved by a user.
1.8.1 2019-12-13
  • 2019-12-13 =
  • Fixed: Revert Guzzle version to 6.4.1 because Sendinblue and Gmail mailers may experience issues under certain circumstances while sending emails (not all sites are affected).
  • Fixed: Make compatible the WordPress PhpMailer class inline attachments management with the Sendgrid API.
1.8.0 2019-12-12
  • 2019-12-12 =
  • Added: New recommended mailer: Pepipost.
  • Added: "Suggest a Mailer" link in a list of mailers to send us your ideas about new ones.
  • Fixed: Sendgrid: Content ID for attachments missing.
  • Changed: Timeout to HTTP requests (pepipost, sendgrid, mailgun), same as max_execution_time, to prevent fails when sending emails with big attachments.
1.7.1 2019-11-11
  • 2019-11-11 =
  • Fixed: Compatibility with WordPress 5.3.
  • Fixed: Processor::get_default_email() always returns empty value when server incorrectly configured.
1.7.0 2019-10-24
  • 2019-10-24 =
  • Added: Add a new constant WPMS_DO_NOT_SEND to block email sending.
  • Fixed: Default email (wordpress@example.com) rewriting in CLI mode.
  • Fixed: Incorrect conflicts detection with certain plugins.
  • Fixed: various typos in plugin settings.
1.6.2 2019-09-02
  • 2019-09-02 =
  • Fixed: Race condition when loading with certain plugins, that send emails very early. Makes email delivery more reliable.
1.6.0 2019-08-21
  • 2019-08-21 =
  • Added: New transactional mailer: Sendinblue.
  • Added: Educate users to use transactional mailers for better deliverability.
  • Added: New option and filter to disable admin area delivery error notices.
  • Changed: Hide private API key saved in the DB for API based mailers using input[type=password].
  • Changed: Update links to various docs, pointing now to https://wpmailsmtp.com.
1.5.2 2019-08-05
  • 2019-07-18 =
  • Fixed: "Redirect URI mismatch" error for "Gmail" mailer when trying to re-authorize an account that was initially created with version < v1.5.0.
  • Changed: Make "Authentication" setting in "Other SMTP" mailer ON by default for new users.
  • Changed: Mailers docs links now point to wpmailsmtp.com own site.
1.5.1 2019-07-12
  • 2019-07-12 =
  • Fixed: Duplicated emails sent to the first recipient in a loop (and others not receiving their emails).
1.5.0 2019-07-09
  • 2019-07-09 =
  • Added: Loo plugin support.
  • Added: "About us" admin area page.
  • Added: Display in debug output a possible conflicting plugin existence.
  • Added: Lots of actions and filters to improve flexibility of the plugin.
  • Changed: Plugin menu is now top level.
  • Changed: Hide secrets/API keys in page DOM in plugin admin area.
  • Changed: Do not save constant values into the database when plugin settings are saved.
  • Changed: Lots of i18n improvements to support translation for both free and paid version of the plugin.
  • Changed: Gmail mailer - allow to change From Name email header.
  • Changed: Gmail mailer - display email used to create a connection.
  • Changed: WordPress 4.9 is the minimum WordPress version we support.
  • Fixed: X-Mailer header should be present in all emails.
  • Fixed: PHP notices when migrating under certain circumstances from 0.x version of the plugin.
  • Fixed: Options::get_group() now supports values set via constants.
1.4.2 2019-05-14
  • 2019-03-23 =
  • Changed: Tested up to WordPress 5.1.x.
  • Changed: Removed TGMPA library.
1.4.1 2018-12-03
  • 2018-12-03 =
  • Fixed: correctly process backslashes in SMTP passwords defined via constants.
  • Changed: allow to send a Test Email when Default (none) mailer is selected in plugin settings.
1.4.0 2018-11-29
1.3.3 2018-07-05
1.3.2 2018-06-29
  • 2018-06-29 =
  • Make sure that other plugins/themes are not conflicting with our TGMPA library.
1.3.1 2018-06-29
  • 2018-06-29 =
  • Fixed: Other SMTP: Clear new Debug messages about failed email delivery on next successful email sending.
  • Fixed: Introduce conditional autoloader to workaround Gmail PHP 5.5 requirement and its library compatibility issues vs PHP 5.3+ minimum viable plugin version.
1.3.0 2018-06-28
  • 2018-06-28 =
  • Added: New option: force From Email rewrite regardless of the current value.
  • Added: New option: force From Name rewrite regardless of the current value.
  • Added: New option: remove all plugin data on plugin uninstall (when user deletes it).
  • Added: Notify site admins in wp-admin area with a notice about last failed email delivery. Cleans up on successful delivery.
  • Added: Notify site admins in wp-admin area with a notice about possible compatibility issues with other SMTP and email delivery plugins.
  • Added: Improve User Debug Experience when doing Email Test - display helpful description and steps to fix the issue.
  • Added: New users: provide default SMTP Port value for new users based on Encryption selection.
  • Added: New users: notify about not configured plugin settings.
  • Added: New users: Recommend free WPForms Lite plugin for those who don't have it.
  • Added: SendGrid/Mailgun: provide support for multipart/alternative types of emails.
  • Added: Gmail: new button to remove connection and to connect a new Google account.
  • Fixed: Support plugin installation into /mu-plugins/ directory.
  • Fixed: SendGrid: required text/plain part of email being the first one - fixes plain text emails not having links.
  • Fixed: SendGrid and Mailgun: improperly sending plain text emails in html format.
  • Fixed: SMTP Debug output was empty in some cases.
  • Fixed: Compatibility with lots of other plugins that use Google Analytics library of different versions.
  • Fixed: "client_id is empty" is no more a problem, should be fixed.
  • Changed: For SendGrid and Mailgun allow using custom defined attachments names if present. Fallback to file name.
  • Changed: Gmail: switch to a wider scope to prevent possible issues in certain circumstances.
  • Changed: Remove whitespaces start/end of keys, secrets etc.
  • Changed: Improved helpful description tests of various options.
  • Changed: Improved plugin autoloading functionality.
1.2.5 2018-02-06
  • 2018-02-05 =
  • Fixed: Return path can't be turned off.
  • Fixed: Authentication sometimes can't be turned off.
  • Fixed: Auto TLS sometimes can't be turned off.
  • Fixed: BCC support for Gmail was broken.
  • Fixed: Debug output improved to handle SELinux and grsecurity.
  • Fixed: Strip slashes from plugin settings (useful for From Name option).
  • Fixed: Change the way sanitization is done to prevent accidental removal of useful data.
  • Fixed: Plugin activation will not overwrite settings back to defaults.
  • Fixed: Properly set Auto TLS option on plugin activation.
  • Fixed: Providers autoloading improved for certain Windows-based installs.
  • Fixed: Use the proper path to load translations from plugin's /languages directory.
  • Changed: Do not autoload on each page request plugin settings from WordPress options table.
  • Changed: Do not autoload Pepipost classes unless it's saved as active mailer in settings.
1.2.4 2018-02-06
  • 2018-01-28 =
  • Fixed: Improved escaping with debug reporting.
1.2.3 2018-01-24
  • 2018-01-22 =
  • Fixed: Gmail tokens were reset after clicking Save Settings.
  • Fixed: Slight typo in Gmail success message.
1.2.2 2017-12-27
  • 2017-12-27 =
  • Fixed: Correctly handle Mailgun debug message for an incorrect api key.
  • Fixed: Fatal error for Gmail and SMTP mailers with Nginx web-server (without Apache at all).
  • Changed: Update X-Mailer emails header to show the real sender with a mailer and plugin version.
1.2.1 2017-12-21
  • 2017-12-21 =
  • Fixed: Failed SMTP connections generate fatal errors.
1.2.0 2017-12-21
  • 2017-12-21 =
  • Fixed: Decrease the factual minimum WordPress version from 3.9 to 3.6.
  • Changed: Improve debug output for all mail providers.
1.1.0 2017-12-18
  • 2017-12-18 =
  • Added: New option "Auto TLS" for SMTP mailer. Default is enabled. Migration routine for all sites.
  • Changed: Improve debug output - clear styles and context-aware content.
  • Changed: Better exceptions handling for Google authentication process.
  • Changed: Do not sanitize passwords, api keys etc - as they may contain special characters in certain order and sanitization will break those values.
  • Changed: Improve wording of some helpful texts inside plugin admin area.
  • Fixed: Do not include certain files in dependency libraries that are not used by Google mailer. This should stop flagging plugin by Wordfence and VaultPress.
  • Fixed: Constants usage is working now, to define the SMTP password, for example.
  • Fixed: Notice for default mailer.
1.0.2 2017-12-12
  • 2017-12-12 =
  • Fixed: PHPMailer using incorrect SMTPSecure value.
1.0.1 2017-12-12
  • 2017-12-12 =
  • Fixed: Global POST processing conflict.
1.0.0 2017-12-12
  • 2017-12-12 =
  • Added: Automatic migration tool to move options from older storage format to a new one.
  • Added: Added Gmail & G Suite email provider integration - without your email and password.
  • Added: Added SendGrid email provider integration - using the API key only.
  • Added: Added Mailgun email provider integration - using the API key and configured domain only.
  • Added: New compatibility mode - for PHP 5.2 old plugin will be loaded, for PHP 5.3 and higher - new version of admin area and new functionality.
  • Changed: The new look of the admin area.
  • Changed: SMTP password field now has "password" type.
  • Changed: SMTP password field does not display real password at all when using constants in wp-config.php to define it.
  • Changed: Escape properly all translations.
  • Changed: More helpful test email content (with a mailer name).
0.11.2 2017-11-28
0.11.1 2017-10-30
0.10.1 2017-05-26
  • Addition of Pepipost and cleanup of admin page.
0.10.0 2016-12-17
  • Addition of Pepipost and cleanup of admin page.
0.9.6 2016-02-27
  • Minor security fix, sanitize test email address.
0.9.5 2014-11-19
  • Minor security fix, hat tip JD Grimes.
0.9.4 2013-11-29
  • Improvement to the test email function, very low priority update.
0.9.3 2013-11-02
  • Fixing reported issue with passing by reference.
0.9.2 2013-11-01
  • Removing the deprecation notice.
0.9.1 2011-07-10
  • $phpmailer->language became protected in WP 3.2, no longer unset on debug output.
0.9.0 2011-04-19
  • Typo in the From email description.
  • Removed changelog from plugin file, no need to duplicate it.
  • Optionally set $phpmailer->Sender from from email, helps with sendmail / mail().
0.8.7 2011-03-03
  • Fix for a long standing bug that caused an error during plugin activation.
0.8.6 2010-08-03
  • The Settings link really does work this time, promise. Apologies for the unnecessary updates.
0.8.5 2010-04-24
  • Bugfix, the settings link on the Plugin page was broken by 0.8.4.
0.8.4 2010-04-21
  • Minor bugfix, remove use of esc_html() to improve backwards compatibility.
  • Removed second options page menu props ovidiu.
0.8.3 2010-03-18
  • Bugfix, return WPMS_MAIL_FROM_NAME, props nacin.
0.8 2009-01-21
0.8.2 2009-01-21
0.7 2008-05-01
0.6 2008-05-01
0.5.2 2007-10-24
0.5.1 2007-10-24
0.5.0 2007-10-24
0.4.2 2007-10-19
0.4.1 2007-10-19
0.4 2007-10-07
0.3.2 2007-09-20
0.3.1 2007-09-12