This chapter covers the core features and capabilities of Newsletter Analytics.
Follow this guide to get Newsletter Analytics up and running in your environment.
# Import campaign data
python src/newsletter_analytics.py import --file examples/sample_campaigns.json
# Generate a report for all campaigns
python src/newsletter_analytics.py report
# Report for a specific campaign
python src/newsletter_analytics.py report --campaign "March Newsletter"
# Analyze subject lines
python src/newsletter_analytics.py subjects
# View engagement scores
python src/newsletter_analytics.py engagement
# View trends over the last 30 days
python src/newsletter_analytics.py trends --last 30The tool accepts JSON with flexible field mapping:
[
{
"campaign_name": "March Newsletter",
"sent_at": "2026-03-01T10:00:00Z",
"total_sent": 5000,
"opens": 1200,
"clicks": 150,
"bounces": 25,
"unsubscribes": 10,
"complaints": 1,
"subject": "What we shipped in February"
}
]Field mapping also supports Mailchimp (unique_opens, recipients.recipient_count), ConvertKit (open_rate, click_rate), and SendGrid (stats.opens, stats.clicks) formats.
Get the full Newsletter Analytics and unlock everything.
Get the complete guide with every chapter unlocked, including code samples, diagrams, and best practices.
Access all interactive tools with complete data, all workload profiles, and the full scenario library.
Downloadable source code, configuration files, and working examples from every chapter.
Free updates for life. Every new chapter, tool, and improvement included.