What it is
Plunk is an open-source email platform written in TypeScript and released under the AGPL-3.0 license. It combines transactional email, marketing campaigns, and workflow automation in a single system, and it is positioned as a self-hosted alternative to SendGrid, Resend, and Mailgun. The project lives in the TypeScript and Node.js ecosystem, ships as a Docker image, and is documented at docs.useplunk.com with a community Discord for support.
The concrete problem Plunk solves is the cost and contact-limit structure of commercial email providers. The project advertises $0.001 per email with no contact limits, and it is free to self-host, so teams that send transactional messages and newsletters can run the sending infrastructure themselves instead of paying per-contact or per-volume pricing. It also removes the need to stitch together separate tools for transactional sends, campaigns, and automation, because all three share one contact list, one segment model, and one analytics view.
Key capabilities
- Transactional email sent directly from an API, with template support and variable substitution.
- SMTP relay mode, so Plunk can send mail on behalf of any existing tool or framework.
- Campaigns for newsletters and product updates aimed at large audiences.
- Workflows with triggers, delays, and conditional logic for advanced automation.
- Segments built from dynamic filtering to target specific audiences.
- Contact management with custom fields and full activity history.
- Analytics covering opens, clicks, bounces, and engagement metrics in real time.
- Custom domains verified with DKIM and SPF support, plus inbound email processing with custom routing rules.
Who uses it and how
- Product teams send transactional mail such as receipts and notifications from their application API.
- Teams already running another framework point that framework at Plunk as an SMTP relay rather than rewriting send logic.
- Marketing groups run newsletters and product updates as campaigns against a segmented contact list.
- Growth and lifecycle teams build automated sequences using workflow triggers, delays, and conditional branches.
- Operators configure inbound routing rules to receive and process incoming mail, and verify their own domains with DKIM and SPF before sending.
Getting started
The README states that the easiest way to self-host is the plunk Docker image, pulled from the GitHub container registry, with a full deployment guide in the documentation at docs.useplunk.com/self-hosting/introduction.
When to use it — and when not to
Plunk is a reasonable fit when the goal is to replace SendGrid, Resend, or Mailgun pricing with a self-hosted system that has no contact limits and a flat per-email cost. A self-hoster must operate the deployment themselves, including the Docker image and the domain verification work for DKIM and SP
project readme (upstream, from github) — read inline

Plunk
The Open-Source Email Platform
Introduction
Transactional emails, marketing campaigns, and workflow automation — in one platform. Self-hostable, $0.001 per email, no contact limits.
An open-source, self-hosted alternative to tools SendGrid, Resend or Mailgun.
Features
- Transactional Emails: Send emails straight from your API with template support and variable substitution
- SMTP: Use Plunk as an SMTP relay to send emails from any existing tool or framework
- Campaigns: Send newsletters and product updates to large audiences
- Workflows: Create advanced automations with triggers, delays, and conditional logic
- Segments: Organize contacts with dynamic filtering and target the right audience
- Contact Management: Manage contacts with custom fields and full activity history
- Analytics: Track opens, clicks, bounces, and engagement metrics in real-time
- Custom Domains: Verify and send from your own domains with DKIM/SPF support
- Inbound Emails: Receive and process incoming emails with custom routing rules
Sponsors
Plunk is made possible by the support of our sponsors. If you self-host Plunk, consider supporting
via GitHub Sponsors.
Self-hosting Plunk
The easiest way to self-host Plunk is by using the plunk Docker image.
You can pull the latest image from Github.
A complete guide on how to deploy Plunk can be found in
the documentation.
Community
Contributing
You are welcome to contribute to Plunk. You can find a guide on how to contribute in CONTRIBUTING.md.
License
AGPL-3.0 License - see LICENSE for details.