Blogroll: Postmark

I read blogs, as well as write one. The 'blogroll' on this site reproduces some posts from some of the people I enjoy reading. There are currently 4 posts from the blog 'Postmark.'

Disclaimer: Reproducing an article here need not necessarily imply agreement or endorsement!

Subscribe to Postmark feed
Updated: 2 hours 2 min ago

How to design an effective welcome email

Tue, 07/08/2018 - 14:00

The welcome email is a key part of a customer’s first interaction with your product. They’ve just created an account and are working to get set up and verify your product meets their needs. It’s a great opportunity to provide customers with useful information that helps them explore your product.

We’ve written extensively about what makes a great welcome email in the past. In this post, we’re going to look at some examples from popular products to inspire you to create effective welcome emails of your own.

Slack Slack Welcome Email Slack Welcome Email

Slack’s welcome email does a great job of providing you with an overview of all your account details. Each team in Slack has a subdomain which is used to access the product, so including the URL here is a great move. The email also has a reminder of which plan you are on, with a quick summary of what that plan includes.

There’s a clear callout for Slack’s guides to help new customers get the most out of the product.

The main pitfall of this email is there’s no information on how to contact support if you have a question or need some help getting set up. Even the Reply-To address is a no-reply email address. Simply updating this to a support address would give users a quick way of getting help if they need it.

Harvest Harvest Welcome Email Harvest Welcome Email

Harvest’s welcome email is a great example of how to provide a wealth of useful information in a short and concise format. This email includes all your important account information, links to helpful resources, and a clear call to action that links the customer back into the onboarding flow.

Replies go straight to the Harvest support team, making it easy for customers to quickly ask any questions they have. 

Basecamp Basecamp 3 Welcome Email Basecamp 3 Welcome Email

Basecamp’s welcome email is also simple and to-the-point. I love how the opening paragraph re-iterates Basecamp’s mission in a way that’s relatable to the customer. As with the other examples we’ve looked at so far, there’s a link to your account and some info on how to get help should you need it. Note that replies also go to the support team.

One thing missing here is a clear next step action. Basecamp has a great collection of getting started videos on their Learn page which would be a good resource to highlight in the welcome email.

FreeAgent FreeAgent Activation Email FreeAgent Activation Email

FreeAgent sends out two different emails during the sign-up process. The first includes a summary of your account details and a prompt to confirm your email address and activate your account.

It’s pretty standard to see activation links in welcome emails. Sometimes it’s necessary to help limit fraudulent signups, but there are other ways of validating that emails are correct. For example, many email providers have webhooks that can notify your application if an email bounces, which is a great way of doing passive email confirmation. If your app receives a bounce notification, you can mark the email as broken in your database and show the customer a prompt to update their email address next time they access your app.

FreeAgent Welcome Email FreeAgent Welcome Email

FreeAgent’s main welcome email contains a clear next step action to view their collection of getting started videos. This email also includes more detailed information on how to get support.

You should generally avoid sending more than one welcome email. Sending a bunch of different emails in a short amount of time can overwhelm customers which is a surefire way to lower your engagement rates.

That said, in FreeAgent’s case sending two emails is okay. Each email has an obvious call-to-action, and combining all the content into a single email may become overwhelming in itself. 

Headspace HeadSpace Welcome Email HeadSpace Welcome Email

Headspace’s welcome email starts with a reminder of the benefits customers can expect from using the product. It includes beautiful visuals that set a calm and approachable tone. A clear call-to-action prompts customers to get back into the app and try the product.

The email also includes a quick overview of the journey a customer can expect to take with Headspace. Starting with some basic techniques and then moving on to broader topics. It helps set expectations and combat any anxiety the customer might have about trying something new.

There are also pointers on where to get help, and responses to the Reply-To address go directly to the support team.


In this post, we’ve looked at examples of welcome emails from five different products. Here are some of the common themes we observed:

  • Friendly copy that reiterates the benefits of using the product
  • Clear call-to-actions that prompt customers to engage with the product
  • Important account details like login URLs, email addresses, and subscription plans
  • Resources to help customers get started with the product
  • Reply-To addresses that go to customer support
  • Links and phone numbers to contact support
