Overview
An ICS file (short for iCalendar) is a simple, widely supported calendar file format. When you download an ICS from this site and import it into your calendar app, you get a clean holiday calendar you can view alongside meetings, trips, and project deadlines.
ICS is a great default for holiday planning because:
- It works in Google Calendar, Apple Calendar, Outlook, and many other apps.
- It captures the event name and date in a standard way.
- You can share one file with a team so everyone uses the same holiday baseline.
On this site, holiday ICS exports are generated from the country/year (or region/year) calendar you’re viewing.
When to use ICS (and when not to)
Use ICS when you want calendar-native planning
ICS is ideal if you want:
- Holiday days visible in your main calendar view
- Quick “am I scheduling something on a holiday?” checks
- Easy sharing (send the file to a colleague)
Consider CSV when you need analysis
If your goal is reporting, staffing models, or pivot tables, export CSV instead. CSV is better for spreadsheets and BI tools.
Important limitation: imports usually don’t auto-update
Most calendar apps treat a downloaded ICS file as a snapshot. If the holiday list changes (or you switch years), you usually need to import a new file or remove/re-import.
Step 1 — Pick the right calendar page
Start from a country calendar page (or a regional calendar page if a country has regions in the dataset).
Examples:
- United States: /public-holidays/united-states
- United Kingdom: /public-holidays/united-kingdom
- Canada: /public-holidays/canada
Then choose the year you care about.
Tip: if your planning window spans a year boundary (for example, November to February), export two years and import both.
Step 2 — Download the ICS file
On the country-year (or region-year) calendar page, use the export controls:
- Click Download ICS to download a
.icsfile.
The downloaded file name typically includes the country (and sometimes region) and the year, so it’s easy to manage multiple calendars.
Step 3 — Import the ICS file into your calendar app
How you import depends on your app. The steps below are intentionally general so they apply to most versions.
Google Calendar
Google Calendar supports importing an ICS file into a calendar you own.
- Download the
.icsfile. - Open Google Calendar in a browser.
- Find the import option (usually under Settings).
- Import the file into a new calendar like “Public holidays — [Country] [Year]”.
If you want the exact steps, see the companion guide: /guides/how-to-add-holidays-to-google-calendar
Apple Calendar (macOS)
On macOS, double-clicking an .ics file often opens Calendar and prompts you to import it.
Best practice (Apple Calendar):
- Import into a dedicated calendar (not your default personal calendar).
- Use a clear name such as “Holidays — [Country] — [Year]”.
Outlook
Outlook typically supports importing ICS as a calendar.
Best practice (Outlook):
- Import into a separate calendar so you can toggle it on/off.
- If duplicates appear after repeated imports, remove the previous imported calendar first.
Step 4 — Confirm what you imported (quick sanity checks)
Before you rely on the calendar, do a 60-second check:
- Pick a well-known holiday (e.g., New Year’s Day).
- Confirm the date matches the country-year page.
- Check whether observed/substitute dates are represented the way you expect.
If something looks “off,” the most common causes are:
- You imported the wrong year.
- You imported the national calendar but needed a region.
- You expected an observed/substitute day that the country doesn’t use (rules vary).
Common issues and fixes
“I imported the file, but nothing shows up”
Try:
- Verifying you imported into the correct calendar.
- Making sure the calendar is enabled/visible.
- Switching to a month view and jumping to a known holiday date.
“I see duplicates”
This happens when you import multiple times.
Fix:
- Delete the previously imported holiday calendar and import again.
- If your app imports into the same calendar, remove the duplicate events or reset the calendar.
“The holiday is on the wrong day”
For holidays this site exports as all-day events, day-shifts are usually caused by timezone or import behavior.
Try:
- Checking whether your app is treating the event as timed instead of all-day.
- Importing into a fresh calendar and comparing.
- Confirming the country’s calendar uses an observed/substitute date.
“I need the holidays to update automatically”
If you need an always-updating calendar feed, an imported ICS file may not be enough.
Workarounds:
- Set a reminder to re-import each year.
- Use a dedicated workflow: export → import as part of your annual planning cycle.
- For teams, publish one internal calendar and appoint an owner.
Best practices for teams
Keep calendars scoped
Avoid importing “all countries” into one calendar. It becomes noisy. Instead:
- One calendar per country (or per region)
- One calendar per year
Name calendars consistently
Examples:
- “Holidays — Canada — 2026”
- “Holidays — Australia (NSW) — 2026”
Share calendars, not files
If possible, import the ICS once into a shared team calendar and share the calendar with teammates. That avoids multiple imports and duplicates.
Import vs subscribe: what most people get wrong
When people say “add this ICS to my calendar,” they may mean two different things:
Import (snapshot)
Importing an ICS file usually creates a set of events that live inside your calendar system. You can edit, delete, color-code, and share them like normal events.
Pros (import):
- Works everywhere
- Predictable
- Great for annual planning
Cons (import):
- Usually does not update automatically
- Easy to accidentally import twice
Subscribe (feed)
Some calendar apps can “subscribe” to an iCalendar URL so events update automatically.
Pros (subscribe):
- Automatic updates (in many apps)
- One-time setup
Cons (subscribe):
- Requires a stable URL feed (not just a downloaded file)
- Some apps refresh slowly
- You may not be able to edit individual events
Right now, this site provides downloadable ICS exports. Treat them as snapshots you refresh when needed.
How the ICS events are structured
Knowing what the file contains helps with troubleshooting.
Typical structure:
- All-day events for each holiday date
- Title as the holiday name
- Description may include notes when available
If you see timezone-related shifts, it’s usually the calendar app’s import behavior (turning all-day events into timed events) rather than the underlying dates.
Removing an imported holiday calendar safely
If you imported the holidays into a dedicated calendar (recommended), cleanup is easy:
- Locate the calendar you imported into (e.g., “Holidays — Canada — 2026”).
- Delete that calendar.
If you imported into your primary calendar by accident, cleanup is harder. In that case, consider re-importing into a dedicated calendar next time and using your app’s bulk delete tools where possible.
A practical yearly refresh routine
If you use holiday exports for work, a simple routine keeps everything current:
- In December, export next year’s calendars for the countries/regions you care about.
- Import into new calendars named by year.
- Disable (don’t delete) last year’s calendars for a month or two.
- Delete old calendars when you’re confident you don’t need them.
This avoids duplicates and keeps your calendar list tidy.
App-specific notes (quick reference)
Calendar apps vary a lot by platform and version. These notes cover the patterns you’re most likely to encounter.
Apple Calendar (macOS)
- If double-clicking the
.icsfile opens Calendar, you’ll usually be asked which calendar to import into. - If you don’t see a prompt, use Calendar’s import menu and choose a dedicated calendar.
Apple Calendar (iPhone/iPad)
- iOS sometimes treats ICS files as attachments. You may need to save the file and then open it with Calendar.
- If you can’t import easily on mobile, import on a desktop first, then sync the resulting calendar to your phone.
Outlook (desktop)
- If Outlook shows an option to “Open as new calendar” vs “Import,” prefer importing into a dedicated calendar.
- If you re-import yearly, remove the old holiday calendar to avoid duplicates.
Outlook (web)
- Some web versions support importing calendars through Settings.
- If you hit limitations in web UI, importing via desktop Outlook may be simpler.
Advanced planning: exporting the right year(s)
Many planning mistakes happen because teams assume “this year” is enough.
Consider exporting multiple years if you:
- Plan school terms and travel across December/January
- Schedule major projects that run over year-end
- Run hiring or staffing plans that span fiscal years
In those cases, import each year into a separate calendar and enable both calendars during the overlap period.
One-minute checklist
Before you rely on an imported holiday calendar:
- Confirm the calendar name includes country/region and year.
- Spot-check at least two dates (one early in the year, one later).
- Verify whether your app shows any observed/substitute day behavior.
- If you see duplicates, delete the imported calendar and re-import once.
Explore country calendars
If “How to export public holidays to ICS” affects schedules or planning, use a small set of country pages as a quick cross-check before you generalize.
- United States — a common reference point for “How to export public holidays to ICS”.
- United Kingdom — a common reference point for “How to export public holidays to ICS” in Europe-focused contexts.
- Canada — a practical reference for “How to export public holidays to ICS” in North America.
- Australia — a practical reference for “How to export public holidays to ICS” in Oceania.
- India — a practical reference for “How to export public holidays to ICS” in South Asia.
You can then browse /public-holidays for a broader set of countries relevant to “How to export public holidays to ICS”.
Sources
- iCalendar (ICS) overview: https://en.wikipedia.org/wiki/ICalendar
- RFC 5545 (iCalendar specification): https://www.rfc-editor.org/rfc/rfc5545