Self-hosted • Open • Unlimited

Self-hosted email marketing
that punches above
its weight

The most powerful self-hosted email platform ever built. Unlimited subscribers, unlimited sends, enterprise features. One price. Your server, your rules.

terminal
$ git clone https://github.com/punchmail/punchmail
$ cd punchmail && docker compose up -d
# That's it. You're sending. ๐ŸฅŠ
โœ“ Punchmail is running at http://localhost

Built by an email deliverability expert with 27 years of experience

0
Monthly fees
โˆž
Subscribers
โˆž
Emails / month
1
Price. Forever.
https://your-server.com/dashboard
๐Ÿ“Š Dashboard
๐Ÿ‘ฅ Subscribers
๐Ÿ“‹ Lists
๐Ÿ“จ Campaigns
๐ŸŽจ Templates
โ—‡ Segments
โšก Automations
โš™๏ธ Settings

Dashboard

Subscribers
24,891
โ†‘ 12.3%
Sent (30d)
148K
โ†‘ 8.1%
Open Rate
42.3%
โ†‘ 2.4%
Click Rate
8.7%
โ†‘ 1.1%
Campaign
Status
Sent
Open Rate
Clicks
Black Friday Sale
Sent
24,891
42.3%
2,147
Weekly Newsletter #48
Sent
18,204
38.1%
1,432
Holiday Campaign
Scheduled
โ€”
โ€”
โ€”

An engine built
for serious scale

Punchmail isn't a hobby project with a queue bolted on. It's a multi-layered sending engine designed from day one to handle millions of emails without breaking a sweat.

7
Priority queues with dedicated workers
500
Emails per batch, bulk-inserted in parallel
3ร—
Dedup layers prevent duplicate sends
<1ms
ClickHouse query time on millions of events
๐Ÿš€

Multi-Queue Architecture

7 priority queues โ€” tracking, sending, campaigns, automations, bounces, imports, default. Each with dedicated workers via Laravel Horizon.

โšก

Parallel Batch Processing

Campaigns split into 500-subscriber batches. Multiple workers process batches simultaneously. Template compiled once, cached in Redis, reused across all batches.

๐Ÿ“Š

ClickHouse Analytics Engine

Every open, click, bounce, and unsubscribe stored in ClickHouse with 6 materialized views for instant aggregation. No more slow MySQL GROUP BY on millions of rows.

๐Ÿ”’

Atomic Send Protection

Redis SETNX locks โ†’ MySQL unique index with INSERT IGNORE โ†’ job idempotency. Three layers guarantee zero duplicate sends, even during crashes and restarts.

Theoretical throughput
100K+ emails/hour
Scales linearly by adding worker containers

Visual drag & drop
workflow designer

Build enterprise-grade marketing automations without writing a single line of code. Drag triggers, conditions, and actions onto the canvas and connect them visually. From simple welcome series to complex engagement-driven sunset policies โ€” if you can imagine it, you can build it.

โšก

Triggers

Recurring schedules, subscriber events, tag changes, and webhook triggers

๐Ÿ”€

Flow Control

Conditional branching, time delays, and engagement-based routing

๐Ÿ“Š

Engagement Checks

Route subscribers based on open/click activity over 60, 90, or 180 days

๐ŸŽฏ

14 Action Types

Send campaigns, add tags, update fields, manage lists, webhooks, and more

https://your-server.com/automations/workflow-designer
Punchmail Visual Workflow Designer โ€” Engagement-driven sunset policy automation with drag and drop nodes

Real screenshot โ€” Engagement-driven sunset policy built entirely with drag & drop

Everything you need. Nothing you don't.

Enterprise email marketing features without the enterprise price tag. Built by someone who's been sending email since before Gmail existed.

๐ŸŽจ

Block-Based Editor

Drag-and-drop email builder with 10 block types. Compiles to bulletproof HTML via MJML. Looks perfect in every client โ€” yes, even Outlook.

๐ŸŽฏ

Power Segmentation

Nested AND/OR conditions across subscriber fields, tags, engagement history, and campaign activity. "Opened campaign X but didn't click in 90 days" โ€” milliseconds.

โšก

Automation Engine

Trigger-based workflows with conditions, delays, and actions. Welcome series, re-engagement, cart abandonment. Set it and forget it.

๐Ÿ”Œ

SMTP Pools

Connect any SMTP provider. Create pools with weighted distribution for IP warmup. Automatic failover. Per-campaign throttling. This is what enterprise ESPs charge thousands for.

๐Ÿ“Š

ClickHouse Analytics

Event tracking powered by ClickHouse. Millions of events, instant queries. Full per-campaign reports and per-subscriber activity timeline.

๐Ÿงช

A/B Testing

Test subject lines and content with 2-3 variants. Auto-send the winner based on opens or clicks. Data-driven sending.

๐Ÿ›ก๏ธ

Bounce Intelligence

IMAP/POP3 mailbox polling plus webhook receivers for SES, Postmark, and SendGrid. Automatic hard/soft classification with configurable thresholds.

๐Ÿšซ

Suppression System

Multiple suppression lists with email AND domain blocking. Platform-wide suppression for spamtraps and global unsubscribes. Three-layer dedup prevents duplicate sends.

๐Ÿ“ฌ

Full Compliance

RFC 8058 one-click unsubscribe (Gmail/Yahoo required), in-body unsubscribe, and full preference center. List-Unsubscribe headers automatic on every send.

How Punchmail stacks up

We're not competing with Mailchimp's marketing budget. We're competing with their feature set.

Punchmail Listmonk Mautic Mailchimp
Self-hosted โœ“ โœ“ โœ“ โœ—
Unlimited subscribers โœ“ โœ“ โœ“ โœ—
Block email editor โœ“ โœ— Basic โœ“
Advanced segmentation โœ“ Basic โœ“ โœ“
Automation workflows โœ“ โœ— โœ“ โœ“
A/B testing โœ“ โœ— Basic โœ“
SMTP pools + warmup โœ“ โœ— โœ— โœ—
ClickHouse analytics โœ“ โœ— โœ— โœ—
Bounce processing โœ“ Basic โœ“ โœ“
RFC 8058 one-click unsub โœ“ โœ— โœ— โœ“
One-time pricing โœ“ Free Free $350+/mo

Up and running in 60 seconds

No PhD required. If you can copy-paste three commands, you can run Punchmail.

1

Clone & configure

Clone the repo, copy the environment file, set your admin credentials.

git clone https://github.com/punchmail/punchmail && cp .env.example .env
2

Launch

One command spins up all 7 containers โ€” app, database, analytics, queue, cache, email renderer. Done.

docker compose up -d
3

Connect your SMTP

Add your SMTP provider in settings โ€” Amazon SES, Postmark, your own Postfix, whatever. Create pools, set weights, configure failover.

4

Start sending

Import subscribers, build your first campaign with the block editor, hit send. Welcome to email freedom.

One price. No limits. Forever.

No subscriber tiers. No send limits. No "contact sales." Just a price that makes sense.

Lifetime License
29
One-time payment. Not per month. Not per year. Once.

๐ŸฅŠ Launch pricing โ€” price increases as more people join.
Currently at early-bird rate.

"

I've been sending email for 27 years. I've configured more MTAs than I can count. I built Punchmail because every self-hosted alternative was either too basic, too broken, or too abandoned. This is the platform I always wanted.

โ€” Bram, Creator of Punchmail & email deliverability veteran

Stop renting.
Start owning.

Your subscribers. Your data. Your server. One price, forever.

Get Punchmail โ†’ See How It Works