Quick verdict
Ethereal Email is perfect for quick, throwaway testing — especially if you're already using Nodemailer. MailHog.site is the upgrade when you need persistent inboxes, team access, spam scoring, HTML compatibility checks, or CI/CD integration.
Feature comparison
| Feature | MailHog.site | Ethereal |
|---|---|---|
| SMTP email capture | ✅ | ✅ |
| Persistent inbox | ✅ Always available | ⚠️ Temporary accounts |
| Spam scoring | ✅ rspamd engine | ❌ |
| HTML compatibility | ✅ 12+ clients | ❌ |
| REST API for CI/CD | ✅ | ❌ |
| Team collaboration | ✅ Multi-user | ❌ Single-user |
| Multiple inboxes | ✅ Up to 25 | ❌ One at a time |
| Header inspection | ✅ Full | ✅ Basic |
| Attachment support | ✅ | ✅ |
| Authentication | ✅ Per-inbox credentials | ⚠️ Auto-generated |
| Cost | Free – $29/mo | Free |
| Framework support | Any SMTP client | Nodemailer-native |
When Ethereal is the right choice
- You're doing a quick prototype and need throwaway SMTP in 10 seconds
- You're already using Nodemailer and want the built-in integration
- You don't need persistent inboxes — you're checking one email and moving on
- Budget is strictly zero and you're a solo developer
When MailHog.site is the right choice
- You need persistent inboxes that survive browser refreshes
- Your team needs shared access to the same test inboxes
- You want spam scoring to catch deliverability issues early
- You need HTML compatibility checks for Outlook, Gmail, and other clients
- You're integrating email assertions into CI/CD pipelines via the API
- You use any language, not just Node.js — Python, Ruby, PHP, Go, Java, etc.
Migration from Ethereal
Switching is simple — replace the auto-generated Ethereal credentials in your SMTP config with your MailHog inbox credentials. The SMTP protocol is standard, so no code changes are needed beyond updating host, port, username, and password.