Random Date Generator
Generate random dates between any two dates, with leap years handled correctly.
Every day between the two dates (inclusive) is equally likely. Leap years follow the Gregorian calendar.
About this tool
Pick random dates between a start date and an end date (both included) for test data, games, scheduling ideas or sampling. Every day in the range is equally likely and leap years follow the Gregorian calendar. Choose ISO (2026-10-07), long (7 October 2026) or US (10/07/2026) format and optionally sort the results.
Frequently asked questions
Yes. Each date is turned into a day number, a whole day is picked uniformly between the start and end (both included), and then converted back. For 1 January–31 December 2026 (365 days) each date has a 1 in 365 chance, about 0.27%.
The Gregorian rule is used: a year is a leap year if it is divisible by 4, except century years, which must be divisible by 400. So 2024 and 2000 have a 29 February, while 1900, 2026 and 2100 do not. The year 2024 has 366 days.
February has only 28 days (29 in a leap year), and April, June, September and November have 30. If you enter a day that does not exist, such as 31 February or 29 February 2026, the tool tells you instead of guessing.
ISO 8601 (YYYY-MM-DD, e.g. 2026-10-07) sorts correctly as text and is best for spreadsheets and code. "7 October 2026" is unambiguous for people, while US format (10/07/2026) puts the month first.
Related tools
Random Number GeneratorGenerate random numbers in any range — one or many, unique or with repeats.UUID GeneratorGenerate random version 4 UUIDs (GUIDs) in bulk — lowercase, uppercase, with or without hyphens.List RandomizerShuffle any list into a random order — names, tasks, songs or turn order.Random Time GeneratorPick random times of day within a time window — in 24-hour or 12-hour format, at any interval.