WooCommerce 10.9 records sent, failed, disabled, and skipped transactional email outcomes through the standard logger. A threshold set too high can hide INFO or NOTICE evidence, while long retention can keep more diagnostic data than the incident or privacy policy requires.
Use this when the transactional-emails source seems empty, only warnings appear, logs grow quickly, or a team needs a defensible retention rule for support and privacy.
Quick answer
WooCommerce Transactional Email Log Level and Retention Audit should be handled with a narrow evidence-first workflow: inventory logger settings, generate test outcomes, confirm level coverage, then verify the result before making broader changes.
What to check first
- Record the active log handler, level threshold, retention period, storage path, and access roles.
- Trigger one sent, one disabled or skipped, and one controlled failure outcome on staging.
- Confirm INFO, NOTICE, and WARNING entries appear or are intentionally excluded by policy.
- Review custom context filters for email addresses, message content, tokens, or unnecessary order data.
- Set a retention period that covers support response time, then test automatic cleanup and export controls.
Diagnostic table
Use this table to keep the work practical. It connects the symptom to evidence and a verification step.
| Action | Evidence to collect | How to verify |
| Inventory logger settings | Record the active log handler, level threshold, retention period, storage path, and access roles. | Sent, failed, disabled, and skipped outcomes follow the documented threshold policy. |
| Generate test outcomes | Trigger one sent, one disabled or skipped, and one controlled failure outcome on staging. | Recipient addresses and message bodies do not appear in retained logs or exports. |
| Confirm level coverage | Confirm INFO, NOTICE, and WARNING entries appear or are intentionally excluded by policy. | Authorized operators can find an incident within the support window. |
| Remove risky context | Review custom context filters for email addresses, message content, tokens, or unnecessary order data. | Expired logs are deleted without removing evidence still under an active incident hold. |
Why this usually happens
- An error-only threshold hides successful and skipped sends needed for comparison.
- Changing the WooCommerce log handler can move evidence between files and the database.
- Custom context fields can reintroduce data the core logger intentionally redacts.
- Retention defaults may not match the store's support window or privacy commitments.
Useful command or data shape
Adapt paths, IDs, and privacy handling to the site before running commands or storing data on production.
wp option get woocommerce_logger_settings --format=json
wp eval 'var_export( wc_get_log_file_path( "transactional-emails" ) );'
rg -n 'woocommerce_email_log_(enabled|context)' wp-content/
# Test retention cleanup on staging before deleting production evidence.
Safe fix order
Do the work in a sequence that makes each result easy to prove. Stop if a step produces new evidence that changes the incident scope.
- Inventory logger settings
- Generate test outcomes
- Confirm level coverage
- Remove risky context
- Test retention cleanup
What to tell the client or owner
Document handler, threshold, retention days, access roles, redaction test, cleanup date, and the reason for any incident hold.
Production verification checklist
- Sent, failed, disabled, and skipped outcomes follow the documented threshold policy.
- Recipient addresses and message bodies do not appear in retained logs or exports.
- Authorized operators can find an incident within the support window.
- Expired logs are deleted without removing evidence still under an active incident hold.
Mistakes to avoid
- Do not judge the fix by one browser or the homepage only.
- Do not delete evidence before recording usernames, file paths, timestamps, and response headers.
- Do not add a cache, security, or tracking plugin while the original problem is still unclear.
- Do not leave test users, temporary debug logs, or broad API keys active after verification.
When HandL WP should help
Bring in help when this affects leads, checkout, search visibility, malware risk, paid media reporting, or a client production site. HandL WP can trace the issue through WordPress, hosting, cache, tracking, and Search Console, then verify the workflow after the technical fix.
If this is active on a production site, set up WooCommerce monitoring and evidence retention.
Related HandL WP guides
Use these related guides when the same issue touches tracking, security, checkout, or crawler visibility.
Helpful references
Test guest recipient redaction across every evidence store
Retention is only useful when support evidence stays privacy-conscious. Run the WooCommerce guest recipient redaction test across the WooCommerce log, SMTP provider, exports, screenshots, backups, and support tickets.