Sync iCal To Dos With GMail on a Mac
Getting Things Done
All of you must be aware that over a period of time, I have tried hard to increase my productivity by following David Allen’s Getting Things Done methodology. Well And in that regard, several of my previous posts have focused on how I have managed to get my iCal tasks on my Desktop via GeekTool and how I have started to use OmniFocus in real earnest to manage my tasks and To Dos, including detailing my workflow process.
Moving to the Cloud
I have also moved my e-mail to GMail and have IMAP-ed everything that deals with it so as to make it easier to be able to access my data – emails included from just about anywhere (of course, there has to be an Internet connection).
My little secret – all this is in preparation for being able to access my data if and when I get a smartphone (the iPhone was on my wish list, but now its place has been taken over by the iPad).
The Frustrating Part
I sync my tasks from OmniFocus to my iCal so that I can use the beautiful iCalBuddy script to get GeekTool to show my tasks on my Desktop. I could also sync my calendars from iCal to my Google Calendars using BusySync. But these syncs via BusySync would only sync Events. Not my To Do list.
And I had to find a way to get my To Do list accessible from via my GMail.
I mean that is also the point of going IMAP and moving to the Cloud, isn’t it?
High and low, I searched for solutions. I tried the number of web based apps like Remember The Milk and ToodleDo – they had nice gadgets for GMail. But, none of them synced with iCal … I could export my iCal calendar to these web apps and so forth, but what I was looking for was a live sync. And none of the tools out there could provide me with an answer.
And Then… A Breakthrough!
Until today afternoon.
I simply stumbled onto this solution.
I daresay, it is not the most elegant of all solutions. Also, in all probability, many of you may already be doing what I just did. But then I had to write this down for posterity!
Hope all of you will forgive me!
So, What Is The Answer?
Well, the thing is this: All the To Dos in iCal are usually seen in Apple’s Mail.app. And if you want to create iMap calendars, you can do so from within iCal itself.
Typically, all the calendars would be made ‘On My Mac’. But in this case, choose to make your new calendar on the second option available – which is the GMail account.
So, naturally, all the tasks and events you make in these calendars will be made in your GMail calendar. And with BusySync, those events (at least) will get updated to your Google Calendar.
But the magic part is that the To Dos that you will make will appear in your Apple Mail as well.
And why is that so important?
Well, when you create an IMAP account in Mail.app for your GMail, Apple puts a label called ‘Apple Mail To Do’ on your GMail. And guess what, all the To Dos that are created in the calendars created under the GMail calendar set automatically get uploaded to your GMail.
Look Out Though…
If you already have a whole bunch of To Dos in your iCal then you must do the following:
- First Re – Create Calendars under your GMail calendar.
- Then select all your To Dos in Mail (under ‘On My Mac’) and Drag and Drop them in the GMail list.
- Change the iCal sync preferences in OmniFocus or your task manager to sync your tags / lists / contexts into these new calendars.
I normally sync all my tasks from OmniFocus to a single calendar called OmniFocus. So, I ended up creating an IMAP calendar called OmniFocus under my GMail Calendar set.
Making new calendars with the same names helps because then the tasks you move automatically go into those calendars.
So if you have calendars called ‘Work’ and ‘Home’ for example, then make calendars called ‘Work’ and ‘Home’ under your GMail calendars. This way the tasks will get transferred into the right calendars.
And once you have changed the preferences in your task manager so that the tasks now sync with these iMap calendars, you are all set!
Ta-Da!
Now here is what will happen.
Your tasks will start getting uploaded to / synced with your GMail from via Mail.app. And you will be able to see them, contexts and due dates and details and all in your GMail under the label ‘Apple Mail To Do’.
Yes, the descriptions and what nots may not be what you would like them to be – but something is better than nothing in this case.
And the best part … you can search in GMail and get your daily dose of Next Actions and Contexts, right there in your GMail.
Here are a few pics as examples:
All in all, you get to see your contexts and tasks in your GMail. And when you click on these tasks, you can see the details like priority and notes and everything.
Caveats…
Of course, you cannot edit the tasks in GMail. Nor can you click a checkbox when you have finished the task.
But now you can have a list of your tasks in your GMail for those times when you don’t have a smartphone but have access to Internet from outside your house and need to check what tasks you have to accomplish for the day.
And you will have to leave your Mail.app running in the background to keep the sync going throughout the day. Otherwise the sync from your Mac to GMail won’t happen. So, I just keep Mail.app open in one of my Spaces – out of the way, but silently doing its job in the background.
I suppose till GMail decides to give iCal users the capability of uploading their To Do lists to Google Tasks, this stop-gap arrangement will have to do.
Your Thoughts?
If you have any ideas more simple and creative and useful than what I have written over here, please feel free to leave your thoughts in the Comments…
I am open to any and all creative ideas in this regard.









