Free Add to Calendar Link Generator
Free add to calendar link generator: one form builds a Google Calendar link, Outlook and Office 365 links, a Yahoo link, and an .ics file for Apple Calendar - with correct time zones. No signup.
The times above are read in this zone and converted to UTC for Google, Outlook, and the .ics file.
Note: repeats are carried by the Google link and the .ics file. The reminder goes into the .ics file only; Outlook and Yahoo links accept neither.
Quick Answer
An add to calendar link generator turns event details into URLs that open a pre-filled event in Google Calendar, Outlook.com, Office 365, or Yahoo Calendar, plus an .ics file for Apple Calendar. Fill in the title, time, zone, and location; copy the links or the HTML snippet into an email or page. Runs in your browser, free, no signup.
Quick Facts
- Google Calendar links use calendar.google.com/calendar/render?action=TEMPLATE with dates=YYYYMMDDTHHMMSSZ/YYYYMMDDTHHMMSSZ in UTC; the ctz parameter names the zone the event is saved in.
- Outlook.com and Office 365 share the same parameters (subject, startdt, enddt, body, location, allday) on outlook.live.com and outlook.office.com; the working path since mid-2025 is /calendar/0/deeplink/compose.
- Yahoo Calendar has no time zone parameter: st and et are read as wall-clock time, and the link only opens the composer when v=60 is present.
- Apple Calendar and iOS have no add-event URL at all - the only way in is an .ics file (RFC 5545), attached, downloaded, or hosted.
- All-day events use date-only values with an exclusive end: a one-day event on 1 Oct is 20261001/20261002 in Google and DTEND;VALUE=DATE:20261002 in .ics.
- Recurrence travels as an RRULE - Google reads it from recur=RRULE:FREQ=WEEKLY, .ics from an RRULE line; Outlook and Yahoo links have no recurrence parameter.
- Everything is built in your browser with the Intl API for zone conversion; the event details are never sent to U2L.
How to create an add to calendar link
Fill the form, check the preview, copy the links or HTML.
- 1
Enter the event
Type the title, pick the start and end date and time, and choose the time zone the event happens in. Tick All-day for date-only events. Location and description are optional but show up in every calendar.
- 2
Add repeats or a reminder
Choose daily, weekly, or monthly to attach an RRULE (Google link and .ics), and set a reminder in minutes to add a VALARM to the .ics file. Both are optional.
- 3
Check the preview
The preview card shows the event exactly as the links encode it, with the time rendered in the zone you picked. Fix the end time if you see a validation note.
- 4
Copy the links, HTML, or .ics
Copy each provider link, the ready-made HTML snippet with all four links, or download the .ics for Apple Calendar users. Shorten any provider link with U2L to get a branded URL for email and print.
What is a Add to Calendar Link Generator?
Add to Calendar Link Generator is a form that converts an event - title, start, end, time zone, location, description - into provider-specific URLs and an .ics file. Each URL opens the recipient's calendar with a pre-filled event they save in one click, and the .ics covers Apple Calendar and any client without a URL scheme.
Every major web calendar exposes a compose URL. Google reads action=TEMPLATE on calendar.google.com/calendar/render, Outlook.com and Office 365 read a deeplink/compose path with rru=addevent, and Yahoo reads a v=60 query on calendar.yahoo.com. The parameter names, date formats, and time zone rules differ for each, which is why hand-writing these links goes wrong so often - a Google link expects 20261001T140000Z while Outlook expects 2026-10-01T14:00:00Z and Yahoo expects 20261001T140000 with no Z.
Apple is the exception. Neither macOS Calendar nor iOS has an add-event URL, so the recipient needs an .ics file: a plain-text iCalendar document (RFC 5545) with a VEVENT block. Opened in Mail or Safari on an iPhone, it shows the native Add to Calendar sheet. The generator writes that file with a UID, DTSTAMP, UTC DTSTART and DTEND, optional RRULE and VALARM, CRLF line endings, and 75-octet line folding so strict parsers accept it.
Marketers, event teams, support desks, and developers use these links in webinar confirmations, newsletters, ticket pages, booking emails, and printed invitations. The tool is deliberately dependency-free and browser-only: no hosted redirect page sits between the click and the calendar, nothing is stored, and the links keep working for as long as the providers support their URL schemes.
How does a Add to Calendar Link Generator work?
The time zone conversion is the core of the tool. You type a wall-clock time such as 14:00 and pick an IANA zone such as America/New_York. The tool asks Intl.DateTimeFormat for the year, month, day, hour, minute, and second that zone shows at a guessed UTC instant, works out the offset from the difference, subtracts it, then repeats the check once at the corrected instant. That second pass matters on DST switch days, where the first guess can land on the wrong side of the transition. The result is an exact UTC instant that every provider agrees on.
Google Calendar gets dates=20261001T180000Z/20261001T190000Z (both halves must end in Z for Google to read them as UTC) plus ctz=America/New_York, which sets the zone the saved event carries so the organiser sees 2:00 PM Eastern even when they created the link from a laptop in Berlin. For all-day events the tool switches to 20261001/20261002 - date only, end date exclusive - and drops ctz, because a date has no zone and adding one can shift the event by a day for people across the date line. Repeats go into recur=RRULE:FREQ=WEEKLY, the same syntax as an .ics RRULE.
Outlook.com and Office 365 receive subject, startdt=2026-10-01T18:00:00Z, enddt, allday=false, body, location, path=/calendar/action/compose, and rru=addevent. The trailing Z tells Outlook the value is UTC; omit it and Outlook reads the value in the signed-in user's zone. For all-day events the tool sends date-only values with allday=true, which Outlook honours over any time part. Yahoo receives title, st, et, desc, and in_loc after v=60. Yahoo has no zone parameter and ignores a trailing Z, so the tool sends the wall-clock time you typed and Yahoo shows it in the recipient's calendar zone - the one output that is not zone-safe for international audiences.
The .ics file follows RFC 5545: BEGIN:VCALENDAR, VERSION:2.0, PRODID, CALSCALE:GREGORIAN, METHOD:PUBLISH, then a VEVENT with UID (unique per generated file), DTSTAMP (generation time in UTC), DTSTART and DTEND in UTC basic format (20261001T180000Z), SUMMARY, LOCATION, DESCRIPTION, an RRULE line when you chose a repeat, and a VALARM with ACTION:DISPLAY and TRIGGER:-PT15M when you set a reminder. Backslashes, semicolons, commas, and newlines are escaped as the spec requires, and lines longer than 75 octets are folded with CRLF plus a space. The download is a Blob served as text/calendar, so nothing touches a server.
Use Cases
How marketers, businesses, and developers use add to calendar link generator.
Webinar and event confirmation emails
Put the Google, Outlook, Office 365, and Yahoo links in the confirmation email and attach the .ics for Apple Mail users. Registrants save the slot with one click instead of retyping the time, which is where no-shows start. Use the HTML snippet as-is in any email builder that accepts raw HTML.
Newsletter announcements
A product launch, community call, or sale start date belongs on the reader's calendar, not just in their inbox. Newsletter tools such as Mailchimp and beehiiv let you paste links into buttons; use one button per provider or a single U2L short link that points at the Google link for the majority of readers.
Landing pages and ticket pages
Under the event details on a landing page, an Add to calendar row with the four links converts interest into a saved reminder. Because the links are plain URLs, they work in any CMS or page builder without a script, unlike button widgets that inject JavaScript.
Recurring classes and office hours
Set Repeats to weekly and the Google link carries recur=RRULE:FREQ=WEEKLY while the .ics carries the same RRULE. One click creates the whole series for a yoga class, a support office hour, or a weekly stand-up. Outlook and Yahoo links create a single instance, so send .ics to those audiences.
Printed invitations with a QR code
Print cannot hold five long URLs. Shorten the Google link with U2L, put the short link and a QR code on the card, and guests land on the pre-filled event. For an offline-safe alternative, encode the event itself with /tools/event-qr-code-generator, which embeds the VEVENT in the QR.
Email signatures for consultants
A signature line such as Book the Q4 planning workshop that links to a pre-filled event saves the back-and-forth. Build the signature with /tools/email-signature-generator and paste the calendar link into it; keep the description short so the signature stays compact.
Appointment and booking confirmations
Clinics, salons, and service businesses send the appointment time in a confirmation SMS or email. A calendar link with the address in the location field adds a map pin in Google Calendar; pair it with /tools/google-maps-link-generator for a separate directions link.
Community and school calendars
Parent-teacher evenings, club meetings, and sports fixtures get shared in group chats where a bare date is easy to miss. A short link that opens the event in the recipient's calendar works in WhatsApp, Slack, and Teams alike, and the .ics covers families on iPhone.
Developer prototypes and CMS templates
The parameter reference on this page is enough to template the links in your own code: substitute UTC timestamps into the Google dates pair, ISO timestamps into Outlook startdt and enddt, and wall-clock values into Yahoo. Use the tool to generate a known-good example and diff it against your output.
Add to Calendar Link Generator vs Alternatives
Side-by-side feature and pricing comparison with the top alternatives.
| Feature | U2L | AddEvent | Add to Calendar Button | AddCal (calndr.link) |
|---|---|---|---|---|
| Free, no signup | Varies | |||
| Direct provider URLs (no hosted redirect) | ||||
| Works without a script or web component | Varies | |||
| .ics download for Apple Calendar | ||||
| Recurring events | Google + .ics | Varies | Subscription feeds | |
| Reminder (VALARM) in .ics | Varies | Varies | Varies | |
| Event data stays in your browser | ||||
| Click analytics | Via U2L short link | Varies | Basic |
Add to Calendar Link Generator vs AddEvent
AddEvent is a hosted platform: each event gets a landing page on their domain, an RSVP form, subscription calendars, and analytics, and the links you share point to AddEvent first and to the calendar second. That is the right choice when you need RSVP collection and a team managing dozens of events, and it is priced accordingly.
This generator produces the provider URLs directly. There is no intermediary page, nothing to expire if a subscription lapses, and no account. If you want click counts, shorten the link with U2L and you get analytics on a branded domain without a landing page in the way. AddEvent's pricing and free-tier limits change, so check their pricing page before committing a campaign to it.
Add to Calendar Link Generator vs Add to Calendar Button (open-source web component)
Add to Calendar Button is a free, open-source web component that renders a dropdown button covering Google, Apple, Microsoft 365, Outlook, Teams, and Yahoo, with recurrence, IANA time zone handling, and 44+ languages. It is excellent on websites you control, and its PRO tier adds hosted .ics and RSVP.
It needs a script tag, which rules it out in email, most newsletter tools, and locked-down CMS fields. This page gives you plain links and an HTML snippet that paste anywhere, plus the same UTC conversion logic without loading a library. Use the component on your site and these links everywhere else.
Best Practices
Pick the zone the event happens in, not your own
The time zone selector defaults to your browser zone. If the webinar runs at 10:00 Pacific and you are in London, change the zone to America/Los_Angeles before copying. The tool converts that wall-clock time to UTC, so recipients everywhere see the correct local time in Google and Outlook.
Always include the .ics for Apple users
Apple Calendar has no URL scheme. iPhone and Mac users who click a Google link end up in the Google web app, which is not their calendar. Attach the .ics to the email or host it on your site and label the link Apple Calendar / .ics so those users get the native Add to Calendar sheet.
Put the join link in the description
Google renders simple markup such as <a href> in details, and Outlook renders HTML in body, so a meeting link in the description becomes clickable inside the saved event. Keep it near the top; long descriptions push it below the fold in mobile calendar apps.
Use the exclusive end date rule for all-day events
A one-day all-day event on 1 October is 20261001/20261002 in Google, startdt=2026-10-01 and enddt=2026-10-02 in Outlook, and DTEND;VALUE=DATE:20261002 in .ics. The tool adds the day for you; if you template links yourself, remember it or every all-day event will look a day short or a day long.
Send recurring events to Google and .ics only
Outlook and Yahoo compose URLs have no recurrence parameter, so a weekly class shared through those links becomes a single event. Offer the .ics prominently for series and consider a subscription calendar (webcal) when the schedule changes often.
Keep the link under 2,000 characters
Outlook accepts very long URLs server-side, but email clients, SMS, and QR codes do not. A 300-word description in every link bloats them past what a QR can encode cleanly. Shorten the description and shorten the link itself with U2L for print and chat.
Test each link in a private window
Open the Google, Outlook, and Yahoo links while signed out to confirm the composer loads with the right title and time. Open the .ics on an iPhone to see the native sheet. Do this after any change to the description, since unusual characters are the most common cause of a broken link.
Track the click, not just the send
Email opens do not tell you whether people saved the event. Shorten the calendar links with U2L and you get per-link click counts by day, device, and country, which tells you which provider your audience actually uses and whether the calendar CTA earned its place in the email.
Common Mistakes to Avoid
Dropping the Z from Google dates
Google only treats the dates pair as UTC when both halves end in Z. Without it the times are read in the viewer's zone, so an event set for 14:00 UTC shows as 14:00 local for everyone - wrong for anyone outside UTC.
Adding ctz to an all-day event
A date has no zone. Sending ctz with 20261001/20261002 can make Google shift the event by a day for people far from the named zone. Leave ctz off for all-day events, as the tool does automatically.
Using the same end date as start for all-day events
Google and .ics treat the all-day end as exclusive: Google's own rule is to use the following date as the end for a one-day event. 20261001/20261001 is a zero-length range and does not cover 1 October as intended. The end must be the following day.
Expecting Yahoo to convert time zones
Yahoo has no zone parameter and ignores a trailing Z. Whatever wall-clock time is in st and et is what the recipient sees in their own calendar zone. For international events, point Yahoo users to the .ics instead.
Sending only a Google link to an Apple audience
A Google Calendar link opens the Google web app, and iPhone users without a Google account see a sign-in wall. Include the .ics download and label it clearly so Apple users know which one to tap.
Reusing one UID across many .ics files
Calendar apps treat a repeated UID as the same event and overwrite the earlier one on import. The tool generates a fresh UID per session; if you edit the file by hand for a second event, change the UID too.
Technical Specifications
| Google Calendar | calendar.google.com/calendar/render?action=TEMPLATE&text&dates&details&location&ctz&recur |
| Outlook.com / Office 365 | outlook.live.com and outlook.office.com /calendar/0/deeplink/compose?subject&startdt&enddt&allday&body&location&path&rru=addevent |
| Yahoo Calendar | calendar.yahoo.com/?v=60&title&st&et&dur&desc&in_loc (wall-clock time, no zone parameter) |
| Apple Calendar | .ics file only (RFC 5545 VEVENT, METHOD:PUBLISH); no URL scheme |
| Date formats | Google 20261001T180000Z; Outlook 2026-10-01T18:00:00Z; Yahoo 20261001T180000; all-day date-only with exclusive end |
| Recurrence | RRULE FREQ=DAILY, WEEKLY, MONTHLY in Google recur= and .ics; not available in Outlook or Yahoo links |
| Reminder | .ics VALARM, ACTION:DISPLAY, TRIGGER:-PT<minutes>M |
| Time zones | IANA list from Intl.supportedValuesOf, browser zone preselected; conversion via Intl.DateTimeFormat parts |
| Privacy | Browser-only; nothing is uploaded. Shortening a link with U2L sends only that URL. |
Industry-Specific Use Cases
Webinars and online events
Confirmation emails with all four links plus .ics; use the description for the join URL and shorten the Google link for the reminder SMS.
Education and training
Weekly classes as RRULE series via the .ics, term-start dates as all-day events, and a short link on the course page for parents and students.
Retail and hospitality
Sale launches, tastings, and opening nights as all-day or timed events on posters with a QR that resolves to a U2L short link.
Healthcare and services
Appointment confirmations with the clinic address in the location field, a 60-minute VALARM reminder in the .ics, and no description beyond what is needed.
Frequently Asked Questions
What is an add to calendar link generator?
How do I make a Google Calendar event link?
What is the Outlook calendar link format?
Why is there no Apple Calendar link?
Does the add to calendar link generator handle time zones correctly?
How do all-day events work in these links?
Can I create a recurring event link?
Can I add a reminder to the event?
Why does my Google Calendar link show the wrong time?
Why does the Outlook link open the calendar but not the event?
Why does Yahoo Calendar show the wrong time?
Which email clients support add to calendar links?
Does the HTML snippet work in Mailchimp or HubSpot?
Is it free?
Is my event data uploaded?
Add to calendar link vs .ics attachment: which is better?
How is this different from an event QR code?
How do I track how many people added the event?
Related Free Tools
UTM Builder
Build campaign URLs with UTM parameters to track marketing in Google Analytics. Quick presets for Google Ads, Meta, Email, and more.
Bio Link Generator
Build a free link-in-bio page with unlimited links, analytics, and branding. The flexible Linktree alternative.
Conversion Rate Calculator
Calculate conversion rate, A/B test lift, and significance. Confidence intervals and lift comparisons.
Bitly vs U2L Comparison
Compare Bitly and U2L AI side by side. Pricing, features, custom domains, analytics, and QR codes.
Email Signature Generator
Create a professional email signature with logo, photo, and branded short link. Gmail, Outlook, Apple Mail.
CTR Calculator
Calculate click-through rate from clicks and impressions. Compare campaigns, channels, and keywords.
Key Terms
- iCalendar (.ics)
- The RFC 5545 plain-text format for calendar data. An .ics file with a VEVENT block is the universal way to add an event, and the only way into Apple Calendar from a link.
- RRULE
- A recurrence rule such as FREQ=WEEKLY;COUNT=10. Google accepts it in the recur parameter with an RRULE: prefix; .ics carries it as an RRULE line.
- VALARM
- The .ics reminder component. TRIGGER:-PT15M with ACTION:DISPLAY tells the calendar to alert 15 minutes before the event starts.
- ctz
- Google Calendar's custom time zone parameter. It names the IANA zone the event is saved in; the dates value itself stays in UTC.
- Exclusive end date
- For all-day events, the end value is the day after the last day. A single-day event on 1 October ends on 2 October in Google, Outlook, and .ics.
- IANA time zone
- A zone name like Europe/Paris or Asia/Kolkata from the tz database. Unlike a fixed offset, it encodes DST rules, so the same name gives the correct offset on any date.
Put the calendar link on a branded short URL
Shorten your Google or Outlook calendar link with u2l.ai to get a clean branded link for emails, SMS, and QR codes on print - with click analytics showing which calendar your audience uses. Sign up free.
Sign up free