ICS (iCalendar) Event Builder
Generate a downloadable .ics calendar event with title, start/end, location, attendees, recurrence and a reminder — fully RFC 5545 compliant.
Missing required field: Event title
—
All data stays in your browser. The file uses CRLF line endings and 75-byte (UTF-8) line folding per RFC 5545.
How to use
- Fill in the event title, start, and end times (or check 'All day' for date-only events).
- Optionally set location, description, organizer email, comma-separated attendee emails, recurrence, and reminder.
- Copy the .ics text or click Download to save the file, then double-click it to import into your calendar app.
About this tool
ShowHide
Build a single calendar event as a standard RFC 5545 .ics file you can import into Google Calendar, Apple Calendar, Outlook, Fastmail, or any iCalendar-compatible app. Set the title, start and end times (or mark as all-day), location, organizer, attendees, recurrence rule (RRULE), an optional reminder (VALARM), and a URL. The file is generated on the fly and offered as a download — nothing is uploaded.
An .ics file is a description of an event, not an invitation. Importing one puts the event on your own calendar and sends nothing to anybody, so listing attendees records who is expected rather than asking them. Delivering an actual invitation means emailing the file with the iTIP method set to REQUEST, which is what a calendar server does on your behalf and what a downloaded file cannot do by itself.
All-day events are stored as a date without a time, and their end date is exclusive: a single-day event on the 3rd ends on the 4th. Getting that wrong by a day is the most common bug in hand-written iCalendar, and it is why an event authored elsewhere sometimes shows up spanning one day too few. Timed events here carry an explicit zone, which matters because the same wall-clock time means different instants in different places, and an event written without a zone is interpreted as local to whoever opens it.
Recurrence is the part most likely to surprise. RRULE describes a pattern rather than a list, so the client expands it, and clients disagree at the edges: a monthly rule on the 31st skips the months that have no 31st in some and clamps to the last day in others, and a rule ending with UNTIL needs that timestamp in UTC when the start is zoned.
One file, one event. Importing the same file twice usually updates rather than duplicates, because the UID identifies the event, but an app that ignores the UID will happily create a second copy.
Frequently asked questions
How are times stored?
Non-all-day events use DTSTART/DTEND in UTC (suffix Z). Your browser converts the local input to UTC. Most calendar apps will display it back in the recipient's local zone.
What does 'All day' do?
It writes DTSTART;VALUE=DATE and DTEND;VALUE=DATE with the next day (per RFC 5545 — DTEND is exclusive for all-day events). Date-only events ignore time zones entirely.
What recurrence options are supported?
Daily, weekly, every 2 weeks (biweekly), monthly, yearly, and weekdays-only (Mon-Fri). For more complex RRULE patterns (every 3rd Friday, etc.), edit the output directly.
Are attendee emails actually invited?
No — this tool only writes ATTENDEE lines into the file. Sending actual invitation emails requires a calendar server (CalDAV) or email client that processes the .ics attachment as a meeting request.
Related tools
ICS Calendar Viewer & Recurrence Expander
Open an .ics invite or calendar export and read what is actually in it — every field, plus the real dates a repeating rule produces.
File
Mbox Archive Viewer
Split a .mbox archive in your browser: message boundaries, decoded headers, MIME structure, threads and duplicate Message-IDs. Nothing is uploaded.
File
vCard (.vcf) File Parser & Inspector
Drop or paste any vCard 2.1, 3.0 or 4.0 .vcf export and read every contact as a card — names, phones, emails, addresses, photos and custom X- fields.
File
GeoJSON Inspector & Validator (RFC 7946)
Paste or upload GeoJSON and get RFC 7946 validation, per-geometry counts, WGS-84 polygon area, haversine length, bounding box and an SVG preview.
File
File Hash (Checksum)
Compute SHA-1, SHA-256, and SHA-512 checksums of any file.
File
PDF Compressor
Shrink a PDF by re-encoding the images inside it. Text stays selectable and searchable. Nothing is uploaded.
File