Daily
Get a morning list of new subscribers
Each morning you see who joined your list in the last day, with names and sign-up source.
- Runs
- Daily
- Apps
- Mailchimp
- AI
- Not needed
- Access
- read
Send this to your assistant
Create a ClickRuntime automation: every morning at 8am, email me the Mailchimp subscribers who joined in the last 24 hours with their names and signup source.
First time? Adding ClickRuntime to your assistant takes about two minutes.
Why use it
Why teams use this automation
If you run a Mailchimp list tied to a lead magnet, a webinar or a store, the number of people who joined yesterday is the first sign of whether your latest post or ad worked. But finding it means logging in, opening the audience, sorting by signup date and counting by hand, which most people do on Monday and then forget until the next month.
Each morning, ClickRuntime asks Mailchimp for members whose opt-in timestamp falls in the last 24 hours, counts them, builds a list with their names and emails, and sends you that digest. It also stores the daily count as a counter, so the trend over the past days can be compared at a glance.
It works well for a founder who wants one email to start the day and for sales teams who follow up with new leads by name.
What you get out of it
Yesterday's growth is in your inbox before coffee
You see how many people joined and who they are without opening Mailchimp. If a campaign brought in 80 people overnight, you know in the morning while there is still time to follow up.
Cause and effect become visible
Because the count arrives every day, a spike lines up with the post, ad or podcast mention that caused it. After a month you know which activities actually bring subscribers and which only feel productive.
Quiet days are noticed too
A day with zero signups is information as well. If a broken form or an expired popup stops new contacts, the digest shows a count of 0 the next morning instead of weeks later.
Names for a personal first touch
The list includes each new member, so someone on the team can send a personal welcome or note a high-value domain. A real greeting within hours converts better than waiting for the generic automated one.
A stored trend without a spreadsheet
The daily count is kept as a counter, so you can compare this week with last without exporting anything. It replaces the manual tracking sheet that is always three weeks out of date.
How it works
What happens, step by step
Every morning, ClickRuntime checks your Mailchimp audience for people who subscribed in the last 24 hours.
It counts them and lists each name, email and how they signed up.
You get one email with the list, and the daily count is kept so you can see the trend.
Before it runs live
- Connect Mailchimp
What you get
Build your own
Need it to work differently?
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
- Add an AI step, for example to summarize, sort or draft a reply
- 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
from datetime import datetime, timedelta, timezone
from clickruntime import on_trigger, http, credentials, notify
LIST_ID = "AUDIENCE_ID"
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):
since = (datetime.now(timezone.utc) - timedelta(hours=24)).isoformat()
members = mailchimp("GET", f"/lists/{LIST_ID}/members", params={
"status": "subscribed", "since_timestamp_opt": since, "count": 1000,
"fields": "members.email_address,members.merge_fields,members.source"})["members"]
lines = [f"{m['merge_fields'].get('FNAME', '')} {m['merge_fields'].get('LNAME', '')} <{m['email_address']}> via {m['source']}"
for m in members]
notify.email_me(f"{len(members)} new subscribers", "\n".join(lines) or "No new subscribers yesterday.")
return {"new": len(members)}FAQ
Common questions
Does it include people who were added by import?
Will unsubscribed or cleaned contacts show up?
Can the digest cover more than one audience?
What permissions does it need?
Does it need AI?
How many runs does it use?
Can I change how it works?
Related
You might also like
Get a weekly Mailchimp campaign report
Each Monday you see open rate, click rate and unsubscribes for every campaign sent the week before.
See how it worksPost your daily audience numbers to Slack
Each morning Slack shows your audience size and how many people joined and left since yesterday.
See how it worksClean out subscribers who stopped opening
Once a month you get the people with no opens in six months, and they are archived only after you approve.
See how it worksKeep exploring
Set up “Get a morning list of new subscribers” from your assistant
Copy the prompt above, or connect your assistant first. Free plan, no credit card.