Skip to content

MailerLite Deliverability Monitoring Plan

Date: March 2026 Related docs:


Domains to Monitor

  • power.ixdf.org
  • power-for-members.ixdf.org
  • news.ixdf.org
  • news-for-members.ixdf.org

Thresholds

MetricTargetAction if exceeded
Bounce rate< 2%Pause next warm-up batch, clean list
Spam complaints< 0.3%Investigate immediately, pause if not resolved
Unsubscribe rate< 1%Review email content and frequency
Open rate≥ 15%Compare to legacy baseline, investigate if lower

Data Sources

1. MailerLite (primary — campaign and automation stats)

Available via MailerLite API and MCP server. Check after every campaign send and weekly for automations.

  • Campaigns: GET /api/campaigns/{id}stats object contains open_rate, click_rate, bounce_rate, unsubscribe_rate, spam_complaints_rate
  • Automations: MailerLite dashboard (automation-level stats are not fully exposed via API as of Feb 2026)
  • Subscribers: GET /api/subscribers with filters — track growth, bounced/unsubscribed counts per group

Filter by segment to compare new domains vs legacy interaction-design.org sends.

2. Google Postmaster Tools (domain reputation)

Register all 4 subdomains at Google Postmaster Tools. Requires DNS TXT verification per domain.

Provides (with 24-48h delay, requires ~100+ daily messages to Gmail):

  • Domain reputation: High / Medium / Low / Bad
  • Spam rate: percentage of emails marked as spam by Gmail users
  • IP reputation: reputation of sending IPs
  • Authentication: SPF/DKIM/DMARC pass rates
  • Encryption: TLS usage

Can be automated via Gmail Postmaster API (requires GCP project + OAuth).

3. Slack alerts

Use the Slack MCP server (or Slack API) to post threshold-breach alerts to the #mailerlite-migration channel (or similar).

Monitoring Cadence

PeriodFrequencyWhat to check
Week 1–2 (≤ 500 subscribers)After every sendMailerLite campaign stats, bounce/spam rates
Week 3–5 (500–5,000)DailyMailerLite stats + Google Postmaster (once data appears)
Week 6–7 (5,000–18,000)DailyAll sources; compare new vs legacy domain open rates
Post-migrationWeeklyGoogle Postmaster domain reputation, MailerLite campaign trend reports

Ad-hoc Monitoring via Claude Code

Use the MailerLite MCP tools to pull stats on demand:

  • list_campaigns → find recent campaigns
  • get_campaign → get stats for a specific campaign
  • list_automations → check automation status
  • get_subscriber_count → track group/segment growth
  • get_subscriber_activity → investigate individual delivery issues

Note: MCP is currently connected to the IxDF News account only. IxDF Power account stats must be checked via the MailerLite dashboard.

Future: Automated Monitoring (optional)

If manual checks become insufficient at higher volumes, build a Laravel Artisan command:

  1. Pull recent campaign stats from MailerLite API
  2. Compare bounce/spam/open rates against thresholds
  3. Pull domain reputation from Google Postmaster API (if configured)
  4. Post summary or alerts to Slack
  5. Schedule daily via app/Console/Kernel.php

Observations

2026-03-04 — First Sends from New Domains (IxDF News account)

New domain campaigns (from news.ixdf.org):

CampaignSentOpensOpen RateSpamUnsubsDate
Email 1: Announcement - Non-members - NEWS241041.7%00Mar 3
Nina testing (NEWS)22100%00Mar 3
Various test emails (NEWS)~10~10100%00Mar 2–3

Total from new domains: ~36 emails. All clean — 0 bounces, 0 spam complaints.

Legacy domain campaigns (from interaction-design.org) for baseline comparison:

CampaignSentOpensOpen RateSpamUnsubsDate
Announcement - Cancelled Members - LEGACY91,86233,28936.2%2689Mar 3
Announcement - Non-members - LEGACY181,86138,51421.2%0283Mar 3

New domain subscriber counts (segments):

SegmentSubscribersOpen Rate
🌲 News: Active Members9522.1%
🌲 News: Non-Members3430.2%
🌲 News: Canceled Members0

Notes:

  • Volume too low for Google Postmaster Tools data (need ~100+ daily emails to Gmail).
  • Week 1 warm-up batch (200 members) has not been migrated yet — the 95 active members in 🌲 News are organic new subscribers since v5 launch.
  • IxDF Power account stats not available via MCP — check dashboard separately.