Skip to content

Daily

Get a recap two days after each campaign

Two days after each send, you see how the campaign compares with your average and a note on what worked.

Runs
Daily
Apps
Mailchimp
AI
Yes, uses the built-in AI allowance
Access
read

Send this to your assistant

Create a ClickRuntime automation: 48 hours after each Mailchimp campaign is sent, email me its open and click rates compared with my average, plus a short note on what worked and what didn't.

Paste it into your assistant. It tells you what it will send or change before it runs live.

First time? Adding ClickRuntime to your assistant takes about two minutes.

Why use it

Why teams use this automation

A newsletter goes out on Tuesday, and by Thursday most of the opens and clicks that will ever arrive are already in. Yet a small marketing team is usually busy building the next campaign, so nobody opens the Mailchimp report, compares it to previous sends and writes down what the numbers say. Weeks later the open rate has slipped and no one can say which subject line style started it.

Two days after each campaign is sent, this pulls its report and click details from Mailchimp, compares open rate, click rate and unsubscribes with the averages it has stored from earlier sends, and has ClickRuntime's built-in AI write a short plain-language note on what stood out. The note is emailed to you, and the stored averages are updated.

It suits solo marketers, founders who run their own newsletter and agencies that report to several clients.

What you get out of it

  • Results read while they still matter

    By day two the bulk of engagement is in, so the note reaches you while the next draft is still open. You can change a subject line or send time before repeating a mistake, instead of discovering it a month later.

  • Every send judged against your own baseline

    A 24 percent open rate means nothing alone. Comparing it with your stored averages shows whether the campaign beat your usual result, which is the question a client or boss actually asks.

  • Click details explain the number

    The note draws on which links were clicked, not just totals. You see that the pricing link got the traffic while the blog link was ignored, which tells you what to put first next time.

  • No report skipped during busy weeks

    Because the recap is triggered by the send date, a launch week or a vacation does not leave a gap. Every campaign gets looked at, so trends are never based on only the ones you remembered.

  • A running record of what worked

    Each recap lands in your inbox with the date and campaign name. Searching it later gives you a history of results to justify a change in strategy or to brief a new hire.

How it works

What happens, step by step

  1. Every day, ClickRuntime looks for Mailchimp campaigns that were sent two days ago.

  2. It fetches each one's opens and clicks, including which links were clicked, and compares them with your usual averages.

  3. AI writes a short note on what worked and what did not.

  4. You get an email with the numbers, your averages and the note.

Before it runs live

  • Connect Mailchimp

What you get

RunsDaily
Get a recap two days after each campaigntoday, 9:00Succeeded
Email · Campaign recapOpen 44.1% (avg 38.0%), click 2.1% (avg 3.4%) The subject line worked; the single CTA at the bottom got few clicks.

Build your own

Need it to work differently?

This template is a starting point. Copy the prompt and change it, or describe a different automation from scratch, with your own conditions, more apps or an AI step. Your assistant writes it, tests it and runs it on ClickRuntime.
  • Your own rules

    Conditions, thresholds, filters and exceptions, written the way you'd explain them to a colleague.

  • Any number of apps

    One automation can read from one app and update several others. Over 248 apps are ready, and anything with an API works too.

  • AI where it helps

    Summaries, classification, extraction and drafts use ClickRuntime's built-in AI, with no extra key.

  • On a schedule or on each event

    Runs as often as every 5 minutes, or the moment an app sends an event, and keeps track of what it already handled.

Changes you can ask for

  • Run it at a different time, more or less often, or only on weekdays
  • Change what the AI looks for, or how it writes the result
  • Add another app, for example also send it to Slack
  • Combine it with other Mailchimp steps into one automation

Under the hood

The code that runs this automation

This is the Python script that runs each time the automation starts. Your AI assistant writes it for you when you send the prompt, and you allow each step in your assistant. To change how the automation works, describe the change to your assistant and it updates the script for you. For every function it can use, see the script reference.
campaign_sent_recap_with_ai.pyexample
from datetime import datetime, timedelta, timezone
from clickruntime import on_trigger, http, credentials, ai, notify, state

def mailchimp(method, path, **kw):
    key = credentials.secret("MAILCHIMP_API_KEY")
    r = http.request(method, f"https://{key.split('-')[-1]}.api.mailchimp.com/3.0{path}", auth=("clickruntime", key), **kw)
    r.raise_for_status()
    return r.json() if r.content else None

@on_trigger
def run(event):
    now = datetime.now(timezone.utc)
    done = set(state.get("recapped") or [])
    sent = mailchimp("GET", "/campaigns", params={"status": "sent", "count": 50, "sort_field": "send_time", "sort_dir": "DESC"})["campaigns"]
    reports = {c["id"]: mailchimp("GET", f"/reports/{c['id']}") for c in sent}
    avg_open = sum(r["opens"]["open_rate"] for r in reports.values()) / max(len(reports), 1)
    avg_click = sum(r["clicks"]["click_rate"] for r in reports.values()) / max(len(reports), 1)
    for c in sent:
        age = now - datetime.fromisoformat(c["send_time"].replace("Z", "+00:00"))
        if c["id"] in done or age < timedelta(hours=48):
            continue
        r = reports[c["id"]]
        links = mailchimp("GET", f"/reports/{c['id']}/click-details", params={"count": 5})["urls_clicked"]
        facts = (f"Subject: {c['settings']['subject_line']}\nOpen {r['opens']['open_rate']:.1%} (avg {avg_open:.1%}), "
                 f"click {r['clicks']['click_rate']:.1%} (avg {avg_click:.1%})\nTop links: {[l['url'] for l in links]}")
        note = ai.generate(f"In 3 sentences, what worked and what didn't:\n{facts}", max_output_tokens=200).text
        notify.email_me(f"Recap: {c['settings']['subject_line']}", f"{facts}\n\n{note}")
        done.add(c["id"])
    state.set("recapped", list(done)[-200:])
    return {"recapped": len(done)}

FAQ

Common questions

What does the recap say about a campaign with very few recipients?
It still reports the figures Mailchimp returns, but small audiences swing widely, so one extra click can move a percentage a lot. The comparison with your stored averages helps you see whether a gap is real or just a small list effect.
Does it only look at campaigns sent exactly 48 hours ago?
It checks once a day for campaigns that went out about two days earlier, so each campaign is covered once. If you send several in a day, each one gets its own note, and campaigns that were scheduled but not yet sent are ignored.
Do I need a paid Mailchimp plan to use this?
Campaign reports are available through the Mailchimp API for the campaigns you send, so what you need is an API key for your account. Some advanced report fields depend on your Mailchimp plan, and any that are missing are simply left out of the note.
What permissions does it need?
read. Nothing else in your accounts is used.
Does it need AI?
Yes. It uses ClickRuntime's built-in AI, so you don't need an OpenAI or Anthropic key. Every plan includes a monthly AI allowance.
How many runs does it use?
One run each time it runs (daily). Checks that find nothing to do and stop right away aren't counted.
Can I change how it works?
Yes. Describe the change to your AI assistant, for example a different schedule, channel or filter. It updates the automation, tests it and tells you what changed.

Set up “Get a recap two days after each campaign” from your assistant

Copy the prompt above, or connect your assistant first. Free plan, no credit card.