Sunday nights in our house are chaos as it stands, but when we’re trying to keep track of birthday parties, dinner with friends, and family activities, it's nearly impossible without a calendar. We use Apple Calendars to track the various activities in our day-to-day lives. We can automate this with an Apple Shortcuts workflow that sends a weekly iMessage to keep us updated on what's going on.

What this Shortcut does: Every Sunday at 7pm, it reads your Apple Calendar, groups events by day, and sends a formatted iMessage to anyone you choose — no app, no subscription, no server. Setup takes about 10 minutes, and it runs automatically every week after that.

What You'll Need

  • iPhone with iOS 16 or later

  • Apple Shortcuts app (built-in — no download needed)

  • A few minutes to tap through the Shortcut builder

Building the Weekly Digest

This Shortcut runs every Sunday at 7 pm and sends a formatted iMessage with everything on the calendar for the coming week. Here's what the output looks like:

This week

[Tuesday, Mar 31]
9:00 AM – Golf Club

[Friday, Apr 3]
9:00 AM – Dinner Party

[Sunday, Apr 5]
All Day – Easter

Step 1 — Fetch the calendar events

Add a Find Calendar Events action. This is the only filter setup you need:

  • Start Date: is in the next 7 days

  • Sort by: Start Date, ascending

  • Order: Oldest First

  • Limit: Off

This will get us all the events in the next seven days from every calendar we've loaded into Apple Calendars. Without the ascending sort, we won't get the calendar date grouped correctly. If there is a calendar you want to exclude from this, we can do so in a future step.

One thing to note about the 'is in the next 7 days' filter is that, since we have this automation set to run on Sunday at 7pm, anything on the calendar for Sunday at 9 pm will also appear in this weekly briefing.

Step 2 — Set up the message variables

Before we loop through events, initialize two Text variables:

WeeklyMessage — starts empty. This is where the formatted digest gets built up line by line.

LastDay — also starts empty. This tracks which day you're currently on, so you know when to insert a new day header.

LastDay is a simple trick to avoid printing the same date header twice — without it, every event would print its own date, and the message would look cluttered.

Step 3 — Loop through events and build the message

Add a Repeat with Each action over the Calendar Events from Step 2. 

Group By Date:

  • Get the Start Date from Repeat Item

  • Format the Start Date so it's legible. Make sure you use the custom date format, and set the format string to "EEEE, MMM d". This gives you something like "Monday, Mar 30."

  • Log the formatted date to a variable called EventDay

  • Add an 'If' block to check to see if EventDay is not Lastday. Inside the 'If' block:

  • Add a Text action with a Return before the EventDay variable, press Return first in the text field, then insert the EventDay variable.

  • Add that Text to our WeeklyMessage variable.

  • Then set LastDay to EventDay. 

This groups all the dates together. The first time you hit Monday, the LastDay variable is empty, so you get the header, and it skips because LastDay is already set for Monday.

Handle all-day events separately:

  • Get the Start Date from the calendar events’ repeated item

  • Format that date and store it in a variable

  • Do a check to see if the Start Date is 12:00am

  • Get the Title of the event from the repeated item

  • Add a Text action with “All Day – Title.”

  • Then add the Text to the WeeklyMessage variable

Typically, Apple Calendar sets the start time for an all-day event at 12:00am, so if you have an event that starts at midnight (why would you?), it will get shown as all day.

Build the Messaging:

  • Get the calendar from the repeated item

  • Set a variable for the calendar name

  • Get the Title from the repeated item

  • Create a text action with EventTime – Event Title - EventCalendar

  • Add that Text to the WeeklyMessage variable

Step 4 – Handle the empty case

After the loop, add an ‘If’ block to check if the WeeklyMessage is empty. We set the WeeklyMessage variable to “No Events This Week”. Since we update the WeeklyMessage variable as we repeat through the calendar events, if the message is empty, that means we have nothing to do that week. We create and set a variable called FinalMessage to the text value.

Otherwise, we create a text action with the header “This Week” and the WeeklyMessage, and set its text value to FinalMessage.

Step 5 – Compose and send the message

Create a send message action, then add the FinalMessage variable to the input and our Recipients to the message.

Step 6 – Setting Up the Apple Shortcuts Automation

In the Apple Shortcuts app, you should see an Automation tab at the bottom, tap the + button, select Time of Day, and set it to run every Sunday at 7:00pm. Make sure that “Ask Before Running” is turned off; you don’t want to confirm the Shortcut should run; it should happen automatically.

This Apple Shortcuts weekly calendar automation lets us keep an eye on what’s going on in our lives, week by week. As parents, we already have too much to worry about, and remembering where to go and when to be there takes up a lot of our mental load.

Once this is running, Sunday nights get a little quieter. Instead of scrambling to remember what's happening this week, we get a tidy digest delivered automatically — no checking the calendar, no forgetting the dentist appointment, no "wait, is that this Friday?" moments. Set it up once, and it just runs. If you build this, reply and let me know — I'd love to hear how you've made it your own.

FAQ

Can I use this Shortcut with Google Calendar or Outlook?

Yes — as long as your Google Calendar or Outlook account is connected to the iPhone Calendar app, Apple Shortcuts can read those events. Go to Settings > Calendar > Accounts to check which calendars are synced.

Does the shortcut work on iPad?

Yes. Apple Shortcuts runs on iPad with iPadOS 16 or later. The automation setup is identical.

Can I send the weekly digest to a group iMessage thread?

Yes. In Step 5, add multiple recipients to the Send Message action. The digest will go to everyone in that thread.

What happens if I have no events that week?

The Shortcut handles this — if there are no calendar events in the next 7 days, it sends "No Events This Week" instead of a blank message.

Will this drain my battery or run in the background?

No. Apple Shortcuts automations run only at their scheduled time and complete in seconds. There is no persistent background process.

Keep Reading