ICS File Generator: Calendar Event and Google Calendar Link
Enter a title and a date to make an .ics file you can import into any calendar app, plus a link that adds the event to Google Calendar. Repeating events, reminders before the start, and all-day events are supported. Everything is built in your browser, and nothing you enter is sent to a server. To convert a date to a number, try the Unix Timestamp Converter.
🔒 Runs in your browser · Your data is never sent to a server
How to use
- Enter a "Title" and the start and end date and time (turn on "All-day event" for a full-day entry).
- Set "Repeat" and "Add a reminder" if you need them.
- Press "Download .ics" and open the saved file in your calendar app. For Google Calendar you can also use "Open in Google Calendar".
Notes
- "Use a time zone (TZID)" does not embed a VTIMEZONE definition. Google, Apple and Outlook understand standard IANA names, but older apps may shift the time. For the safest result, choose "Convert to UTC".
- With "None", the event happens at that clock time in the local time of whoever imports it.
- Google Calendar links cannot carry a reminder. Use the .ics file if you need a notification.
- Apps handle reminders differently and some ignore them on import.
- Monthly repeats use the same day of the month as the start date, and yearly repeats the same month and day. Months without that day (such as the 31st) may be skipped.
- Importing the same file more than once can create duplicates. A new UID is generated each time.
Glossary
ICS (iCalendar)
A text format for exchanging events, defined in RFC 5545. Files use the .ics extension and can be imported by Google Calendar, Apple Calendar, Outlook and many other apps.
RRULE
The property that describes how an event repeats. For example, FREQ=WEEKLY;BYDAY=MO,WE;COUNT=10 means every Monday and Wednesday, 10 times.
VALARM
The definition of a reminder (alarm) attached to an event. TRIGGER:-PT15M means notify 15 minutes before the start.
Floating time
A date and time without a time zone. It is read as the same wall-clock time wherever the file is opened.
FAQ
How do I add the generated ICS file to my calendar?
Open the downloaded .ics file, or import it from Google Calendar (Settings > Import & export), Outlook (File > Open & Export) or the Files/Mail app on iPhone. The import happens inside your own device and app.
Why does the event import at the wrong time?
It is usually the time zone setting. "None" uses the local time of whoever imports the file. "Use a time zone (TZID)" does not include a VTIMEZONE definition, so older apps may not understand it. Choose "Convert to UTC" to point to the same instant in every app.
How is the end date of an all-day event handled?
Enter the last day of the event. The ICS standard stores the end of an all-day event as the day after the last day, so the file adds one day to DTEND automatically.
How do I stop a repeating event after a while?
Under "Ends", choose "After a number of times" or "On a date". The count can be up to 999. With a date, occurrences up to the end of that day are included.
Can the Google Calendar link include a reminder?
No. The link can carry the title, time, location, description and recurrence only. Import the .ics file to include a reminder, or add one in Google Calendar afterwards.
Share this page
