Postmark to Resend

Migrating from
Postmark to Resend

Introduction

If you're considering migrating from Postmark to Resend, you're in the right place.

This guide will help you understand the key differences between the two services and provide you with the necessary steps to make the transition as smooth as possible.

Jump ahead

History

Postmark and Resend are both email delivery services, but they have different histories and focuses.

Key differences

  • Postmark was founded in 2009. In May 2020, ActiveCampaign acquired Postmark.
  • Resend was founded in 2023. Resend has a focus on providing a modern developer experience.

Concepts

Both Postmark and Resend provide user-friendly dashboards for managing your email sending.

Sender Signatures

In Postmark you need a confirmed Sender Signature or Verified Domain for each email address you want to send from.

Resend has the concept of Domains which allows you to send from any address under that domain.

Resend Domains page

Both Postmark and Resend offer similar authentication features.

NamePostmarkResend
DKIMDKIM enforcedDKIM enforced
SPFSPF optionalSPF enforced
DMARCDMARC recommendedDMARC recommended

Servers

When you log into Postmark you are placed in the Servers page. These Servers let you separate your transactional, broadcasts, and inbound message streams.

When you log in to Resend, you are taken straight to the Emails page. This page allows you to see all emails sent without needing to set up a server first.

Resend Emails page

Message Streams

Postmark separates email traffic through Message Streams, meaning transactional and broadcast traffic never intersect.

Resend does not have this concept, and all emails are sent through the same stream.

Once you send emails, you can view their aggregated statuses in the Metrics page.

Resend Metrics page

Official SDKs

Both Postmark and Resend provide official SDKs for various programming languages, making it easy to integrate into your application.

Key differences

  • Postmark does not have official SDKs for Python, Go, or Rust (see docs).
  • Resend does not have an official SDK for .NET (see docs).

Send email via API

Both Postmark and Resend provide a REST API and SDKs for sending emails programmatically.

Key differences

Authentication

  • Postmark uses a custom header (X-Postmark-Server-Token) to authenticate (see docs).
  • Resend uses a standard header (Authorization: Bearer) to authenticate requests (see docs).

Rate limiting

  • Postmark throws an error when rate limit is exceeded, but doesn't provide more details (see docs).
  • Resend has response headers describing your current rate limit following every request in conformance with the IETF standard (see docs).

Logging

  • Postmark's API only returns an HTTP response. There are no logs of API requests.
  • Resend stores a history of API request logs, allowing for easy debugging of API responses and error codes (see docs).

Postmark

const postmark = require('postmark');
var serverToken = "server-token";
var client = new postmark.ServerClient(serverToken);
client.sendEmail({
"From": "sender@example.com",
"To": "receiver@example.com",
"Subject": "hello world",
"TextBody": "<p>it works!</p>"
});

Resend

import { Resend } from 'resend';
const resend = new Resend('re_123456789');
await resend.emails.send({
from: 'Acme <onboarding@resend.dev>',
to: ['delivered@resend.dev'],
subject: 'hello world',
html: '<p>it works!</p>',
});

Send email via SMTP

Both Postmark and Resend support sending emails via SMTP.

SMTP stands for Simple Mail Transfer Protocol. It is a text-based protocol in which one server communicates with another to send an email.

Key differences

Authentication

  • Postmark uses the API Token for both Username and Password (see docs).
  • Resend uses a standard value for the Username and the API Key as the Password (see docs).

Configurations

  • Postmark does not support port 465 (see docs).
  • Postmark supports adding custom metadata via headers (see docs).
ConfigurationPostmarkResend
Host`smtp-broadcasts.postmarkapp.com` or `smtp.postmarkapp.com``smtp.resend.com`
Port25, 587, or 252525, 465, 587, 2465, or 2587
UsernamePostmark Server API Token or Access KeyThe '`resend`' string
PasswordPostmark Server API Token or Secret KeyResend API key
AuthenticationPlain text (unencrypted), CRAM-MD5, TLSSMTPS or STARTTLS

Webhooks

Both Postmark and Resend provide webhooks to notify your application of email events.

Key differences

  • Postmark does not have support for email sent and delivery delay events (see docs).
  • Resend does not have support for inbound emails yet (see docs).
  • Resend has logs of webhook requests, allowing you to see the status of your webhook responses (see docs).

Security & Privacy

Postmark and Resend have robust security features, but some major differences exist.

Key differences

  • Postmark is not SOC 2 compliant, while Resend is (see more).
  • Postmark does not enforce SPF, while Resend does (see docs).
  • Postmark does not offer Single Sign-On, Google, or GitHub as authentication methods.
NamePostmarkResend
AuthenticationEmail/PasswordEmail/Password, Google, GitHub
Single Sign-On-SSO available
Multi-Factor AuthMFA availableMFA available
GDPRGDPR compliantGDPR compliant
SOC 2-SOC 2 compliant

Additional Features

Outside of core email sending, Resend offers additional features that Postmark does not have that may be helpful for you.

No-code editor

The no-code editor makes it easy for anyone to write, format, and send broadcast emails.

Send Marketing Emails with Resend Broadcasts

Enabling anyone to send email campaigns without code.

resend.com/blog/send-marketing-emails-with-resend-broadcasts

Schedule email API

Use the new Resend API to schedule emails without using external services.

Schedule email API

Send emails at a specific time without additional complexity.

resend.com/blog/introducing-the-schedule-email-api

Deliverability Insights

Improve your chances of landing in the inbox instead of the spam folder with detailed recommendations.

Deliverability Insights

Improve email deliverability by identifying issues and applying best practices.

resend.com/blog/deliverability-insights

Multi-Region

Improve your email deliverability speed by using a region nearest to your users.

Faster Email Delivery with Multi-Region

Faster deliverability with reduced latency.

resend.com/blog/multi-region

Pricing

Postmark and Resend offer competitive pricing based on the number of emails sent.

Key differences

  • Postmark charges $50 for each Dedicated IP, while Resend charges $30 (see more).
  • Postmark provides 45 days of data retention, while Resend provides 3 days (see more).
EmailsPostmarkResend
3,000$15$0
50,000$55$20
100,000$115$35
200,000$245$160
500,000$455$350
1,000,000$775$650

Conclusion

Ready to migrate to Resend? Press S to get started. If there's anything else we can help with, contact our team, and we'll answer any questions you have.

Get in touch