Occurrence number k
dₖ = d₀ + k × n, for k = 0 … N − 1
Generate an exact number of occurrences from a start date — every 2 weeks, every month, every year… — with the weekday of each date.
Check the start date, the number of dates (1 to 500) and the interval (a whole number of at least 1).
Generated dates
Generated dates
Generated dates
A meeting every other week, a payment on the 31st of each month, a yearly check: when you know the rhythm and how many occurrences you need, but not necessarily the end date, this generator lists them straight away. Enter a start date, a frequency, an interval and the number of dates you want: you get the whole series, numbered, with the weekday of each date — and therefore the date of the last occurrence.
The first occurrence is the start date. Occurrence number k (counting from 0) is the start date shifted by k × interval days, weeks, months or years. The series contains exactly the number of dates requested, up to 500.
A daily or weekly frequency moves by a fixed number of days and so keeps the same weekday. A monthly or yearly frequency keeps the same day of the month; when that day does not exist (the 31st in a 30-day month, 29 February outside a leap year), the occurrence goes on the last day of the month, and the series returns to the original day as soon as possible, because each occurrence is recomputed from the start date.
This differs from the iCalendar standard (RFC 5545) used by calendar apps, which skips an occurrence on a non-existent date without counting it. A “31st of every month” series in a calendar app therefore skips 30-day months, whereas this generator gives the last day of those months, which better matches a payment due date.
It is the first occurrence of the series.
From 1 to 500, including the start date.
1 for every period, 2 for every other period, 3 for every third, and so on.
Daily, weekly, monthly or yearly: the series appears at once with weekdays.
The number of occurrences sets the length of the series; the last date can be computed directly.
dₖ = d₀ + k × n, for k = 0 … N − 1
d(N−1) = d₀ + (N − 1) × n
10 weekly dates span 9 weeks, not 10.
RRULE:FREQ=WEEKLY;INTERVAL=n;COUNT=N
The same series in a calendar app, apart from how non-existent dates are handled.
Ten meetings every other week from a Friday, to announce them all at once.
Twelve monthly instalments from 31 January, with month ends placed correctly.
Service, renewal or contract anniversary dates for the next five years.
Compare the series with your calendar app to understand a difference at month ends.
Three Fridays, 14 days apart.
Input
Start Friday 9 October 2026, 3 dates, interval 2, weeklyResult
9 Oct, 23 Oct, 6 Nov 20262024 is a leap year, so February stops at the 29th; March gets the 31st back. An iCalendar app would give 31 Jan, 31 Mar, 31 May.
Input
Start 31 January 2024, 3 dates, interval 1, monthlyResult
31 Jan, 29 Feb, 31 Mar 202429 February returns in the next leap year.
Input
Start 29 February 2024, 5 dates, yearlyResult
2024-02-29, 2025-02-28, 2026-02-28, 2027-02-28, 2028-02-29Yes. With 10 weekly dates, the tenth falls 9 weeks after the start date.
The occurrence goes on the last day of the month (30 April, 28 or 29 February), then the series returns to the 31st as soon as the month allows it.
Calendar apps follow the iCalendar standard (RFC 5545), which skips occurrences on non-existent dates. A recurrence on the 31st therefore skips 30-day months and February there.
500 per series. For a longer horizon, run the calculation again from the last date you got.
No. A weekly frequency starts on a weekday and keeps it; for working days, use the business days calculator instead.
The date range generator stops at an end date. This one produces a fixed number of occurrences, with no end date to provide.
Related tools
Tools similar or complementary to this one.
List every date between two endpoints, every N days, weeks, months or years.
Add or subtract days, weeks, months or years from a date and get the resulting date with its day of the week.
Build a standard cron expression, understand it and preview its next execution times.
Generate a date range or recurring series for schedules, repeated deadlines and date lists without a spreadsheet.
Date differences, durations, business days, ISO weeks, recurrences and formats: choose the right date and time calculation.
Understand the difference between a clock time and a duration, calculate intervals between times, and convert seconds, minutes, hours, days and weeks.
Learn how to calculate a difference between dates, add or subtract a duration, count days to a deadline, and distinguish calendar days from business days.