rule→ics

Recurring Date Generator

Turn a repeating schedule into real dates, and add them to your calendar.

Using toolbook means you agree to our Terms and Privacy Policy.

On these days

Nothing selected, so the rule repeats on whatever weekday the first occurrence falls on.

Off produces all-day entries, which land on the same date for everyone regardless of time zone.

Set a first occurrence date to generate the series.

Data sent from your device
0 bytes sent

Your files stay on your device

How to use it

Set a first date and how often it repeats, like “the last Friday of every month”, to see every date in the series. Download them all as one calendar file.

“The last Friday of every other month until December” is easy to say and hard to picture. Set the first date and how it repeats, and every date in the series is listed for you to check.

Choose daily, weekly, monthly, or yearly, how often (every 2 weeks, every 3 months…), and when it ends. For monthly, pick “same day number” (like the 15th) or “same weekday position” (like the third Tuesday).

Download the whole series as one .ics file for your calendar, or copy the dates as text.

Heads up: a monthly series on the 31st skips months that don’t have a 31st, just like calendar apps do. The tool lists any skipped months so nothing goes missing quietly.

FAQ

How do I make a list of repeating dates?

Set the first date, choose how often it repeats, and when it ends. The dates appear straight away.

Why did my monthly series skip February?

February has no 30th or 31st. Calendar apps skip those months too, and the tool lists which ones it skipped.

“Same day number” or “same weekday position”?

Day number repeats on, say, the 15th. Weekday position repeats on, say, the third Tuesday.

What is an RRULE?

The standard text version of a repeat rule, like FREQ=MONTHLY;BYDAY=3TU;COUNT=12. Some apps and systems accept it directly.

Why does the file list every date separately?

So every event keeps the right time when the clocks change.

How it worksFor the curious

Expansion follows RFC 5545, the standard calendar apps use: impossible dates are skipped rather than nudged, so a series on the 31st skips short months and a yearly series on 29 February only occurs in leap years.

With “same weekday position”, dates in the last seven days of a month are treated as “last”, so a series starting on the 29th of a 31-day month becomes “the last of that weekday”.

The .ics export writes each occurrence as its own event rather than one event with a repeat rule. A rule-based event needs an embedded VTIMEZONE to keep its local time across daylight saving changes, and hand-built ones are mishandled by importers. The standard RRULE string (e.g. FREQ=MONTHLY;BYDAY=3TU;COUNT=12) is still shown for systems that expand rules themselves. Series are capped at 500 dates.

Related tools