Gmail Snooze Without MailboxApp

MailboxApp generated a fair bit of noise in the tech press when it hit the App Store in February due to it's gesture based interface, controversial reservation system, and novel approach to email that treated messages like to-do list items that could be completed or "snoozed" until you're ready to deal with them. My interest piqued, I joined the reservation queue with more than 500,000 others, and waited a couple of weeks for my ticket to come up. When it finally did, I had a quick play with the app, but since I process most of my mail on the desktop, it wasn't a great fit, and it's now languishing on some distant springboard screen, whilst Mail and the Gmail App battle it out for a coveted spot in my dock.

Then a week or so ago, I happened upon a blog post that showed how to use a simple Google Apps Script to snooze Gmail messages for a few days. This immediately reminded me of MailboxApp and got me thinking about how I might use a "snooze" function when processing mail. I already use the heck out of reminders and calendar entries, so having a convenient way to get emails to re-appear on a specific date or time sounded fantastic - it would allow me to clear my inbox regularly during the day, rather than keeping old emails in the bottom of my inbox, and risk getting accidentally archived.

Assuming that there were probably other people who would like to snooze (Desktop Gmailers or members of the tinfoil-hat-wearing-brigade not wanting to hand over control of their email to a 3rd party) , I hacked together Gmail Snooze v1.0. My aim was to make it as simple to implement and use as possible: I did consider publishing it as a web app, but I felt it was important that the script be visible so that people could see what was happening to their Gmail.

Start Me Up

So how do you start snoozing? First up, you'll need either authorise the script, or create your own copy and authorise that. I'd recommend the latter option for 3 reasons:

  1. You can edit any of the configuration options (should you choose to).
  2. I don't break your version of the script if I ever decide to make any changes.
  3. You can take comfort in the fact that I can't change your copy to do something nefarious after you start using it.

Once you have your own copy (File->Make a Copy...), and have edited any of the settings that you disagree with, then select Run->Setup from the menu, and you should see 2 pages that ask you to authorise the script:

script authorisation 1
script authorisation 2

Once you see the "Authorised Status" page, select Run->Setup again to actually run the setup script - this will create all the necessary labels, and schedule the script to run every minute.

At this point you're actually ready to start "snoozing", but to make it a more pleasurable experience when using Gmail in a browser, you may want to enable keyboard shortcuts in the Gmail settings - this will allow you to press "v" when selecting/viewing an email and it will pop-up the "Move To" dialogue.

keyboard shortcuts

Ready To Go

Now you've jumped through all the necessary hoops, you are ready to become a first rate snoozer. The concept is simple - move your messages into the required label.

Then sleep safely in the knowledge that the message will return to your inbox on the requested day or time, unread, and labelled "* Unsnoozed" (so that you know where it came from).

Maybe Tomorrow I'll Want To Carry On

This one is pretty straight forward - move your message into "* Snooze/0 - Tomorrow", and the message will re-appear in your inbox at midnight, ready for you to deal with tomorrow.

Sunday, Monday, Happy Days

You can snooze your message until the next occurrence of any day of the week. e.g. Move a message to "* Snooze/6 - Saturday" if you need to be reminded to do something at the weekend.

Time After Time

If you want a more fine grained, short term snooze, you can procrastinate until a specific time in the next 24 hours. There are some predefined times added during setup, but you can also create your own in (24 Hour) hhmm format.


Have A Nice Day

If you need to snooze for longer than a week, or you just want to enter a date rather than a day of the week, then you can specify a label in either ddmmyy or mmddyy format and the email will reappear shortly after midnight on that day.

You can create new sub-labels for dates in the same way as you can for time labels.

Don't Get Me Wrong

If you happen to create a new label that is never going to be unsnoozed (e.g. "* Snooze/Bob") and move an email into it, then it won't get lost - it will simply be returned to your inbox with a label of "Snooze Error!" thus letting you know that you messed up, and to be more careful next time.


I've been using the script for a few days now, and I love it - it's totally changed the way I process email, and I like nothing more than looking at an empty inbox. Whilst on iOS it's not as slick or easy to use as MailboxApp, in a desktop browser an email is only about 5 keystrokes ("v", 3 letters of the label you're after, and Enter) away from being temporarily put out of sight and out of mind.

If you found this post informative, enlightening, entertaining, or it's just helped you solve a problem then please feel free to shout me a coffee for my trouble from extensive menu below:
Today's Menu