Agencies & White-Label

Email Marketing Audit Template (Free): List Health, Deliverability, Automation and Consent in 48 Checks

By Artem KukharenkoPublished Updated 9 min read

Updated 1 November 2026. Download the template as CSV or PDF below; no email required.

a clipboard envelope with six colored tabs
Original editorial diagram of the article’s subject; illustrations are conceptual rather than measured results.

How to use the template

  1. Download the CSV. Each row is one check with "How to test," "Pass threshold" and empty "Result" and "Note" columns.
  2. Work through the six sections in order; sections 1–3 gate the rest.
  3. Mark each check Pass, Warning or Fail. Record the number you saw, not just the verdict.
  4. Count fails per section. Any fail in sections 1–3 is a blocker; warnings in sections 4–6 are improvement items.
  5. Use Section 7 to turn fails into a dated plan.

Download CSV Download PDF

Section 1: List health (10 checks)

Scroll for more → On small screens, choose cards for wide tables.

# Check How to test Pass Warning Fail
1.1 Dormant share Share of contacts with no click, reply or purchase in the inactivity window for your cadence (30–60 days daily; 180+ monthly) below 25% 25–45% above 45%
1.2 Never-engaged share Contacts with zero lifetime clicks or purchases who received 5+ emails below 10% 10–25% above 25%
1.3 Last-mailed age Oldest segment that has not been mailed in the last 90 days none 90–365 days over 365 days (treat as dormant list; see playbook)
1.4 Hard bounce rate, last 5 sends ESP reports below 1% 1–2% above 2%
1.5 Invalid and risky addresses Verification scan of the full list below 3% 3–10% above 10%
1.6 Suppression reconciliation Unsubscribes, complaints and bounces from every system (current ESP, old ESP, CRM, support tool) merged into one suppression list yes, documented partial no
1.7 Sunset policy Written window, flow and disposition (suppress, not delete) exists and runs exists, not enforced none
1.8 Billing of inactive contacts Platform rule known and applied (Mailchimp archives unsubscribed; HubSpot non-marketing; Klaviyo suppression; beehiiv inactive) applied known, not applied unknown
1.9 Duplicate and cross-brand profiles Same address in multiple audiences or brands with different consent states none some, tracked unknown
1.10 Role, disposable and typo-domain addresses Scan results removed present, suppressed present, mailed

Scroll for more → On small screens, choose cards for wide tables.

# Check How to test Pass Warning Fail
2.1 Consent source recorded per contact Field exists and is populated over 95% 80–95% below 80%
2.2 Consent timestamp recorded Field exists over 95% 80–95% below 80%
2.3 Purchased, scraped or partner addresses Source audit none identified and held mailed
2.4 Opt-out processing time Test unsubscribe; check time to suppression within 48 hours (Google and Yahoo expect two days; CAN-SPAM allows 10 business days) 2–10 business days over 10 business days
2.5 Physical address and accurate From/Reply-To in every marketing template Template review yes missing on some missing
2.6 Preference center works without login Test yes login required none
2.7 EU/UK and state-law handling Consent basis for EU/UK contacts; GPC and opt-out handling for US state residents (20 states with comprehensive laws as of Aug 2026) documented partial none
2.8 Transactional vs marketing separation Promotional content never sent on transactional templates without unsubscribe yes occasional mixed

Section 3: Authentication and sender requirements (9 checks)

Scroll for more → On small screens, choose cards for wide tables.

# Check How to test Pass Warning Fail
3.1 SPF passes on every sending stream Gmail "Show original" for a test from each system all pass one stream fails main stream fails
3.2 DKIM passes on every stream, key ≥1024 bits (2048 recommended) same all pass one stream unsigned main stream unsigned
3.3 DMARC record exists, policy at least p=none, rua set DNS lookup p=quarantine or reject with rua p=none with rua missing or no policy
3.4 From-domain alignment with SPF or DKIM headers show dmarc=pass yes relaxed only on some streams no
3.5 PTR/reverse DNS valid for sending IPs; TLS in use ESP confirmation or DNS yes unknown no
3.6 One-click unsubscribe headers on all marketing mail headers show List-Unsubscribe and List-Unsubscribe-Post yes missing on automations missing
3.7 Bulk-sender status known Do you send ~5,000+/day to personal Gmail (subdomains combined)? known and compliant unknown bulk and non-compliant
3.8 Gmail spam rate, last 30 days (Postmaster) daily values all days below 0.10% any day 0.10–0.29% any day at or above 0.30%
3.9 Postmaster v2 Compliance status; SNDS; Yahoo CFL registered dashboards all green, all registered registered, one issue not registered

Section 4: Sending practice (7 checks)

