Sendy Alternative

Like Sendy, but
you won't hate
using it

Sendy proved self-hosted email could be cheap. Punchmail proves it doesn't have to look and feel like a tool from 2012.

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
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

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.

Sendy is affordable.
But the UI is painful.

Sendy pioneered the idea of cheap self-hosted email marketing: pay once, connect an SMTP provider, and send emails for fractions of a penny. For its time, it was revolutionary. But Sendy's interface hasn't evolved since it launched. The UI feels like a CodeIgniter admin panel from 2012 — because that's exactly what it is.

Every task in Sendy takes more clicks than it should. Creating a campaign means navigating through clunky multi-step forms. The subscriber management is a wall of tables with tiny text and no bulk actions that actually work well. The email editor is a basic WYSIWYG that produces inconsistent HTML across email clients — you'll spend more time fixing rendering issues than writing content.

The dashboard gives you almost nothing at a glance. Want to see how your last campaign performed? Click, click, click. Want to compare campaigns? Open multiple tabs. There's no automation engine — just basic autoresponders. A/B testing is limited, segmentation is primitive, and the overall experience feels like fighting the tool instead of using it.

Punchmail keeps what made Sendy great — self-hosted, one-time pricing, your data — and wraps it in an interface you'll actually enjoy using. A block editor that produces bulletproof MJML output. A dashboard that shows you what matters. Automation workflows with visual builders. The same cost model, built for how people work today.

🎨

UI You'll Actually Like

Clean, modern dashboard designed for marketers. No more squinting at tiny tables and navigating through endless form pages.

✏️

Block Email Editor

Drag-and-drop builder with 10 block types, compiled to bulletproof HTML via MJML. No more fighting with Sendy's broken WYSIWYG output.

Real Automation

Visual workflow builder with conditions, delays, and branching. Welcome series, re-engagement, drip campaigns — not just basic autoresponders.

📊

ClickHouse Analytics

Real-time analytics on millions of events. Campaign dashboards, subscriber timelines, and instant aggregation — not Sendy's slow MySQL queries.

How Punchmail stacks up

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

Punchmail Sendy Listmonk Mailchimp
Self-hosted
Modern UI/UX
Block email editor
SMTP pools + failover
Automation workflows
A/B testing Basic
Advanced segmentation Basic Basic
ClickHouse analytics
Visual campaign dashboard
One-time pricing Free $350+/mo

Frequently Asked Questions

Is Punchmail really that much better to use than Sendy?

+
Night and day. Sendy's interface is functional but dated — tiny text, clunky forms, no visual feedback. Punchmail has a modern dashboard, drag-and-drop email editor, visual automation builder, and campaign analytics you can actually read at a glance. If you've ever been frustrated by Sendy's UX, you'll feel the difference immediately.

Is Punchmail's one-time price comparable to Sendy?

+
Punchmail is €49 one-time, similar to Sendy's pricing model. Both include all future updates. The difference is Punchmail gives you a modern interface, block editor, automation engine, ClickHouse analytics, and SMTP pools — features Sendy doesn't have.

How do I migrate from Sendy to Punchmail?

+
Export your subscriber lists from Sendy as CSV files and import them into Punchmail. Your campaigns and templates will need to be recreated, but the block editor makes building new templates fast. Most users find they rebuild their templates better and faster than their Sendy originals.

Does Punchmail support the same SMTP providers as Sendy?

+
Punchmail supports any SMTP provider — Amazon SES, Postmark, SendGrid, your own Postfix, or anything else. You can also create SMTP pools with multiple providers and weighted distribution for IP warmup and failover, which Sendy can't do.

Can Punchmail send as cheaply as Sendy?

+
The sending cost depends on your SMTP provider, not Punchmail. If you use Amazon SES with Punchmail, your per-email cost is identical to Sendy + SES. Punchmail itself is a one-time payment with no per-send fees.

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
€199
49
One-time payment. Not per month. Not per year. Once.

🚀 Launch price for the first 100 customers. Then €99.

I used Sendy for three years. It sent emails fine, but every time I opened the dashboard I dreaded using it. Punchmail gives me the same self-hosted savings with an interface I actually look forward to opening.

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