Postmark for WordPress


If you’re still sending email with default SMTP, you’re blind to delivery problems! Postmark for WordPress enables sites of any size to deliver and track WordPress notification emails reliably, with minimal setup time and zero maintenance.

If you don’t already have a free Postmark account, you can get one in minutes. Every account comes with 25,000 free credits.


  • Postmark WP Plugin Settings screen.


  1. Upload postmark directory to your /wp-content/plugins directory
  2. Activate plugin in WordPress admin
  3. In WordPress admin, go to Settings then Postmark. You will then want to insert your Postmark details. If you don’t already have a Postmark account, get one at
  4. Verify sending by entering a recipient email address you have access to and pressing the “Send Test Email” button.
  5. Once verified, then check “Enable” to override wp_mail and send using Postmark instead.


What is Postmark?

Postmark is a hosted service that expertly handles all delivery of transactional webapp and web site email. This includes welcome emails, password resets, comment notifications, and more. If you’ve ever installed WordPress and had issues with PHP’s mail() function not working right, or your WordPress install sends comment notifications or password resets to spam, Postmark makes all of these problems vanish in seconds. Without Postmark, you may not even know you’re having delivery problems. Find out in seconds by installing and configuring this plugin.

Will this plugin work with my WordPress site?

The Postmark for WordPress plugin overrides any usage of the wp_mail() function. Because of this, if any 3rd party code or plugins send mail directly using the PHP mail function, or any other method, we cannot override it. Please contact the makers of any offending plugins and let them know that they should use wp_mail() instead of unsupported mailing funcitons.

Does this cost me money?

This Postmark plugin is 100% free. All new Postmark accounts include 25,000 free credits. Afterwards, they will cost only $1.50 per 1000 sends with no monthly commitments and no expirations.

We will send you multiple warnings as you approach running out of send credits, so you don’t need to worry about paying for credits until you absolutely need them.

Sign up for your free Postmark account at and get started now.

My emails are still not sending, or they are going to spam! HELP!?

No worries, our expert team can help. Just send an email to or tweet @postmarkapp for help. Be sure to include as much detail as possible.

Why should I trust you with my email sending?

Because we’ve been in this business for many years. We’ve been running an email marketing service, Newsberry, for five years. Through trial and error we already know what it takes to manage a large volume of email. We handle things like whitelisting, ISP throttling, reverse DNS, feedback loops, content scanning, and delivery monitoring to ensure your emails get to the inbox.

We’re hosted at Rackspace, where we’re able to offer both the physical (SAS70 data center) and environment security through a completely dedicated cluster of servers. Our servers utilize virtualization and high availability failover protection to properly handle outages and keep your data safe.

Most importantly, a great product requires great support and even better education. Our team is spread out across six time zones to offer fast support on everything from using Postmark to best practices on content and user engagement. A solid infrastructure only goes so far, that’s why improving our customer’s sending practices helps achieve incredible results

Why aren’t my HTML emails being sent?

This plugin detects HTML by checking the headers sent by other WordPress plugins. If a “text/html” content type isn’t set then this plugin won’t send the HTML to Postmark to be sent out only the plain text version of the email.


Breaks WooCommerce

Installed, configured and got working, but then realised that it broke WooCommerce and customers couldn’t proceed past the checkout. Shame as I really wanted to be able to use this with WooCommerce but apparently that’s not possible.

Difficult to Implement and Unreliable

I really wish I could like Postmark and it’s companion plugin, but honestly I’ve found many times in our business when we suddenly no longer received help requests coming through our website for no reason. I find that Postmark is very strict and does not let many emails pass through its system unless everything is perfect. For example, if you want to use Gravity Forms or another form system on your website to send help requests to your support email system, it’s very difficult for the “From” email to be addressed from the customer, instead of you. I’ve even tried enabling it so that it comes from our own email address but the reply-to is the customer’s email. This worked for a while, but eventually also stopped working without us knowing, such that Postmark stopped accepting those emails from our site and stopped passing them to our support email – all without any logs of them doing this. Thus, long story short, our customers never heard back from us and were pissed at us. This is the 3rd time giving Postmark a try over the years and I always run into config issues like this and then have to leave again. After Mandrill stopped being free, I went back to Postmark and now I’m leaving them again because they just are too restrictive. I don’t recommend.

Superb solution for transactional emails

Finally no more fighting with transactional emails and many integration with WordPress.
Tried SendGrid, Mailgun, SparkPost, Mandrill … finally found the home for all my transactional emails in Postmark.

Their service is superb like this plugin, that integrate their service via API. Easy, lightweight, simple and it works well.

Excellent work, thank you.

Read all 9 reviews

Contributors & Developers

“Postmark for WordPress” is open source software. The following people have contributed to this plugin.




  • Interface cleanup
  • Minor code restructuring


  • Make the errors available in the PHP variable Postmark_Mail::$LAST_ERROR if wp_mail() returns false, examine this variable to find out what happened.
  • When doing a test send, if an error occurs, it will be printed in the settings page header.


  • Fix case where ‘From’ header is specified as a literal string, instead of in an associative array.


  • Allow the ‘From’ header to override the default sender.
  • Don’t send TextBody when the user has specified the ‘Content-Type’ header of ‘text/html’
  • Allow individual messages to opt-in to Track-Opens by including a header of ‘X-PM-Track-Opens’ and a value of true


  • Modernization of codebase.


  • Support headers for cc, bcc, and reply-to


  • Added open tracking support.


  • Fix issue with new WordPress HTTP API Integration.


  • New option to force emails to be sent as HTML. Previously just detected Content-Type.
  • Now uses the WordPress HTTP API.


  • Resolved error with handing arrays of recipients


  • Arrays of recipients are now properly handled
  • HTML emails and Text Emails are now handled by checking the headers of the emails sent, and sends via Postmark appropriately.
  • Optional “Powered by Postmark” footer of sent emails. “Postmark solves your WordPress email problems. Send transactional email confidently using”
  • Add license to README and PHP file


  • First Public release.