Learn more about designing great welcome emails

Now that you’re feeling inspired, here are some more resources to help you build great welcome emails for your applications.

Categories: Technology

Upcoming change to webhooks: no more open events after 45 days

Tue, 10/07/2018 - 16:28

One of the defining features of Postmark that we know customers love is our 45-day content history. As most of you know, Postmark includes a searchable activity feed that includes any emails sent in the previous 45 days. You can filter by delivery events, tags, or date and view the message or the activity history for all messages sent to a specific email address.

After 45 days, original email content and metadata are removed from our system. But there’s been one area that’s always been a little weird. We keep tracking email open events — and fire webhooks for those events — for, well, basically forever. The problem is that you won’t be able to do much with this information, since the content and metadata aren’t available after 45 days.

So we’re going to change that. Starting August 1st, 2018, open events will work just like click events and delivery events. To put it another way, we’ll stop firing webhooks for all events after 45 days of an email being sent.

We haven’t been able to find a use case where customers need open events for longer than the content is available. That said, if not getting open event webhooks starting 45 days after an email was sent would affect your workflow in any way, we’d love to hear about it. Please send us an email to and let us know.

Categories: Technology

Feature announcement: Custom metadata for your emails

Fri, 29/06/2018 - 10:00

One of the guiding principles of the Postmark product is that as a platform we want to be easy to integrate with, but powerful enough to run extremely sophisticated infrastructure if our customers need it. We are constantly expanding the ways you can make Postmark part of your app’s workflow. Most recently we introduced modular webhooks, and today we’re releasing another improvement to how you send and interact with your emails: the ability to add and retrieve custom metadata for the emails you send through Postmark.

We know from feedback and customer interviews that many of you need a way to identify the emails you send throughout their lifecycle. This means you need to keep track of each email not just as it flows through Postmark, but outside of it as well. We also know that you can’t always rely only on the Postmark-generated Message ID to accomplish this — you need a way to set your own unique IDs on a per-message basis. And that’s where custom metadata comes in.

A screenshot of message details including some custom metadata like user_id and invoice_id. Custom metadata, as shown on the Message Detail page.

As an example, let’s say that you’d like to update your users in real-time on the delivery status of invoice emails that they’ve sent. The best way to do this would be to attach a unique User ID and Invoice Number to each email. When an email is opened or clicked you could then associate it with your records, and show your users that the invoice has been delivered, opened, bounced, etc.

Custom metadata lets you do this. Here’s what we’re adding with this release:

  • You can assign custom metadata to each email you send, using the API or SMTP. This metadata is not included in the email content, so recipients will not see the data you add.
  • This metadata is retrievable through the Messages API. When a message is returned via the Messages API, the metadata you added will be returned with it.
  • Even more importantly, the metadata you added will be included when you receive a webhook related to the message. If, for example, you get a bounce webhook, you’d be able to match that back with any custom identifiers you have on your end.
  • The metadata you sent will also be viewable on the Message Detail page inside the Postmark UI.
  • When searching for outbound messages using the Messages API, you can filter by metadata value using additional GET query parameters. This will narrow down the search to only messages that have the metadata name with the given value. Important: It is not currently possible to search for messages by metadata value in the Postmark UI. This is an API-only feature for now. We will add search in the Postmark UI in an upcoming release.
  • Let’s talk about limits! You can associate up to 10 metadata fields per message. The field name is limited to 20 characters, while the field value itself is limited to 80 characters. Based on our research we haven’t found any scenario where these limits would present a problem, but please let us know if you have a use case that’s not accounted for with these limits.

For more details on how to implement and use this feature, check out the help documentation as well as our updated developer documentation.

We’re really excited about bringing you this change to help make your integration with Postmark more customizable and powerful. As always, we’d love to hear your feedback, so please email us at if you have any thoughts or comments.

Categories: Technology

Reacting to Gmail reputation-based bounces

Wed, 27/06/2018 - 22:40