Scroll for more → On small screens, choose cards for wide tables.

# Check How to test Pass Warning Fail
4.1 Volume pattern Day-to-day variance over 30 days steady spikes over 2× sends after gaps of 60+ days
4.2 Segmentation by engagement Regular sends exclude the unengaged tier yes partial full-list sends
4.3 Reactivation method for dormant segments Daily cohorts with stop conditions yes batches without stop conditions single sends
4.4 Stop conditions written and visible Document exists yes informal none
4.5 Complaint rate per send (ESP) and per day (Postmaster) reviewed Routine weekly, daily during streams monthly never
4.6 Soft-bounce and deferral codes reviewed Bounce logs yes sometimes never
4.7 Separate streams (transactional vs marketing) by subdomain or IP where volume justifies Setup yes mixed, low volume mixed, high volume

Section 5: Automation and measurement (7 checks)

Scroll for more → On small screens, choose cards for wide tables.

# Check How to test Pass Warning Fail
5.1 Welcome flow exists and sends within minutes Test signup yes hours none
5.2 Sunset flow exists with a disposition Automation review yes exists, no disposition none
5.3 Flows exclude suppressed and unengaged where appropriate Logic review yes partial no
5.4 Metrics used for decisions Clicks, CTOR, orders, revenue; opens treated as directional yes opens primary opens only
5.5 Cohort measurement for any reactivation Frozen cohort with baseline yes ad hoc none
5.6 Attribution window and labeling Attributed vs incremental distinguished yes attributed only none
5.7 Dormant list value estimated Calculator or equivalent yes rough never

Section 6: Content and template hygiene (7 checks)

Scroll for more → On small screens, choose cards for wide tables.

# Check How to test Pass Warning Fail
6.1 Visible unsubscribe link in every marketing email Template review yes small or hidden missing
6.2 Subject lines accurate; no "Re:"/"Fwd:" tricks Review yes occasional routine
6.3 From name recognizable and consistent Review yes varies personal-name tricks
6.4 Link domains aligned or reputable (tracking domain branded) Headers and links yes shared tracking domain shorteners
6.5 Image-to-text balance and broken HTML Render test fine heavy broken
6.6 Pre-send QA checklist in use (segment, links, preheader, placeholders) Process yes informal none
6.7 Promotions-tab annotations for promotional senders Implementation yes or n/a planned n/a ignored

Section 7: From fails to a plan

Scroll for more → On small screens, choose cards for wide tables.

Failed check First action Guide
1.1–1.3, 1.5 Scan, tier, and run a reactivation stream before any full send Dormant list reactivation playbook
1.6–1.8 Reconcile suppressions; write the sunset policy; apply the platform's billing mechanism Email sunset policy; Klaviyo, beehiiv, Mailchimp, HubSpot guides; Cost of an inactive subscriber
2.x Hold unconsented segments; fix opt-out processing; separate transactional from marketing Sender requirements tracker
3.1–3.6 Fix authentication and alignment stream by stream; add one-click headers Sender requirements tracker; Postmaster Tools v2
3.8–3.9 Register the dashboards; if a day was at or above 0.3%, follow the six-week plan Recover domain reputation with Gmail
4.x Exclude the unengaged tier; adopt daily cohorts and written stop conditions Playbook, Re-engagement sequence
5.x Build the sunset flow; switch decisions to clicks and revenue; freeze cohorts Sunset policy; Unsubscribe, complaint and bounce benchmarks
6.x Template fixes; pre-send checklist; annotations if promotional Promotions tab guide
Section 7: From fails to a plan1.1–1.3, 1.5 → Scan, tier, and run a reactivation stream before any full send → Dormant list reactivation playbook1.6–1.8 → Reconcile suppressions; write the sunset policy; apply the platform's billing mechanism → Email sunset policy…2.x → Hold unconsented segments; fix opt-out processing; separate transactional from marketing → Sender requirements tr…3.1–3.6 → Fix authentication and alignment stream by stream; add one-click headers → Sender requirements tracker; Postm…3.8–3.9 → Register the dashboards; if a day was at or above 0.3%, follow the six-week plan → Recover domain reputation …4.x → Exclude the unengaged tier; adopt daily cohorts and written stop conditions → Playbook, Re-engagement sequence5.x → Build the sunset flow; switch decisions to clicks and revenue; freeze cohorts → Sunset policy; Unsubscribe, compl…6.x → Template fixes; pre-send checklist; annotations if promotional → Promotions tab guide
Section 7: From fails to a plan. Read the full qualifications and dated sources in the accompanying table.

Scoring

