Weekly
Get last week's Omnisend campaigns in one email
Each Monday you get a summary of the campaigns sent the week before.
- Runs
- Weekly
- Apps
- Omnisend
- AI
- Not needed
- Access
- read (campaigns)
Send this to your assistant
Create a ClickRuntime automation: every Monday at 9am, email me a summary of the Omnisend campaigns sent last week with the results Omnisend reports for each.
First time? Adding ClickRuntime to your assistant takes about two minutes.
Why use it
Why teams use this automation
A marketing manager sends two or three Omnisend campaigns a week: a Tuesday newsletter, a product launch, a Friday flash sale. Results sit across separate campaign report screens, so leadership gets an answer to how did email do this week only when someone has time to open each one and copy numbers into a slide. Open rates, clicks and revenue vary, and trends across weeks are invisible when each report is viewed alone.
Each week, the campaigns sent in the previous seven days are listed from Omnisend, and the stats for each (sent, delivered, opened, clicked, unsubscribed, and revenue attributed where your store is connected) are put into a single email table you can forward as-is.
It's useful for ecommerce teams, agencies reporting to clients, and owners who want a Monday glance at email performance.
What you get out of it
One table for the whole week
Putting every campaign side by side shows which subject line, send time or offer performed best, which individual report pages make hard to compare. That comparison is hard to make when you flip between separate campaign pages.
Leadership updates take no effort
Because the email is already formatted as a summary, forwarding it to a boss or a client is the whole reporting job. A formatted summary also ensures that clients see the same figures every week.
Unsubscribes flagged next to sends
Seeing an unusual unsubscribe rate beside the campaign that caused it helps you fix frequency or targeting before list health suffers. Those numbers act as an early warning, long before a high unsubscribe rate affects delivery.
Weeks can be compared
With a history of Monday emails, you can compare Tuesday newsletters over a quarter and see whether open rates are creeping down. It is the easiest way to tell whether a decline is a one-off or a lasting trend in engagement.
Revenue tied to campaigns
Where Omnisend attributes orders to a campaign, the figure sits beside the opens and clicks, so the team talks about money instead of vanity metrics. That keeps weekly meetings focused on what drives sales.
How it works
What happens, step by step
Once a week, ClickRuntime gets your Omnisend campaigns.
It keeps only campaigns that were sent in the last 7 days.
You get one email listing each campaign with its send date and its numbers, such as sent, opened and clicked. If none were sent, the email says so.
Before it runs live
- Connect Omnisend
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 Omnisend steps into one automation
Under the hood
The code that runs this automation
from datetime import datetime, timedelta, timezone
from clickruntime import on_trigger, credentials, notify, http
@on_trigger
def run(event):
resp = http.get("https://api.omnisend.com/v3/campaigns",
headers={"X-API-KEY": credentials.secret("OMNISEND_API_KEY")}, params={"limit": 100})
resp.raise_for_status()
cutoff = (datetime.now(timezone.utc) - timedelta(days=7)).isoformat()
sent = [c for c in resp.json()["campaigns"] if c.get("status") == "sent" and (c.get("startDate") or "") >= cutoff]
lines = []
for c in sent:
stats = ", ".join(f"{k}: {v}" for k, v in (c.get("statistics") or {}).items())
lines.append(f"{c['name']} ({c['startDate'][:10]})\n {stats}")
notify.email_me("Omnisend campaigns, last week", "\n".join(lines) or "No campaigns sent last week.")
return {"campaigns": len(sent)}FAQ
Common questions
Which metrics are included for each campaign?
Are automation emails included, or only one-off campaigns?
When do the numbers settle?
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 morning email of yesterday's Omnisend sign-ups
Each morning you see how many contacts joined, who they are and how that compares with last week.
See how it worksPost new Omnisend contacts to Slack
Your team sees each new contact's email in Slack within minutes of them signing up.
See how it worksKnow the moment your website goes down
Your team hears in Slack when the site stops responding or slows down, and again when it's back.
See how it worksKeep exploring
Set up “Get last week's Omnisend campaigns in one email” from your assistant
Copy the prompt above, or connect your assistant first. Free plan, no credit card.
