Random Date Generator

Uniformly random calendar dates between two years, one at a time or in bulk

Range

Result

-

Batch generate

Nothing here is ever sent anywhere, every date is picked locally using the browser's cryptographic random number generator.

About this tool

This tool picks a random point in time between January 1st of your start year and January 1st of the year after your end year, then converts that timestamp back into a calendar date, which means every day in the range, including your end year's full 365 (or 366) days, has a genuinely even chance of coming up. It's useful for generating test data, picking a random due date, seeding a fake dataset, or settling on a random anniversary or event date within realistic bounds. You can pull a single date or generate a batch at once, in ISO, US, or locale-friendly format.

Is every date in the range equally likely, including leap years?

Yes, the tool picks a uniformly random instant across the full millisecond span of the range and then converts it to a date, so years with 366 days (leap years) naturally get one extra equally-likely day rather than being skipped or under-weighted.

Can I generate dates within a single specific year only?

Yes, set both the start year and end year to the same value and every generated date will fall somewhere within that one calendar year.

Does this include a time of day, or just the date?

Just the date. Internally a random moment in time is used to land on a day fairly, but the time-of-day component is discarded before display, the output is always a calendar date like 2014-01-05.