April 25, 2010 at 1:19 PM
Thanks for sharing this trick! I am using your method to sync “The Hit List” To Dos with my iPhone シ
April 25, 2010 at 1:23 PM
You’re welcome! I stumbled onto this method quite by accident actually… and yes, THL is a great looking app and I have it on my Mac as well… I don’t have the iPhone (yet) though…
May 19, 2010 at 4:08 AM
Thanks for the instructions! They’re great. I’ve used this method in the past but it didn’t work for me given that I can’t sync these tasks with my iPhone or edit them when I’m not in front of my computer. It’s all about interacting with the cloud from anywhere.
I found your ideas on using searches for tags and due dates to make this method much more useful, however, so thank you!
A somewhat related solution/idea would be to somehow have iCal do the syncing of tasks to Google calendar instead of Mail syncing them to GMail. I use an iPhone app called TouchTodo. It’s, by far, the best task management app I’ve found (I’ve tried them all and I’m very demanding of my task management apps). It’s only fault is there’s no web-based or desktop version!
It syncs all of my to-do items as all-day events in my Google Calendar with a [Touch-Todo] tag in the notes. You can set duration, recurring tasks, and more. It sets reminders in the Calendar item too, so I get the reminders through Google Calendar.
The way Mail syncs task items with GMail is not unlike the way this app syncs them with Calendar. They use a simple tag.
I’m not sure exactly where I’m going with this, but if you have any ideas, throw them my way! I was just in the mood for a brainstorm I suppose.
May 19, 2010 at 8:18 AM
Hi,
Thanks for your comments.. I agree! It is all about interacting with the cloud from anywhere!
As far as I know, it is not possible to sync to-dos from iCal to the ‘Tasks’ list in Google. Which is unfortunate, because that would, in an ideal world, be the best solution ever.
Which is why, when I stumbled on to this solution while fiddling around in iCal, I was very, very happy. Although, it did not get my to-dos on the ‘Tasks’ list, at least, it got them somewhere (in my GMail, where, I think I live nowadays
), and with a minimal of fuss, I could find them.
The only bad thing about the method I figured out is that one has to leave Mail.app running in the background for this syncing to happen. If somehow, one could get the to-dos to sync with the Tasks list in Google, it would be the best thing ever. But in the meanwhile, this is the best I came up with…
Unfortunately, I don’t have an iPhone so I can’t quite comment on the app you mention – but I suppose, the idea of getting something to sync with the to-dos in iCal would be great! And using tags to do so sounds like a good idea too!
Based on what I have found hunting around on the net, Google hasn’t released the API to its Task List, which is why people aren’t able to sync the iCal to-dos with the Google Tasks list. Which sucks.. but there you go…
May 19, 2010 at 8:47 AM
Whoops! Just re-read your comment!
I agree.. syncing the to-dos as events on Google Calendar is something that would work – in fact, it would help one schedule the task in the best possible manner! This way one would know when to do the task in light of that day’s schedules, rather than knowing simply that it is due on a particular date.
So far, I have looked this up on the net, and the only good, workable solution I found was in one of the forums for OmniFocus. In iCal, you can drag the task from the to-do list to your calendar and convert it to an event. But while you are doing this, be sure that you have selected the correct calendar in iCal, and that that calendar is not an imap calendar – coz iCal doesn’t support events on an imap calendar.
Another solution is adding a service called ‘CalendarCreator‘ which allows you to select text and create Calendar events in iCal via the Services contextual menu.
Obviously, for all this to work, I use BusySync to sync these events to Google Calendar – which gives me a 2-way sync. And then I have configured SMS alerts in Google Calendar, which lets me know, say 15 minutes before, that the next task is due.
So far, this is the best solution available…
So if you stumble onto something more interesting and workable, do let me know…
February 20, 2011 at 12:20 AM
iMap => IMAP #corrections
February 23, 2011 at 11:56 AM
Hmm… yup! changed it!
Thanks for letting me know…
February 23, 2011 at 5:11 AM
Hi Madhavi. I need to sync my To Do’s as well and I was so glad to have stumbled onto your blog. So far it seems like the best option because I really don’t want to use other 3rd party Task apps (eg. ToodleDo). Sorry for being such a novice, but your instructions confused the heck out of me. Would it be possible for you to just write it plainly in 1,2,3 steps. Thanks.
February 23, 2011 at 12:03 PM
Hi, yes they can be a bit confusing can’t they? So I am going to try and sort out the confusion here.. hopefully that’ll help. So, here are the step-by-step instructions:
That’s it!
Hope this helps…
One thing to watch out for though: when creating the new calendars in your GMail, make sure that they have the same names as the earlier calendars. So if you had a ‘Work’ calendar on your Mac, then the calendar on GMail should also be called ‘Work’.
August 25, 2011 at 6:58 PM
Hi Madhavi, your tutorial is very interesting, but I encounter a problem on OSX 10.6.8: when using iCal I try to create a new calendar on my Google account, I get an error as if the Google account URL was wrong.
But I already have my Google account configured in iCal and the main Google calendar syncs correctly.
The same account is also configured in Mail and works fine.
Any clues about this problem? Maybe anything changed in recent iCal versions?
Thank you.
March 7, 2011 at 10:02 AM
Hi Madhavi,
Thanks for your guide. I think that is just what I need to find a way between Things and my android. I however has one ongoing problem. How do you get the ‘M.G.Gmail’ to appear in Ical? The one to select when creating a new calendar. I can figure out to google calendar as a webdav calander, but thats not the same is it?
March 7, 2011 at 11:08 AM
Hi,
I am glad you found this helpful…
To get your Google id in iCal, you will have to add your Gmail account in Mail.app – then you will create the 2 options: On My Mac, and the Gmail Account. If you have more than one Gmail accounts, then they too should appear in iCal.
Sometimes, to activate this, you might have to just create a blank to-do in Mail.app when you are checking an e-mail from that account.
March 7, 2011 at 11:28 PM
Thank you – the trick were to make a task in mail app
August 25, 2011 at 7:03 PM
Tobias, you need to follow the steps described here to add your Google account into iCal:
http://www.google.com/support/calendar/bin/answer.py?answer=99358#ical
May 30, 2011 at 10:20 PM
Hi, i found your method very intelligent, as you said, even it is not an ideal way as we desire. Well i am a happy user of Macbook and iphone 3gs, and i am just getting interest on GTD, and by now i am using Calengoo on my iphone wich work vert well with its 2 way sync, event as well as task with google.
I did not find the same way on my macbook so far, and i will be aware of your method untill i find the better one. Thanks
May 31, 2011 at 8:59 AM
Thanks Martin! I hope this method helps you out!
June 10, 2011 at 3:22 AM
It`s great but I have to say that Mail as a mail client really sucks, i prefer gmail itself so I don’t have the need to keep mail open and so the sync process is no longer usefull. Thanks for the tip =)
June 10, 2011 at 7:49 AM
You’re welcome…
June 12, 2011 at 11:27 AM
Ha Ha nice tutorial
June 12, 2011 at 11:33 PM
Thanks!
August 13, 2011 at 11:36 AM
Appigo Sync Mac / Toodledo
October 24, 2011 at 12:53 PM
Hey,
Do you know how to synch an app called anxiety.app which creates new calendars on your mac and stores the tasks in there? Alternatively another way of doing this for free – I don’t want to buy OmniFocus!
Thanks,
October 24, 2011 at 2:14 PM
Yes, I know of this app called Anxiety – it works on the Mac… And it is free… There are some other apps out there which also do the same thing… You can just google it..