WordPress email delivery through SMTP, Amazon SES, Mailgun or SendGrid, with logs, fallback and health checks Kelune SMTP takes over WordPress email and sends it through a connection you configure — classic SMTP, or an API provider such as Amazon SES, Mailgun or SendGrid. Every message is logged, so
PricingFree downloadThe WordPress.org download is free. Pro versions, add-ons or external services may cost extra.
CompatibilityRequires WordPress 6.6 and PHP 7.4.
SourceWordPress plugins · Oct 31, 2026
01 / Source details
Aboutthistool.
WordPress email delivery through SMTP, Amazon SES, Mailgun or SendGrid, with logs, fallback and health checks
Kelune SMTP takes over WordPress email and sends it through a connection you configure — classic SMTP, or an API provider such as Amazon SES, Mailgun or SendGrid. Every message is logged, so you can see what was sent, what failed, and why, and resend anything that did not arrive.
Every feature listed below is included and fully functional. Kelune SMTP stores all data in your own WordPress database and contacts an external service only when you configure a connection for it (see the “External services” section below). Nothing is ever sent to the plugin author.
Kelune SMTP is an independent plugin and is not affiliated with, endorsed by or sponsored by Amazon Web Services, Twilio SendGrid or Mailgun. Amazon SES, Mailgun and SendGrid are trademarks of their respective owners, named here only to identify the services a connection can send through.
👇 Helpful Links to Get Started
📬 Contact Us | 🛟 Support Forum | 🐙 Source Code
❤️ Features
Multiple connections — configure as many senders as you need and keep them side by side.
Four providers — SMTP, Amazon SES, Mailgun, and SendGrid, each with its own credential form.
Routing by From address — every connection owns one sender address, and mail from that address goes out through it.
Default and fallback — a default connection handles everything unrouted, and an optional fallback takes over when the primary fails.
Email log — status, provider, recipients, subject, headers, and the provider’s own response for every message.
Resend — send a logged message again, to its original recipients or to different ones.
Retention — prune logged messages automatically after a number of days you choose.
Health checks — a daily check per active connection, plus an on-demand check from the connections screen.
Test email — send a test through any connection from anywhere in the dashboard.
Kill switch — turn routing off and Kelune SMTP steps out of the way of wp_mail() entirely.
Encrypted secrets — provider passwords and API keys are encrypted at rest, and never returned by the REST API.
No conflicts with core — mail is intercepted with the pre_wp_mail filter, so wp_mail() is never redeclared.
Source Code
The only compiled code in this plugin is the dashboard bundle in assets/apps/dashboard/ — an entry script and stylesheet plus the code-split chunks under js/ ; nothing is obfuscated. Its full React and TypeScript source, with the Vite build configuration, is published in a public GitHub repository , tagged for each release.
To rebuild it (Node.js 20 or newer): cd js-apps/dashboard , then npm install and npm run build . The output filenames are content-hashed, so the build is reproducible and nothing is fetched at runtime.
Bundled Libraries
The scripts in assets/apps/dashboard/ are compiled from third-party npm packages — React, Ant Design, Ant Design Icons, Ant Design Charts, TanStack Query, React Router, Axios and Day.js among them — and none of them is fetched at runtime. @wordpress/i18n is not bundled: the build aliases it to a small shim that calls the copy WordPress already ships. Every package is MIT licensed except a handful of indirect ones under ISC, BSD, 0BSD and Apache-2.0, all of which are compatible with this plugin’s “GPLv2 or later” license. js-apps/dashboard/package.json and js-apps/dashboard/package-lock.json in the repository linked above name and pin every package, direct and indirect.
No third-party PHP libraries are included.
External Services
Kelune SMTP stores all data in your own WordPress database. It connects to an external service only when you create and activate a connection for that service. No data is ever sent to the plugin author.
SMTP (your own mail server) Used to deliver email when you create an SMTP connection. This is not a fixed third-party service: the plugin connects only to the mail server host you enter yourself. – Data sent: message content, subject, recipient/sender addresses, headers and attachments, plus the SMTP credentials you configure. – When sent: each time the plugin sends an email through this connection, and when you run a health check or send a test email. – Service URL: the SMTP host you configure – Terms / Privacy: governed by your own mail server provider
Amazon SES Used to deliver email when you create an Amazon SES connection and enter AWS credentials. No request is made to Amazon until you have saved that connection. – Data sent: the raw message — recipient/sender addresses, subject, content and attachments. The health check sends only your AWS credentials and no message data: it reads your account details (sending quota and status) from the /v2/email/account endpoint. – When sent: each time the plugin sends an email through this connection, and when you run a health check or send a test email. – Service URL: https://email.{your-region}.amazonaws.com/ — for example https://email.us-east-1.amazonaws.com/ – Terms of Service: https://aws.amazon.com/service-terms/ – Privacy Policy: https://aws.amazon.com/privacy/
Mailgun Used to deliver email when you create a Mailgun connection and enter a Mailgun API key and sending domain. – Data sent: message content, subject, recipient/sender addresses and attachments. The health check sends only your API key and sending domain, to confirm the domain exists on your account via the /v3/domains/{domain} endpoint. – When sent: each time the plugin sends an email through this connection, and when you run a health check or send a test email. – Service URL: https://api.mailgun.net (or https://api.eu.mailgun.net if you select the EU region) – Terms of Service: https://www.mailgun.com/legal/terms/ – Privacy Policy: https://www.mailgun.com/legal/privacy-policy/
SendGrid Used to deliver email when you create a SendGrid connection and enter a SendGrid API key. – Data sent: message content, subject, recipient/sender addresses and attachments. The health check sends only your API key, to read the scopes granted to it from the /v3/scopes endpoint. – When sent: each time the plugin sends an email through this connection, and when you run a health check or send a test email. – Service URL: https://api.sendgrid.com – Terms of Service: https://www.twilio.com/en-us/legal/tos – Privacy Policy: https://www.twilio.com/en-us/legal/privacy
See it in action
Screenshots & previews.
Dashboard — sent, failed, total and success rate against the period before it, a daily delivery curve, and the split across your providers.Trends — switch the window to 7, 30 or 90 days; the share ring regroups by provider or by connection.Connections — every sender side by side, each with its provider, status, health and last use.Connection settings — the credential form changes with the provider, and secrets are encrypted at rest.Providers — SMTP for any mail server, plus direct API connections to Amazon SES, Mailgun and SendGrid.Email log — every message with status, recipient, subject, provider and time, filterable and searchable.Message detail — recipients, custom headers, the rendered body in a sandboxed frame, and the provider's own response.Failures — filter down to what did not arrive, then resend one row or the whole selection.Test email — send a test through any connection, as HTML or plain text, and read the provider's reply.Settings — default and fallback connection, log retention, health checks, and a kill switch for routing.
02 / Source details
Gettingstarted.
01In your WordPress admin, go to Plugins → Add New , search for “Kelune SMTP”, and click Install Now , then Activate . To install manually instead, upload the kelune-smtp folder to /wp-content/plugins/ and activate it from the Plugins screen.
02Open Kelune SMTP from the admin menu, add a connection for your provider, and send a test email to confirm delivery.
03 / Source details
Frequently asked questions.
What PHP version is required?
PHP 7.4 or higher.
Does the plugin require any paid or external service to work?
Kelune SMTP needs a mail service to send through, and that is the one you choose and configure — your own SMTP server, or an Amazon SES, Mailgun or SendGrid account. The plugin itself contacts no service of its own, and nothing is sent to the plugin author. Until you add a connection it stays dormant and does not touch outgoing mail.
Which providers are supported?
SMTP, Amazon SES, Mailgun, and SendGrid.
Will this conflict with another SMTP plugin?
Kelune SMTP hooks the pre_wp_mail filter instead of redeclaring the pluggable wp_mail() function, so it does not fight plugins that redeclare it. Running two mailer plugins at once is still not a good idea — pick one.
What happens if a connection stops working?
If the message fails and you have set a fallback connection, it is retried through the fallback and the log records that it happened. Daily health checks flag a connection that is failing before your visitors notice.
Where are my credentials stored?
In your own WordPress database, encrypted at rest with authenticated AES-256-GCM when OpenSSL is available. They are never returned by the REST API — the dashboard only ever sees whether a secret is set.
Are email bodies stored in the log?
Only if you leave body logging on. You can turn it off, keep the rest of the log, and set a retention period after which logged messages are deleted automatically.
Is any functionality locked behind a license?
No. Everything shipped in this plugin is free and fully functional.
Website LLMs.txt and LLMs-Full.txt Generator is an LLMs.txt generator and llms-full.txt generator for WordPress. It helps site owners generate, manage, preview, validate, and serve AI discovery files from published public content. Use it to create structured /llms.txt and optional /llms-full.txt end
EngageDock AI is a customizable floating contact widget for WordPress websites that want more leads and faster visitor communication. It helps small businesses turn website traffic into calls, texts, emails, and callback requests from one clean contact panel. Key Features: Click-to-Call – One tap ca
Altify AI is an auto ALT text and AI ALT text plugin for WordPress images. It helps generate descriptive image ALT text for accessibility and image SEO. Use bulk image ALT text tools for your Media Library, generate featured image ALT text automatically, and scale WooCommerce image ALT updates with
The Accepted Payment Methods plugin is a straightforward, lightweight solution that enhances your website by displaying visually appealing icons of the payment methods you accept. This plugin is ideal for a variety of websites, including e-commerce platforms, service-oriented websites, and informati