Count fails and warnings per section. Interpretation, not a grade:

  • Any fail in sections 1–3: the program is not ready to increase volume, change ESP, or reactivate a dormant segment. Fix these first; they are the causes behind most "going to spam all of a sudden" incidents.
  • Fails only in sections 4–6: the foundation is sound; the plan is operational.
  • Warnings only: schedule a re-audit in 90 days.

For agencies: the template as delivered here is the scope of a productized audit; the market prices such audits at roughly $500–5,000 depending on the number of ESPs and the sending history. The white-label guide covers how to package it.

Your 48-check audit

Results stay in this browser when local storage is available. No account or upload is required.

0 of 48 reviewed · 0 failed

Section 1: List health (10 checks) · 0 fails

How to test: Share of contacts with no click, reply or purchase in the inactivity window for your cadence (30–60 days daily; 180+ monthly)

Thresholds and failure meaning

Pass: below 25%

Warning: 25–45%

Fail: above 45%

How to test: Contacts with zero lifetime clicks or purchases who received 5+ emails

Thresholds and failure meaning

Pass: below 10%

Warning: 10–25%

Fail: above 25%

How to test: Oldest segment that has not been mailed in the last 90 days

Thresholds and failure meaning

Pass: none

Warning: 90–365 days

Fail: over 365 days (treat as dormant list; see playbook)

How to test: ESP reports

Thresholds and failure meaning

Pass: below 1%

Warning: 1–2%

Fail: above 2%

How to test: Verification scan of the full list

Thresholds and failure meaning

Pass: below 3%

Warning: 3–10%

Fail: above 10%

How to test: Unsubscribes, complaints and bounces from every system (current ESP, old ESP, CRM, support tool) merged into one suppression list

Thresholds and failure meaning

Pass: yes, documented

Warning: partial

Fail: no

How to test: Written window, flow and disposition (suppress, not delete)

Thresholds and failure meaning

Pass: exists and runs

Warning: exists, not enforced

Fail: none

How to test: Platform rule known and applied (Mailchimp archives unsubscribed; HubSpot non-marketing; Klaviyo suppression; beehiiv inactive)

Thresholds and failure meaning

Pass: applied

Warning: known, not applied

Fail: unknown

How to test: Same address in multiple audiences or brands with different consent states

Thresholds and failure meaning

Pass: none

Warning: some, tracked

Fail: unknown

How to test: Scan results

Thresholds and failure meaning

Pass: removed

Warning: present, suppressed

Fail: present, mailed

Section 2: Consent and compliance (8 checks) · 0 fails

How to test: Field exists and is populated

Thresholds and failure meaning

Pass: over 95%

Warning: 80–95%

Fail: below 80%

How to test: Field exists

Thresholds and failure meaning

Pass: over 95%

Warning: 80–95%

Fail: below 80%

How to test: Source audit

Thresholds and failure meaning

Pass: none

Warning: identified and held

Fail: mailed

How to test: Test unsubscribe; check time to suppression

Thresholds and failure meaning

Pass: within 48 hours (Google and Yahoo expect two days; CAN-SPAM allows 10 business days)

Warning: 2–10 business days

Fail: over 10 business days

How to test: Template review

Thresholds and failure meaning

Pass: yes

Warning: missing on some

Fail: missing

How to test: Test

Thresholds and failure meaning

Pass: yes

Warning: login required

Fail: none

How to test: Consent basis for EU/UK contacts; GPC and opt-out handling for US state residents (20 states with comprehensive laws as of Aug 2026)

Thresholds and failure meaning

Pass: documented

Warning: partial

Fail: none

How to test: Promotional content never sent on transactional templates without unsubscribe

Thresholds and failure meaning

Pass: yes

Warning: occasional

Fail: mixed

Section 3: Authentication and sender requirements (9 checks) · 0 fails

How to test: Gmail "Show original" for a test from each system

Thresholds and failure meaning

Pass: all pass

Warning: one stream fails

Fail: main stream fails

How to test: same

Thresholds and failure meaning

Pass: all pass

Warning: one stream unsigned

Fail: main stream unsigned

How to test: DNS lookup

Thresholds and failure meaning

Pass: p=quarantine or reject with rua

Warning: p=none with rua

Fail: missing or no policy

How to test: headers show dmarc=pass

Thresholds and failure meaning

Pass: yes

Warning: relaxed only on some streams

Fail: no

How to test: ESP confirmation or DNS

Thresholds and failure meaning

Pass: yes

Warning: unknown

Fail: no

How to test: headers show List-Unsubscribe and List-Unsubscribe-Post

Thresholds and failure meaning

Pass: yes

Warning: missing on automations

Fail: missing

How to test: Do you send ~5,000+/day to personal Gmail (subdomains combined)?

