Schedule a text message on iPhone, iPad, and Mac
The 2022 operating system updates from Apple will bring a much needed improvement to Mail.app: the ability to schedule messages to send later. As with many such improvements — especially when it comes to Mail.app — Apple isn’t bringing to bear some net new innovation here, it’s catching up with the competition.
TL;DR I wish Apple would add support for “scheduled send” in Messages.app. Until then, I have developed a relatively simple workaround thanks to Apple’s Shortcuts app. The solution actually involves two shortcuts: Schedule a Message and Send My Scheduled Messages. The best part is that there are only two dependencies: Shortcuts.app and Reminders.app!
Keep reading to learn more…
I don’t think Google was the first to introduce scheduled send when it brought the feature to Gmail in 2019, but that’s when I started experimenting with time shifting email. Within a few short weeks, scheduling emails to send later had become a new WFH super power. Life often gets in the way of work, and whenever I can afford to I always try to practice a healthy life/work balance1, which occassionally means stopping work and finishing it later. When that happens and I find myself working outside of “normal business hours”, asynchronous communication becomes critical, enabling me to correspond with my colleagues without interrupting their time away from work. Scheduled send to the rescue! Simply “send later” so that your emails arrive the next morning. As an added benefit, using “send later” facilitates good email hygiene and can result in emails that are read and responded more promptly.
The problem is, as soon as you get used to “send later” super powers for email, you start to want them in other messaging apps. So while Apple bringing scheduled send to Mail.app is a welcome improvement, it only increases my desire to see Apple add a “send later” feature to Messages.app. Even here, Apple would only be catching up with the competition.
Google Messages has supported “scheduled send” on Android devices since early 20212. When will Apple follow suit? Only time will tell.
Thankfully, there is a workaround to scheduling messages using Apple’s Shortcuts app — with no third-party apps required!
Schedule a text message on iPhone ¶
Before I get into my solution, I want to call out that there are many workarounds available for scheduling iMessages to send later on the iPhone, iPad, and Mac. If you Google for “schedule a text message on an iPhone” or similar, you’ll find dozens of articles that more or less promote one of two approaches:
- Use the Shortcuts app to create a personal automation
- Download a third-party app
I’m sure these work just fine, but they weren’t what I was looking for. I need a reusable solution for ad hoc messages, and as far as I understand the personal automation workflow is better suited for a one-time message, or sending the same message on repeat (e.g. “text mom every week on Monday”). I also wanted a solution that didn’t require third-party apps, because #privacy.
The Solution ¶
After weeks of trial and error, I finally landed on a solution that has been working well for me for the last several months. There are three main components:
-
A “Schedule a Message” shortcut that saves messages as reminders in Reminders.app
-
Reminders.app notifications that provide prompts to send schedule messages
-
A “Send My Scheduled Messages” shortcut that sends the message(s)
Here’s what it looks like in practice:
Sheesh, that’s handy!
How it Works ¶
If you’re familiar with Shortcuts.app, you can install “Schedule a Message” and “Send My Scheduled Messages” to see all ~25 steps in the combined shortcuts. At a high level, the workflow is pretty simple:
-
The “Schedule a Message” shortcut prompts for three inputs: a contact to send a message to, the date and time to send the message, and the message content itself.
-
The “Schedule a Message” shortcut then enqueues messages in a dedicated list in Reminders.app.
-
The resulting reminder has its
Title
,Notes
,URL
,Date
, andTime
fields populated as follows:- Title: a description of the reminder (e.g. “Scheduled message for Brooke”)
- Notes: the actual message
- URL: the recipient’s phone number in
sms://<phonenumber>
format - Date: the specified date to send the message
- Time: the specified time to send the message
-
Reminders.app will generate a notification at the specified date & time. I will generally respond by asking Siri to “Send My Scheduled Messages”, prompting the second shortcut to be executed.
-
The “Send My Scheduled Messages” shortcut fetches up to 10 messages from the configured Reminders.app list (in my case, the “Scheduled Messages” list) and prompts the user to send any message that is past due or due in the next 60 minutes3.
Once I figured out that I could use Reminders.app as a sort of built-in database, everything fell into place. Storing scheduled messages as reminders also had the added bonus of providing me with notifications that I could process by barking a command at Siri: “Hey Siri, send my scheduled messages!”
Reminders.app also provides an editable queue. Sometimes I will schedule several messages at once and then change my mind or realize I need to modify one of the messages – no problem! Just open my “Scheduled Messages” list in Reminders.app and edit away!
Summary & Next Steps ¶
I probably use this “send later” Workflow4 at least a dozen times per week. I’m a night owl, so I use it the most in the late evening when I want to text someone about something, but I don’t want to bother them so late at night. Instead of waiting forgetting to text them in the morning, I schedule a message! This solution has helped me improve my communication with family and friends who I keep in touch with via Messages.app – and it works equally well with blue and green bubbles. 😊
As for what’s next, it occurs to me that there are several potential improvements that could be made while we wait for Apple to obviate the need for such workarounds. For one, the “Send My Scheduled Messages” shortcut doesn’t need to prompt for confirmation – it could just send the message. The “Send My Scheduled Messages” shortcut could also be run from an hourly Shortcuts Automation, so scheduled messages are automatically sent without the need to bark at Siri. Finally, someone who’s more experienced than me with Shortcuts.app could probably improve the “Schedule a Message” shortcut; I generally launch that shortcut from a widget and just fill in the prompts so I’m not sure how well it works with Siri.
So what do you think? Was this helpful? I hope you’ll give my shortcuts a try and/or take some inspiration from my workflow to develop your own. If you do, please drop me a line at [email protected] or mention @calebhailey on Mastodon.
Update #1 (April 19, 2023) ¶
It’s hard to believe that I’ve been using this automation for over a year now! I know that because I had been using an early version of these shortcuts back when MacStories launched the inaugural Automation April event last year, and we’re now one day away from the close of the second annual (🤞🏽) Automation April event. In fact, the inaugural Automation April event was part of my motivation for starting this blog (!), but I didn’t finish it in time to enter the contest last year.
I’m happy to report that even after a full year of weekly use, I haven’t had to make many changes to the Shortcut. But there have been a few. Install the latest versions here and see below for a list of changes.
Schedule a Message (v0.2)(use v0.3, below)Send My Scheduled Messages (v0.2)(use v0.3, below)CHANGELOG (“Schedule a Message”):
- It is now no longer necessary to create a dedicated Reminders list for Scheduled Messages; the Shortcut now uses a
ScheduledMessages
tag instead of a dedicated list.- The Shortcut now saves tagged reminders in the default
Reminders
list.- Removed the “Reminders list” import question so users don’t have to configure the Shortcut to create Reminders in a specific list.
CHANGELOG (“Send My Scheduled Messages”):
- The “Find Reminders” action now looks for Reminders tagged with
ScheduledMessages
in “All Reminders” instead of Reminders in a user-configured list.- Removed the “Reminders list” import question so users don’t have to configure the Shortcut to look for Reminders in a specific list.
That’s it! Just a few small tweaks to make things more portable.
Update #2 (April 26, 2023) ¶
I just discovered & fixed a bug in the “Send My Scheduled Messages” shortcut. 🤦🏽♂️ When I updated the Shortcut to use the
ScheduledMessages
tag instead of a dedicated list, I forgot to re-implement the “Is Not Completed” filter, so if you didn’t have some other automation that deletes completed Reminders (as I do), it would prompt you to resend previously scheduled + sent messages. Oops! The good news is, it’s fixed now and working even better than ever.CHANGELOG (“Send My Scheduled Messages”):
- The “Find Reminders” action now looks for Reminders tagged with
ScheduledMessages
in “All Reminders” instead of Reminders in a user-configured list.- Updated the Repeat with Each loop to use named variables for improved readability.
CHANGELOG (“Schedule a Message”):
- No changes (just updated to version 0.3 to keep versions in sync)
All links in this blog post have been updated to use the latest shortcuts.
-
One of my greatest pet peeves in life is the so-called “work/life balance”. If your company culture is so great at keeping work in its proper place, why can’t you even say “life” before “work”? The words are free! ↩︎
-
It’s hard to nail down an exact release date for these things since Google has the annoying habit of gradually rolling new features out, with little to no ability for power users to opt-in to updates. It’s one of the many reasons why I’m no longer on Android, after being an
advocatefanboy for so many years. ↩︎ -
Sometimes I remember that I had queued up a message before I get the actual reminder, so I tweaked the Shortcut to prompt me for messages that I had scheduled for the next hour. In most cases the precise timing of messages I queue up to send later isn’t as critical as remembering to send the message. ↩︎
-
Capital “W” Workflow as in the original app developed by DeskConnect that Apple acquired and turned into Shortcuts.app. What a great name that was! ↩︎