MailWizz Alternative

MailWizz features.
Modern architecture.

MailWizz has the features but the codebase shows its age. Punchmail delivers the same power with a modern stack, Docker deployment, and ClickHouse analytics.

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.

MailWizz is feature-rich.
But its architecture is outdated.

MailWizz has been a popular self-hosted email marketing choice for years, and for good reason — it packs a lot of features into a single PHP application. Campaign management, automation, segmentation, bounce processing, and multiple SMTP server support. On paper, it checks most boxes.

The challenge with MailWizz is under the hood. It's built on the Yii 1.x framework — a PHP framework that peaked in popularity around 2013. The codebase is large, complex, and increasingly difficult to extend. The UI, while functional, feels dated compared to modern web applications. Setup requires manual PHP configuration, not Docker Compose.

Performance becomes a real issue at scale. MailWizz stores all analytics in MySQL, which means dashboards slow down dramatically once you're tracking millions of events. There's no dedicated analytics engine, no ClickHouse, no materialized views for instant aggregation. Large campaign sends can bog down the entire application.

Punchmail takes what MailWizz got right — comprehensive feature set for self-hosted email marketing — and rebuilds it on a modern stack. Laravel 11, Docker deployment, ClickHouse for analytics, Redis for caching, and a clean UI. Same self-hosted philosophy, built for the next decade.

🏗️

Modern Stack

Built on Laravel 11, not Yii 1.x. Modern PHP, modern patterns, modern tooling. Easier to understand, extend, and maintain.

🐳

Docker Deployment

Docker Compose up and you're running. No manual PHP configuration, no Apache/Nginx tuning, no dependency conflicts.

📊

ClickHouse Analytics

Dedicated analytics engine replaces slow MySQL queries. Millions of events queried in milliseconds, not minutes.

🎨

Clean Modern UI

A dashboard that feels like it was built in 2025. Responsive, fast, and intuitive — not a relic of the Bootstrap 2 era.

How Punchmail stacks up

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

Punchmail MailWizz Sendy Mailchimp
Self-hosted
Docker deployment
Modern framework
Block email editor Basic
Automation workflows
SMTP pools + warmup Basic
ClickHouse analytics
A/B testing Basic
Active development Slow Slow
One-time pricing $350+/mo

Frequently Asked Questions

Does Punchmail have all the features MailWizz has?

+
Punchmail covers the core email marketing features: campaigns, automation, segmentation, A/B testing, bounce processing, SMTP pools, and analytics. MailWizz has some niche features like customer-facing portals that Punchmail doesn't include, but the core email marketing workflow is comprehensive.

Can I migrate from MailWizz to Punchmail?

+
Yes. Export your subscriber lists from MailWizz as CSV and import them into Punchmail. Campaign templates will need to be rebuilt using the block editor, and automation workflows recreated. The migration is straightforward for most setups.

Is Punchmail's codebase easier to customize than MailWizz?

+
Significantly. Punchmail is built on Laravel 11 — one of the most popular and well-documented PHP frameworks. If you've worked with Laravel before, you can read and extend the code immediately. MailWizz's Yii 1.x codebase has a much steeper learning curve.

How does pricing compare between Punchmail and MailWizz?

+
Both offer one-time pricing. MailWizz is $63 for a regular license. Punchmail is €49. Both include future updates. The main difference is what you get: Punchmail includes Docker deployment, ClickHouse analytics, and a modern architecture.

Does Punchmail support multiple sending servers like MailWizz?

+
Yes. Punchmail supports SMTP pools with multiple providers, weighted distribution for IP warmup, automatic failover, and per-campaign throttling. This is similar to MailWizz's delivery server feature but with a more modern implementation.

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.

MailWizz got me started with self-hosted email marketing, but every time I opened the codebase to customize something, I felt like I was reading code from a different era. Punchmail is what MailWizz would be if it were built today.

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