Take the 2-minute tour ×

I've created a new Google Calendar to display entries from an iCal URL. Both methods, described below, were used to accomplish this:

  1. Google Calendar → Other Calendars → Add by URL

  2. Google Calendar → Other Calendars → Import Calendar

The source application, if anyone is interested is SugarCRM. In the application, it displays the iCal URL in this format: http://abcd.com/ical_server.php?type=ics&key=fasfdsdfdfd&email=techwire@abcd.com

Question 1: Is this the problem? Should the protocol be webcal:// instead of http://?

Additional info: I've set up the SugarCRM calendar in MS Outlook using the HTTP URL and Outlook updates correctly whenever I add a new entry in Outlook.

As a test, I shared the calendar from Outlook and it shows the exact same URL, except it displays it as webcal://abcd.com/ical_server.php?type=ics&key=fasfdsdfdfd&email=techwire@abcd.com

I'll create some more entries as a test and see if that's the issue, but has anyone run into this problem?

share|improve this question
Is Google caching the response? Is your server sending Cache-Control headers? Perhaps sending the appropriate HTTP headers to prevent caching, or to cache only for a short period of time, might be sufficient? –  w3d Jul 5 '13 at 0:04
Do you ever see the updated/new entries? –  w3d Jul 5 '13 at 0:15
@w3d how do I tell if Google if caching the response? I don't know if the issue is server-side. Outlook shows the updated entries within a few minutes and Google Calendar takes much longer. Do you have a link to point me to that would explain how to modify the HTTP headers to prevent caching or decreasing the time? –  TechWire Jul 5 '13 at 0:37
There is no way of really knowing whether Google is caching the response based on the HTTP headers without changing the HTTP headers and see what happens - Google is no doubt caching it to some extent. It may just be that Google is polling every 24 hours as you've stated in your answer. How you set the HTTP headers will depend on your web server and to some extent the server-side language you are using. For instance, in Apache, have a look at this SO question... stackoverflow.com/questions/11532636/… –  w3d Jul 5 '13 at 9:27
Generally, if no specific caching instructions are sent in the response then it is up to the client how it is cached. But also, the client may choose to ignore any such headers anyway?! –  w3d Jul 5 '13 at 9:29
show 3 more comments

2 Answers

I think I see the issue and it's due to the fact that Google Calendar appears to update its ical sources only every 24 hours.

There have been requests to either update it a bit more frequently or provide users with a manual refresh option - see link below:


My workaround is as follows, if this helps anyone:

  1. On my Android phone, I set up iCalSync2 to pull data from the iCal server. This shows up on my phone's calendar and is updated every hour.

  2. On my desktop Google Calendar version, I've set up a new calendar using the "import by URL" option. Since I don't want duplicate entries showing up on my phone, I have chosen not to sync this with my 'droid. I'm not really cool with this updating entries every 24 hours, but my phone is what I primarily use to view appointments.

share|improve this answer
add comment

The official Google answer:

Currently, calendar feeds are automatically updated by Google Calendar every few hours. We understand that some users want to have the ability to refresh the calendars they added manually and we are exploring various ways to enable this.

share|improve this answer
add comment

Your Answer