We’ve all been there—that message you’ve been waiting for is finally found in the depths a Gmail spam folder. It seems like the most you can do is move it to the inbox, “report as NOT spam”, and chuck it up to bad luck. It’s just one message, right?

But what do you do if your message is rejected by Gmail entirely, actually blocked on the first connection to Gmail’s servers? That bounce may look something like this:

smtp;421 4.7.0 [IP address] Our system has detected that this message is suspicious due to the very low reputation of the sending domain. To best protect our users from spam, the message has been blocked. Please visit for more information. [uniqueID] - gsmtp 

Investigating this bounce is tricky. Attempting to search for it in Google guides will yield zero results, and even Gmail’s help form strategically skips this bounce messaging as an option:

Gmail help form Assessing damage and risk

Because it’s so rare and elusive, this bounce should immediately raise some serious red flags about the domain’s reputation as a sender. You’ll likely find that a large percentage of all your messages are being rejected by Gmail (including many domains managed in G Suite). Rebuilding that reputation after this kind of bounce also becomes much harder, as those affected recipients won’t even have the option to correct Gmail by moving it to their inboxes. 

The first step is identifying there’s a problem. To better monitor reputation-related Gmail bounces in Postmark, we recently made some changes to make them more visible in your account. Now they’ll show up immediately as an “ISP Block”, which you can use to gauge Gmail performance and deliverability more directly.  

ISP block Optimizing your engagement 

Some may speculate that a change in content here or there would solve the issue, but then you remember that Google’s approach to sifting through and displaying content is arguably the most advanced in the world, learning from mistakes and trends in realtime. Beyond that, it boasts of catering to the individual experience, adapting its filtering processes to match a single user’s preferences. 

That means in addition to monitoring bounces, always keep a close eye on engagement metrics. If a low percentage of people are opening and clicking, Gmail may start to think these messages aren’t so important. If some people are also marking the messages as spam, Gmail will view them as unsolicited. This combination of low open/click rates and high abuse complaints affects the domain’s reputation as a sender. 

Just as this negative engagement can ruin sender reputation, positive engagement over time can build it back up again. Use your transactional mail and other high-engagement streams to target those most active contacts, increasing your overall engagement rate and training spam filters like Gmail’s to more fully trust your messages. 

Protecting your forms

Of course, it’s also possible to get blocked very quickly, usually because of some kind of mistake on the sender’s end. Maybe an integration malfunctioned and sent the wrong content, perhaps a spammer was able to use the domain to send spam, or possibly a bot exploited some web forms to facilitate a denial-of-service attack. These large bursts of unwanted messages with an increase in spam complaints makes Gmail take urgent and aggressive steps to prevent the messages from harming others. 

So don’t become a victim yourself. Be proactive about who can use and trigger messages on your signup forms. It’s easier than ever to implement state-of-the-art security steps and invisible captchas on websites, with little effect on the overall user experience. Another option is to only show the captcha when a form is accessed multiple times via the same IP/user. 

Beyond that, try not to make collecting your customers’ email addresses a required step. When people get frustrated, they’ll fill in any random information to proceed, often leading to emailing a spamtrap that will get your future messages blocked. 

Monitoring your reputation

Next set up a DMARC policy on your domain, which not only enforces that fraudulent messages are to be rejected, but sends you valuable reports about nefarious activity originating from your own domain. If a spammer exploits a vulnerability, you’ll quickly have the data you need to begin securing the threat to your sender reputation. 

Finally, be responsive to detected reputation shifts. The best and easiest gauge is registering your DKIM domain with Google Postmaster Tools. This toolset shares data from Gmail directly about how your messages are performing each day, including domain and IP reputation metrics. We even have a handy guide on how to interpret and respond to this reputation data, so no guesswork around whether your hard work is paying off!

domain reputation group

In a nutshell, Gmail just wants to make the internet a more enjoyable and safer place for their customers. By respecting your recipients’ inboxes and keeping your assets secure, Gmail blocks will be a thing of the past. 

Categories: Technology
Additional Terms