What is iCalendar?

iCalendar is the standard Internet format for exchanging calendar information. It's supported by most calendar software including Google Calendar, Hotmail Calendar, Outlook, Apple iCal, and Lotus Notes.

When you use a standard calendar program to manage your web calendar, you solve two problems at once. The program can produce an HTML widget for display on your web page. It can also produce an iCalendar feed that enables that same information to appear automatically on other sites.

The problem with proprietary web calendars

It's ironic but true that most web calendars are not produced by standard calendar programs. That means they're not available in iCalendar format. Instead they're available only as HTML, or sometimes PDF. People can view these calendars, but computers can't automatically exchange them and combine them.

How do I know if my calendar is iCalendar-compliant?

If your calendar doesn't have an easy/obvious button or link to export iCal, then the answer is probably "it's not," but you should search your documentation (of your Web calendar) for "iCal" or "iCalendar" to make sure. You can also contact the vendor that makes your web calendar and ask them.

How do I know if my calendar produces an iCalendar feed?

Some iCalendar-compliant programs can export an iCal file to your local computer, but can't automatically publish that file to the web as a "feed" available at a URL. To enable automatic transfer of your calendar you need to use a program that provides a feed. There are three general kinds of these:

  1. "Cloud-based" calendar programs. Because programs like Google Calendar and Hotmail Calendar run "in the cloud" their iCal exports are automatically available as feeds. They also provide HTML widgets that embed in web pages. That makes these two programs ideal for publishing calendars that you write once, and make available as HTML for people, and as iCalendar for computers. Here's a tutorial on publishing iCalendar feeds using Google Calendar or Hotmail Calendar.

  2. Desktop calendar programs. Some of these can "export to the web" -- notably Outlook and Apple iCal.

  3. Content management systems. The WordPress blog publishing system, for example, can be outfitted with a plugin that enables you to write your calendar once, then publish as both HTML for people and iCalendar for computers. Unfortunately most CMSs that include calendar modules don't support iCalendar. If the calendar page produced by yours doesn't display an iCal link or button, check the documentation (or ask the vendor) if there's a way to turn that feature on. And if not, ask the vendor to add the feature! iCalendar has been an Internet standard for a dozen years. It should be supported.

Why iCalendar?

The key benefits are:

(from the elmcity faq)