Skip to content

Random Date Generator

Pick random dates from a range you choose. Limit the draw to weekdays, ask for several at once, and output them as ISO, long form, or day-first or month-first numerals.

Category
Generators
Updated
Cost
Free · no sign-up

Up to 100 at a time.

Days to include
Repeats
Format

Your dates

Choose a range and press Generate.

How the range is drawn

Both ends are included, so a start and end of the same day always returns that day. Dates are handled as whole days in UTC from start to finish, which means the date you see is the date that was drawn — no result shifts by a day because of the timezone your browser happens to be in.

Weekdays only, done properly

Asking for weekdays is the common case: scheduling, working-day test data, picking a delivery slot. There are two ways to build it, and only one of them works.

The naive way draws a date, checks whether it landed on a weekend, and tries again if it did. That's fine most of the time and catastrophic occasionally — give it a range that contains only a Saturday and Sunday and it retries forever.

This tool builds the list of weekdays inside your range first and draws from that. A range with no weekdays in it fails immediately with a message, which is the honest answer.

Choosing a format

FormatExampleBest for
ISO2026-08-26Spreadsheets, databases, code
LongAugust 26, 2026Writing and presentation
M/D/Y08/26/2026US-facing documents
D/M/Y26/08/2026Most of the rest of the world

Use ISO anywhere the date will be sorted or parsed. It sorts correctly as plain text, and it's the one format that can't be misread — 03/04/2026 is either March or April depending on who's reading it, while 2026-03-04 is not.

Nothing you generate is transmitted or stored.

How to use the Random Date Generator

Three steps, no sign-up.

  1. Set the range

    Choose a start and end date. Both ends are included, so a range of a single day always returns that day.

  2. Choose the shape of the draw

    Weekdays-only skips Saturdays and Sundays, which is what scheduling and test data usually want. Turn repeats off when every date has to be different.

  3. Pick a format and generate

    ISO (2026-08-26) is the safe choice for spreadsheets and code. Long, M/D/Y and D/M/Y are there for everything else.

Worked examples

A random day this century

Inputs
2000-01-01 to 2026-12-31 · 1 date
Result
2014-03-19 (Wednesday)

Five working days for a test schedule

Inputs
2026-09-01 to 2026-09-30 · 5 dates · weekdays only · all different
Result
2026-09-03, 2026-09-08, 2026-09-15, 2026-09-22, 2026-09-29

A random birthday for sample data

Inputs
1970-01-01 to 2005-12-31 · 1 date · long format
Result
June 11, 1988

Frequently asked questions

Are both the start and end dates included?
Yes. The range is inclusive at both ends, so a start and end of the same day will always return that day.
How does weekdays-only work?
The tool builds the list of weekdays inside your range and draws from that, rather than drawing repeatedly until it happens to miss a weekend. That means a range containing only weekends fails immediately with a message instead of hanging.
Will the date shift depending on my timezone?
No. Dates are handled as whole UTC days throughout, so the result you see is the date that was drawn, wherever you are.
Which format should I use for a spreadsheet?
ISO — 2026-08-26. It sorts correctly as text, is unambiguous internationally, and is the format spreadsheets and databases parse most reliably.