Syncing Google Calendar With iCal
READ ME: This post is over a year old and is one way sync only. Check out our Spanning Sync Review for up to date two way sync.
Google calendar can be a great tool for organizing your life. Sure, it’s not as powerful as other desktop-based calendar applications or even personal digital assistants. But it’s free and it works on just about any Web browser. You can even use it across multiple computers–you don’t need to stick to one machine, as most other desktop-based calendaring applications are limited to.
However, sometimes you would still want to use your own desktop application. Google Calendar does have limitations. For one, there’s no internal means to handle tasks or to-do lists. And the interface can be a bit slow when you’re working on slow connections.
Fortunately, Google Calendar allows for syncing with external applications, by virtue of SyncML, and through one-way syncing via XML. For instance Apple’s iCal, which is built-into Mac OS X, can be used to subscribe to your Google Calendar, and will automatically check Google Calendar every few minutes to check for new items.
If you’re using iCal, here’s how to subscribe to your Google Calendar.
First, login to your Google Calendar, and look for the Manage Calendars link.

Then click the name of the calendar you want to subscribe to.

Then under the settings list, look for the sharing buttons. There are two sets. One is for public calendar subscription, which lets you share the calendar with other users. The other is the private subscription, which is supposed to be for you only. The private subscription includes all calendar items, including those marked private. The one for sharing, meanwhile, will only include items marked public. Be sure not to share these links with other people unless you really want them to see events in your calendar.

Copy the iCal URL by Control-clicking (or by holding the mouse button for a while, or right-clicking if you have a multi-button mouse) on the green iCal button.
Now open iCal, then click Calendar on the menu bar, and then Subscribe.

You can then paste in the URL from Google Calendar into the subscription URL text box.

iCal will then create a calendar for you. You can rename the calendar as you please, and you can define the refresh interval. You can even remove the alarms and notifications if you wish.


When your Google Calendar is updated, you can either manually tell iCal to sync the calendar with the online version, or it will automatically download updates according to your defined frequency. Of course, this is one-way syncing only. For now, Google Calendar does not support two-way syncing with iCal, but third-party applications are being developed for this purpose (more on this soon).
READ ME: This post is over a year old and is one way sync only. Check out our Spanning Sync Review for up to date two way sync.
Don't miss another post! Subscribe by RSS feed or by email today!
Share this post! 44 comments, add yours!