Thresholds and failure meaning

Pass: known and compliant

Warning: unknown

Fail: bulk and non-compliant

How to test: daily values

Thresholds and failure meaning

Pass: all days below 0.10%

Warning: any day 0.10–0.29%

Fail: any day at or above 0.30%

How to test: dashboards

Thresholds and failure meaning

Pass: all green, all registered

Warning: registered, one issue

Fail: not registered

Section 4: Sending practice (7 checks) · 0 fails

How to test: Day-to-day variance over 30 days

Thresholds and failure meaning

Pass: steady

Warning: spikes over 2×

Fail: sends after gaps of 60+ days

How to test: Regular sends exclude the unengaged tier

Thresholds and failure meaning

Pass: yes

Warning: partial

Fail: full-list sends

How to test: Daily cohorts with stop conditions

Thresholds and failure meaning

Pass: yes

Warning: batches without stop conditions

Fail: single sends

How to test: Document exists

Thresholds and failure meaning

Pass: yes

Warning: informal

Fail: none

How to test: Routine

Thresholds and failure meaning

Pass: weekly, daily during streams

Warning: monthly

Fail: never

How to test: Bounce logs

Thresholds and failure meaning

Pass: yes

Warning: sometimes

Fail: never

How to test: Setup

Thresholds and failure meaning

Pass: yes

Warning: mixed, low volume

Fail: mixed, high volume

Section 5: Automation and measurement (7 checks) · 0 fails

How to test: Test signup

Thresholds and failure meaning

Pass: yes

Warning: hours

Fail: none

How to test: Automation review

Thresholds and failure meaning

Pass: yes

Warning: exists, no disposition

Fail: none

How to test: Logic review

Thresholds and failure meaning

Pass: yes

Warning: partial

Fail: no

How to test: Clicks, CTOR, orders, revenue; opens treated as directional

Thresholds and failure meaning

Pass: yes

Warning: opens primary

Fail: opens only

How to test: Frozen cohort with baseline

Thresholds and failure meaning

Pass: yes

Warning: ad hoc

Fail: none

How to test: Attributed vs incremental distinguished

Thresholds and failure meaning

Pass: yes

Warning: attributed only

Fail: none

How to test: Calculator or equivalent

Thresholds and failure meaning

Pass: yes

Warning: rough

Fail: never

Section 6: Content and template hygiene (7 checks) · 0 fails

How to test: Template review

Thresholds and failure meaning

Pass: yes

Warning: small or hidden

Fail: missing

How to test: Review

Thresholds and failure meaning

Pass: yes

Warning: occasional

Fail: routine

How to test: Review

Thresholds and failure meaning

Pass: yes

Warning: varies

Fail: personal-name tricks

How to test: Headers and links

Thresholds and failure meaning

Pass: yes

Warning: shared tracking domain

Fail: shorteners

How to test: Render test

Thresholds and failure meaning

Pass: fine

Warning: heavy

Fail: broken

How to test: Process

Thresholds and failure meaning

Pass: yes

Warning: informal

Fail: none

How to test: Implementation

Thresholds and failure meaning

Pass: yes or n/a

Warning: planned

Fail: n/a ignored

Section 7: Your plan from failed checks

Mark failed checks to build your plan. An unreviewed check is not a pass.

FAQ

Is the template really free? Yes, CSV and PDF, no email address required. It is the same checklist used as the intake for our paid audit.

How long does the audit take? Three to four hours for a single-ESP program with Postmaster, SNDS and Yahoo CFL access; longer when several sending systems or brands are involved.

What access do I need? Read access to the ESP's reports and audience, DNS lookups for the sending domains, Postmaster Tools, SNDS and Yahoo's Complaint Feedback Loop, and a Gmail test mailbox for headers.

What counts as a pass on spam rate? Every day in the last 30 below 0.10% in Postmaster Tools. Any day at or above 0.30% is a fail and starts the six-week recovery plan.

Can an agency use this for clients? Yes; it is designed for that. Run it as the entry offer, present Section 7 as the plan, and deliver the fixes or hand them to a backend partner.

What is the difference between this template and the Data & Deliverability Audit? The template is self-serve. The audit runs the same checks with our scanning and cohort tooling on your data and returns a prioritized remediation plan with the dormant-revenue estimate.

Want the checks run on your data rather than by hand? The Data & Deliverability Audit covers all six sections with the scan and the cohort tooling, and returns the plan. Request the audit →

Sources

Cite this page

Email Marketing Audit Template (Free): List Health, Deliverability, Automation and Consent in 48 Checks. Artem Kukharenko. EngageMKTG. 2026-11-02. https://engagemktg.com/knowledge/email-audit-template