Settings
Generated Dates
Click "Generate Dates" to create random dates
Generate random dates and times
Click "Generate Dates" to create random dates
Anyone who has had to fill a test database with plausible-looking timestamps, or build a training set for a scheduling app, knows the tedium of typing out dozens of fake dates by hand. The Random Date Generator solves that by producing a batch of random dates and times within any range you set, so you can populate mock records, stress-test date-parsing logic, or seed a calendar demo in a few seconds instead of a few minutes of manual entry.
You control the boundaries with a start date and an end date, then choose how many results to generate — anywhere from a single date up to 100 at once. Each result can include a time component if you check the "Include time" option, and the whole batch can be rendered in ISO 8601, US (MM/DD/YYYY), EU (DD/MM/YYYY), or Unix timestamp format. Generated dates come back sorted chronologically, and you can copy an individual entry or the entire list to your clipboard with one click.
Because the random selection is uniform across the full millisecond range between your start and end dates, the results won't cluster suspiciously around round numbers the way hand-picked "random" dates often do — useful if you're generating test data that needs to look genuinely unpredictable. Keep in mind that the end date acts as a cut-off at midnight (in your time zone) at the start of that day: a range of 1 to 31 January returns dates from the 1st to the 30th, so set the end one day later if the last day must be possible.
Set a date range and format, then generate a batch of random dates or timestamps.
Pick the earliest date the generator should be allowed to pick from.
Pick the latest date to bound the range; results will fall somewhere between the two.
Enter a number from 1 to 100 in the "Number of Dates" field.
Select ISO 8601, US, EU, or Unix timestamp format, and check "Include time" if you need clock times as well as dates.
Click "Generate Dates" to produce the sorted list of random results.
Copy a single date with its row's Copy button, or copy the entire batch at once using the copy-all icon.
The end date works as a cut-off at midnight at the start of that day in your time zone, so 2026-02-01 itself is never returned; set the end to the day after your last wanted day to include it. Repeats are possible — see the tips.
The range is 1 September in your own time zone, but ISO output with time is written in UTC (the trailing Z) and keeps milliseconds. West of UTC some values therefore read as 2 September — the instant is the same.
Unix output is always whole seconds and always carries a time of day, whether or not Include time is ticked.