# Email Log with Resend for WordPress

> See every email WordPress sends, why one failed, and resend it in one click.

- URL: https://www.web357.com/mail-log-wordpress-plugin
- Platform: WordPress
- Edition: Free and PRO
- Latest version: 1.0.0
- Compatibility: WordPress 5.x, WordPress 6.x, WordPress 7.x
- Price: From €39 per year
- Pricing page: https://www.web357.com/mail-log-wordpress-plugin/pricing
- Changelog: https://www.web357.com/mail-log-wordpress-plugin/changelog
- Documentation: https://docs.web357.com/mail-log-wordpress-plugin/intro/
- wordpress.org: https://wordpress.org/plugins/web357-mail-log/
- Free download: https://wordpress.org/plugins/web357-mail-log/
- Included in: [WordPress All Access Bundle](https://www.web357.com/wordpress-bundle)

_Did that email actually leave the site?_

**Mail Log** keeps every message WordPress sends, and whether it was sent, failed, or never got an answer. Open the row, read the error, and resend the original if the customer still needs it.

A customer says the order email never arrived. Open **Mail Log**, read the error, and resend the original message. Setup is in the [documentation](https://docs.web357.com/mail-log-wordpress-plugin/intro/).

## Features

### 📊 Interactive Delivery Dashboard & Trend Visualizations

**See whether mail is leaving the site.**

Order emails, password resets, and contact forms all pass through `wp_mail()`. The [dashboard](https://docs.web357.com/mail-log-wordpress-plugin/dashboard/) shows how many went out, how many failed, and the latest messages.

- Volume for the last day, week, month, and year
- A chart of sending over time
- Failures in the last 7 days, so a bad day is obvious

![Web357 Mail Log WordPress Plugin - Interactive Dashboard & Sending Trends](https://www.web357.com/content/images/mail-log-dashboard-overview.png)

### 📜 Searchable Email Log History with Custom Columns

**Find the message a customer says they never got.**

Search the [email log](https://docs.web357.com/mail-log-wordpress-plugin/email-logs/) by recipient, subject, or sender. Each row is **Sent**, **Failed** (with the error), or **Pending** (the request stopped before the mailer answered).

- Sort by date, recipient, subject, or status
- Choose which columns to show
- Delete one row, a selection, or the whole log
- *Filters by status, date and more are in [PRO](https://www.web357.com/mail-log-wordpress-plugin/pricing)*

![Web357 Mail Log WordPress Plugin - Searchable Email Logs Viewer](https://www.web357.com/content/images/mail-log-logs-screen-overview.png)

### 🔍 Sandboxed Email Inspector with Content Privacy Shield

**Read the email without running whatever is inside it.**

When you [open an email](https://docs.web357.com/mail-log-wordpress-plugin/email-logs/#viewing-email-details), the HTML is shown in a frame where scripts cannot run. Pictures from other sites stay hidden until you click **Load images**.

- The same message the recipient was sent
- Raw headers, and the stored record as JSON
- Attachment *names* are kept. The file itself often is not, because many plugins delete it after sending

![Web357 Mail Log WordPress Plugin - Sandboxed Email Preview Modal](https://www.web357.com/content/images/mail-log-detail-modal.png)

### 🔄 One-Click Email Resend with Complete Audit Trail

**Send the original email again.**

When an invoice or a reset link never arrived, [resend that exact message](https://docs.web357.com/mail-log-wordpress-plugin/guides/resending-failed-emails/) from the list or from the preview. You do not have to place the order again.

- Recipients, headers, and the body go out as they were logged
- The resend is recorded, so you can see that you tried
- A missing attachment file is noted, and the message can still be sent

![Web357 Mail Log WordPress Plugin - One-Click Email Resend Action](https://www.web357.com/content/images/mail-log-resend-action.png)

### 📈 Period-over-Period Deliverability Analytics

**Compare this period with the one before it.**

In [Analytics](https://docs.web357.com/mail-log-wordpress-plugin/analytics/#key-performance-indicators-kpi-cards), pick the last 7, 30, or 90 days, or any range up to a year. You can see whether failures went up after a host change or a plugin update.

- Volume, successful sends, and the failure rate, with the change versus the previous period
- A daily chart of sent and failed mail
- Enough to notice a problem before customers write in

![Web357 Mail Log WordPress Plugin - Deep Delivery Analytics and Trends](https://www.web357.com/content/images/mail-log-analytics-screen-overview.png)

### 📅 12-Month Performance Table & Month-to-Date Benchmarks

**A year of sending, one month per row.**

The [12-month table](https://docs.web357.com/mail-log-wordpress-plugin/analytics/#monthly-overview--month-to-date-performance) shows totals, successes, failures, and the failure rate. The current month is also compared with the same stretch of days last month.

- Useful before a sale, when you expect more order mail
- The arrow next to a number shows whether that month went up or down

![Web357 Mail Log WordPress Plugin - 12-Month Performance Table](https://www.web357.com/content/images/mail-log-analytics-monthly-overview.png)

### 🎯 Ranked Delivery Intelligence & Error Diagnostics

**See which inboxes, and which errors, come up again.**

If Gmail starts rejecting mail, the [domain table](https://docs.web357.com/mail-log-wordpress-plugin/analytics/#breakdown-rankings) shows it. The error table shows the message your mailer returned, ranked by how often it appears.

- Top recipients, domains, and subjects
- The errors that repeat, so you fix the cause once

![Web357 Mail Log WordPress Plugin - Top Recipient Domains and Error Strings](https://www.web357.com/content/images/mail-log-analytics-top-tables.png)

### ⏰ 24-Hour & Weekday Traffic Distribution Analysis

**When the site sends the most mail.**

The [busiest hours](https://docs.web357.com/mail-log-wordpress-plugin/analytics/#busiest-hours) charts use your WordPress timezone. A busy hour is a bad time to run a heavy cleanup.

- Sends by hour
- Sends by weekday

![Web357 Mail Log WordPress Plugin - Sending Activity Distribution Charts](https://www.web357.com/content/images/mail-log-analytics-distribution-charts.png)

### 🏠 Native WordPress Admin Home Dashboard Widget

**A quick check on the main WordPress dashboard.**

You do not have to open Mail Log every morning. The [admin widget](https://docs.web357.com/mail-log-wordpress-plugin/dashboard/#wordpress-admin-home-widget) shows the last 24 hours, the last 7 days, recent failures, and the five latest emails.

- Status is color-coded
- One link opens the full log

![Web357 Mail Log WordPress Plugin - WordPress Admin Dashboard Widget](https://www.web357.com/content/images/mail-log-dashboard-home-widget.png)

### 🔐 Role-Based Access Control & Message Body Protection

**Let support see the log. Do not let them read reset links.**

Administrators always have access. You can [allow other roles](https://docs.web357.com/mail-log-wordpress-plugin/configuration/access-and-display/#role-access-and-security-considerations) to view status and resend. Message bodies stay hidden from everyone who is not an administrator.

- Only administrators can delete logs or change settings
- Turn on the failed-email notice if you want a warning in wp-admin

![Web357 Mail Log WordPress Plugin - Role-Based Access Settings](https://www.web357.com/content/images/mail-log-settings-access.png)

### 🛡️ GDPR & CCPA Compliance: IP Anonymization & Daily Retention

**Keep IP addresses only if you need them.**

In the [logging settings](https://docs.web357.com/mail-log-wordpress-plugin/configuration/logging/#privacy-and-gdpr-compliance), turn IP logging off, or mask it: the last part of an IPv4 address, and a shortened IPv6 address. Old rows can be deleted after the number of days you choose.

- A daily cleanup via WordPress cron
- Choose whether the log is kept or removed when you delete the plugin

![Web357 Mail Log WordPress Plugin - IP Logging and Anonymization Settings](https://www.web357.com/content/images/mail-log-settings-logging.png)

## Good to know

- **It only watches wp_mail()**: WooCommerce, contact forms, and membership plugins are logged when they send mail the WordPress way, as the [email log page](https://docs.web357.com/mail-log-wordpress-plugin/email-logs/) explains.
- **The preview cannot run scripts**: In the [preview](https://docs.web357.com/mail-log-wordpress-plugin/email-logs/#message-body-previews), HTML is isolated and remote images stay off until you load them.
- **Mail that fails has a next step**: Read the error, then use [Fix Email Delivery](https://docs.web357.com/mail-log-wordpress-plugin/fix-email-delivery/) to connect Gmail or Microsoft 365 if the host is blocking PHP mail.

## Free vs PRO

| Feature | Free | PRO |
| --- | --- | --- |
| **Intercept & Log All Outgoing Emails**: Every `wp_mail()` message: recipients, subject, body, headers, and attachment names. Learn more in [Email logs](https://docs.web357.com/mail-log-wordpress-plugin/email-logs/). | ✓ | ✓ |
| **Three-State Delivery Status Tracking**: **Sent**, **Failed** with the error, or **Pending** if the request stopped early. | ✓ | ✓ |
| **Real-Time Statistics Dashboard**: Volume, the peak hour, and recent failures. Learn more in [Dashboard](https://docs.web357.com/mail-log-wordpress-plugin/dashboard/). | ✓ | ✓ |
| **Native WordPress Admin Widget**: The last 24 hours, the last 7 days, and the latest emails on the main dashboard. Learn more in [Widget](https://docs.web357.com/mail-log-wordpress-plugin/dashboard/#wordpress-admin-home-widget). | ✓ | ✓ |
| **Delivery Analytics & Period Comparisons**: Compare 7, 30, or 90 days, or a custom range. Learn more in [Analytics](https://docs.web357.com/mail-log-wordpress-plugin/analytics/). | ✓ | ✓ |
| **Ranked Intelligence & Top Error Diagnostics**: The recipients, domains, subjects, and errors that come up most often. Learn more in [Rankings](https://docs.web357.com/mail-log-wordpress-plugin/analytics/#breakdown-rankings). | ✓ | ✓ |
| **One-Click Email Resend**: Send the logged message again, from the list or the preview. Learn more in [How to resend](https://docs.web357.com/mail-log-wordpress-plugin/guides/resending-failed-emails/). | ✓ | ✓ |
| **Sandboxed HTML Preview & Privacy Shield**: Scripts do not run. Remote images stay blocked until you load them. Learn more in [Preview](https://docs.web357.com/mail-log-wordpress-plugin/email-logs/#viewing-email-details). | ✓ | ✓ |
| **Role-Based Access Control**: Other roles can view status. Only administrators can read the body. Learn more in [Access](https://docs.web357.com/mail-log-wordpress-plugin/configuration/access-and-display/). | ✓ | ✓ |
| **GDPR & CCPA IP Anonymization**: Turn IP logging off, or mask the address. Learn more in [Privacy](https://docs.web357.com/mail-log-wordpress-plugin/configuration/logging/#privacy-and-gdpr-compliance). | ✓ | ✓ |
| **Automated Daily Log Rotation**: Delete rows older than the number of days you set. Learn more in [Rotation](https://docs.web357.com/mail-log-wordpress-plugin/configuration/logging/#automated-log-rotation). | ✓ | ✓ |
| **Email Open Tracking & Read Receipts**: Off by default. An invisible image on your own site records the first open. Learn more in [Open tracking](https://docs.web357.com/mail-log-wordpress-plugin/configuration/open-tracking/). | – | ✓ |
| **Dedicated Opened Column & Status Badges**: See whether an HTML email was opened, without opening each row. | – | ✓ |
| **Advanced Multi-Condition Query Filters**: Combine recipient, subject, body, status, and date. Match all of the rules, or any of them. Learn more in [Filters](https://docs.web357.com/mail-log-wordpress-plugin/guides/filtering-email-logs/). | – | ✓ |
| **One-Click CSV Export**: Download the current table, or just the filtered rows, as a CSV file that opens in Excel. | – | ✓ |
| **Automated Email Forwarding**: Send a copy of every outgoing email to another address, as To, Cc, or Bcc. Learn more in [Forwarding](https://docs.web357.com/mail-log-wordpress-plugin/configuration/email-forwarding/). | – | ✓ |
| **Database Threshold & Failure Alerts**: Get an email when the log table passes a size you set. Learn more in [Log size](https://docs.web357.com/mail-log-wordpress-plugin/configuration/log-size-notification/). | – | ✓ |
| **Automatic Updates & License Management**: A [PRO](https://www.web357.com/mail-log-wordpress-plugin/pricing) license unlocks updates from the Plugins screen. Help is on the [support page](https://www.web357.com/support). | – | ✓ |

## Pricing

Each license is a subscription that renews every year. It includes updates and support while it is active. Prices are in EUR. Buy or compare licenses at https://www.web357.com/mail-log-wordpress-plugin/pricing.

| License | Price per year |
| --- | --- |
| 1 site | €39 |
| 3 sites | €59 |
| 5 sites | €79 |
| Unlimited sites | €99 |

## Frequently asked questions

### Does it work with current WordPress and PHP?

Yes. It needs **WordPress 5.9** or newer and **PHP 7.4** or newer, as listed in the [requirements](https://docs.web357.com/mail-log-wordpress-plugin/installation/#requirements).

### Will logging every email slow the site?

No. One log row is written when `wp_mail()` runs. The admin screens load a page of results at a time. More answers are in the [FAQ](https://docs.web357.com/mail-log-wordpress-plugin/faq/).

### Does it work with WooCommerce and SMTP plugins?

Yes, when those plugins send through `wp_mail()`. That includes WooCommerce, Contact Form 7, Gravity Forms, WPForms, and the usual SMTP plugins.

Mail Log does not send mail itself. If the host blocks PHP mail, use an authenticated connection such as [Gmail SMTP Connect](https://www.web357.com/gmail-smtp-connect-wordpress-plugin) or [Outlook 365 Mail Connect](https://www.web357.com/microsoft-outlook-365-mail-connect-wordpress-plugin), as [Fix Email Delivery](https://docs.web357.com/mail-log-wordpress-plugin/fix-email-delivery/) shows.

### Can shop staff read password-reset links in the log?

Not unless they are administrators. Other roles can see status and resend, and the message body stays hidden, as the [access settings](https://docs.web357.com/mail-log-wordpress-plugin/configuration/access-and-display/#role-access-and-security-considerations) explain.

### How long are logs kept?

You choose the number of days. A daily WordPress task deletes older rows. You can also keep or remove the log when the plugin is deleted. See [log rotation](https://docs.web357.com/mail-log-wordpress-plugin/configuration/logging/#automated-log-rotation).

### What is free, and what is PRO?

**Free:** the log, Sent / Failed / Pending, search, safe preview, resend, analytics, the dashboard widget, role access, and IP anonymization.

**[PRO](https://www.web357.com/mail-log-wordpress-plugin/pricing):** open tracking, advanced filters, CSV export, forwarding a copy of every email, and an alert when the log table gets large.

[Open tracking](https://docs.web357.com/mail-log-wordpress-plugin/configuration/open-tracking/) is off until you turn it on. Mention it in your privacy policy if you do.

## Documentation

- [Introduction](https://docs.web357.com/mail-log-wordpress-plugin/intro/)
- [Installation](https://docs.web357.com/mail-log-wordpress-plugin/installation/)
- [Dashboard](https://docs.web357.com/mail-log-wordpress-plugin/dashboard/)
- [Email logs](https://docs.web357.com/mail-log-wordpress-plugin/email-logs/)
- [Analytics](https://docs.web357.com/mail-log-wordpress-plugin/analytics/)
- [Logging and privacy](https://docs.web357.com/mail-log-wordpress-plugin/configuration/logging/)
- [Who can open the log](https://docs.web357.com/mail-log-wordpress-plugin/configuration/access-and-display/)
- [Fix Email Delivery](https://docs.web357.com/mail-log-wordpress-plugin/fix-email-delivery/)
- [FAQ](https://docs.web357.com/mail-log-wordpress-plugin/faq/)

---

Part of [Web357](https://www.web357.com). Site map for agents: [llms.txt](https://www.web357.com/llms.txt), [llms-full.txt](https://www.web357.com/llms-full.txt). Documentation: https://docs.web357.com/. Support: https://www.web357.com/support. Append `.md` to any page URL on this site to read it as Markdown.