Spanning Sync is the way to go by far…this is entirely too complicated and doesn’t quite do two-way the way Spanning Sync does
BTW, there is a product called SpanningSync (imminently but not yet released) that purports to allow two-way syncing between Google and iCal.
Nice method I’ve used for a little while now. Unfortunately, it requires iCal to remain open, at least whenever you want it to refresh and include recent additions to Google Calendar. When running a bunch of programs, this could take up some memory.
This blog post is really about subscribing, not syncing.
Spanning Sync promises to enable two way sync between iCal and Google Calendar. The public beta has just been released.
This doesn’t highlight the big challenge, syncing from iCal to Google Calendar.
mine keeps saying there is an error when i try to sync them!!! …like the url doesn’t exist….but i am edit-copy-edit-pasting exactly…
I have try to syncing with windows and linux by using wget command. If u can use wget on mac then it should be no problem. For detail information on.
http://ipi.fi/~rainy/forum/viewtopic.php?t=2559
Actually we’ll be posting about that soon. Spanning Sync has made its software available, but is still closed to a limited set of beta testers.
Acutally, it is open now. Check out this post:
http://blog.spanningsync.com/2007/01/spanning_sync_e.html
Oh goodie!
Same can be done with Outlook 2007 as well… How about a tutorial on that?
I’m having the same problem that Jill is having….
perk and jill –
Use the private address instead of the public address. That will do it!
cheers!
Spanning Sync went offline again (“due to overwhelming traffic”). I guess we should wait until they get back online. I hear someone’s sponsoring their hardware requirements.
This is not SYNCHING this is publishing.
Make a change on ical, and then another on Google Calendar.
Do you see both changes, nope…no sync then.
I’ve been two-way publishing for quite some time now without Spanning Sync (never heard of it before now). What I do is the method mentioned above in addition to publishing my iCal calendars to the free iCal WebDAV servers offered at icalx.com . Then Google calendars subscribes to the iCalX share and there’s two-way publishing. Hope this helps.
Synchronization is the way to go…
Sync Google Calendar with your mobile device using http://www.goosync.com
Its free
Chris.
(dot mac) .Mac has already done this for me… and backwards which is more useful..cause who wants their calendar to be web based? ical is your calendar, then it syncs to the web so you can pull it up on web or in ical on your laptop while out on the road.
Very simple and clearly explained – thanks
Yeah, sure, Spanning Sync is nifty. But not $25/year nifty. Or you could spend $65 on it and get a “lifetime” version. And I bet “lifetime” means “until we decide to charge you for an upgrade”.
I’m using Gcaldaemon found at: http://gcaldaemon.sourceforge.net/
It’s free, and it works with any calendering software that uses the iCalendar format. It’s not a straightforward installer, but it has the exact commands listed in order. Even if you have never touched the Terminal on Mac OS X before, you could just follow the steps.
Hope this helps.
Thanks a lot. It’s very helpful and I am looking for it long time
I’m getting unsuccessful results when following this method with Gcal for Google Apps. I’ve been moving my personal stuff to Google Apps for my own domain and the proper Google functionality works well, but sharing a calendar is limited to named accounts.
Is there a variation on this method you described for Google Apps’ Calendar?
[...] the google calendar information isn’t clear enough, there are many other references that offer more screen captures and [...]
[...] Syncing Google Calendar With iCalGoogle calendar can be a great tool for organizing your life. However, sometimes you would still want to use your own desktop application. Apple’s iCal, which is built-into Mac OS X, can be used to subscribe to your Google Calendar, and will automatically check Google Calendar every few minutes to check for new items. Screencast. [...]
The iCal subscription is only one-way sync, I use Spanning Sync for OSX who brings the bidirectionnal sync, so after you can use iCal when you are at home and Google Agenda outside, and both will sync together !
Okay it’s not a free software, but only 25 dollars a year for a very practical solution.
Thanks for this article! I was gonna go with the Spanning Sync method, but don’t feel like I need to shell out the extra cash… Thanks for saving me some money.
Kudos!
Thanks for this article.
At first it didn’t work, but I realized I needed to subscribe to the private iCal address.
Cheers.
gCal also syncs, for $20. No subscription fees and no 3rd party storage.
http://www.macness.com/
And as mentioned earlier, there is gcaldaemon:
http://gcaldaemon.sourceforge.net/
GCALDaemon is NOT for the average person. Extremely complex install, even for the Unix saavy, and the setup docs are wrong. Too much work.
I tried out BusySync and it will sync iCal with Google Calendar:
http://www.busymac.com/busysync/
25 bucks for that is too much …
GCALDaemon also apparently does not work with Leopard
[...] sincronizzare iCal con Google Calendar leggete questo post: non sarà però possibile modificare il calendario importato in [...]
it’s really a good and simple explanation.
Now my ical works nice with my google calendar account.
thanks.
[...] Si vous utilisez iCal (mac), vous pouvez facilement synchroniser les deux en suivant ce tutorial. [...]
Really informative article, it helped me a lot, had to come back a few times and readi it again. keep up the good work, thanks
If you don’t want to have iCal running permanently, just add it to your Applescript
This works for me:
tell application “iCal”
activate
tell application “System Events”
keystroke “R” using {command down, shift down}
end tell
delay 5
quit
end tell
tell application “iSync”
activate
synchronize
repeat until syncing is false
if syncing is false then
quit
end if
end repeat
quit
end tell
I’m trying to subscribe to the private address and am still getting an error message whenever I copy the link into iCal…something about “access deined at” and then it lists the link exactly as I copied it. Anybody know how to fix this?
what about if there is no private address setting? the other iCal URL is not working! thanks!
Well, Google supports CalDAV, as does iCal. You can follow the instructions here to sync iCal and Google Calendar: http://www.google.com/support/calendar/bin/answer.py?hl=en&answer=99358
Works like a charm. 2-way and everything…
Forget all the rest, if you want REAL two way sync for free use TimeKeeper’s method. Thanks very much for the hint!
Timekeeper–thanks for the info. It works as you say. Free and uses the built-in technology of the existing apps.