Daily Mailshake performance briefing in Slack
Get an AI-written summary of yesterday's Mailshake sends, opens, replies, and new leads in Slack every weekday at 8am, with a rolling trend log in Google Sheets.
Every weekday at 8am in my local time, run an agent that produces a performance briefing for my Mailshake cold outreach and logs the numbers so I can watch trends over time. Trigger: cron, Monday through Friday at 8am.
What the agent should do on each run:
1. Call Mailshake List Campaigns and keep the ones that are currently active (skip paused, drafted, and archived campaigns).
2. For each active campaign, pull the last 24 hours of activity by calling Mailshake List Opens Activity, List Clicks Activity, List Replies Activity, and List Created-Leads Activity, filtered to that campaign and to the 24-hour window ending at run time. Use pagination if needed.
3. Compute per-campaign totals for sends, opens, clicks, replies, and new leads over that 24-hour window. Also compute reply rate. From the replies activity, separate hard bounces and unsubscribe signals so they can be called out.
4. Compare each campaign's 24-hour reply rate to its trailing average from the same activity endpoints over a longer look-back (7 to 14 days). Flag any campaign whose reply rate dropped meaningfully versus that trailing average, and any campaign whose bounce or unsubscribe volume looks unusually high.
5. Write a scannable briefing. Structure it as: a headline number at the top (for example, total replies and total new leads in the last 24 hours across all campaigns), then a short per-campaign bullet list with sends, opens, clicks, replies, new leads, and a one-line status, then a call-outs section for top-performing subject lines and any bounce or unsubscribe spikes, then 2 or 3 concrete recommended next actions at the bottom (things like pause a stalled campaign, double down on a winner, refresh copy on a fatigued sequence).
6. Post the briefing to a Slack channel using Slack Send a Message. Keep it plain text with light formatting so it stays readable in Slack. I will tell you which channel.
7. Append a dated row of the per-campaign metrics to a Google Sheets tab using Google Sheets Append Values, so historical performance is tracked over time. Columns should include date, campaign name, sends, opens, clicks, replies, reply rate, new leads, bounces, and unsubscribes. I will tell you which spreadsheet and tab to append to.
Integrations required: Mailshake (List Campaigns; List Opens Activity; List Clicks Activity; List Replies Activity; List Created-Leads Activity), Slack (Send a Message), and Google Sheets (Append Values).
Please ask me for the Slack channel, the Google Sheet ID and tab name, and my time zone before you finish building.
Additional information
What does this prompt do?
- Every weekday at 8am, pulls the last 24 hours of activity from your active Mailshake campaigns and writes a scannable performance briefing.
- Posts the briefing to a Slack channel with a headline number, per-campaign bullets for sends, opens, clicks, replies, and new leads, and 2 to 3 recommended next actions.
- Flags campaigns whose reply rate has dropped versus their trailing average, calls out top-performing subject lines, and highlights any bounce or unsubscribe spikes.
- Appends a dated row of per-campaign metrics to a Google Sheets tab so your team can track outreach performance over time.
What do I need to use this?
- A Mailshake account with an API key for a team that has active campaigns.
- A Slack workspace and a channel where the briefing should be posted.
- A Google account with access to the spreadsheet you want to log daily metrics to.
How can I customize it?
- Change the schedule to a different time of day, a different time zone, or every day instead of weekdays only.
- Swap the Slack channel, post to a private channel, or route the briefing as a direct message to a sales lead.
- Adjust what earns a callout: reply rate thresholds, bounce spikes, or which campaigns count as active.
Frequently asked questions
Do I need to open Mailshake to see this report?
What if I run only one or two campaigns?
Can it post to more than one Slack channel?
How is historical performance tracked?
Can I get alerted mid-day if a campaign spikes?
Related templates
Stop opening Mailshake every morning to check yesterday's numbers.
Connect Mailshake, Slack, and Google Sheets once, and Geni delivers a written performance briefing to your team every weekday at 8am.