What this tool does
Pick one date or a list from any range. By default all calendar days can be selected, including Saturdays, Sundays and holidays. For scheduling, choose Working days only to exclude weekends and the selected country’s public holidays. Copy the result, download CSV or JSON, or share the settings. Set a seed when you need the shared settings to reproduce the same random draw.
Use All calendar days for a draw across an unrestricted date range. Use Working days only when the result needs to avoid days off: the tool applies its built-in holiday rules and lists excluded dates for review. Add regional or company exceptions for your own schedule.
Optional holiday exclusions
When Exclude public holidays is on, the tool uses national or federal holidays for the United States (with observed dates, so a holiday falling on Saturday is taken on Friday), the United Kingdom (England & Wales bank holidays with substitute days), Canada (federal statutory holidays), Australia (national public holidays) and Germany (nationwide gesetzliche Feiertage). Regional days such as US state holidays, Scottish bank holidays or Bavarian feast days are not included by design — paste them into the custom box and they are excluded too.
After each run the tool lists exactly which holidays were skipped in your range, so you can check the calendar it used.
Common uses
- Test data — create dates for fixtures and demos; choose Working days only when a due date must avoid weekends and holidays.
- Sampling and audits — pick 20 dates in a quarter, using the working-day option if your records only cover business days.
- Teaching and teams — draw a deadline or presentation date; enable holiday and weekend exclusions when days off must be avoided.
- Scheduling — choose random dates for reminders or rotations, then review the exclusions for your team.
Tips
Turn on Show weekday to display the weekday of each result; this option changes the output, not which days can be selected. To limit results to Monday–Friday, choose Working days only or use the random weekday generator. Use a seed to reproduce the same draw with the same settings. For a worked example of inclusive date ranges, formats and Excel formulas, see random date between two dates.
How to do this in Excel instead
For any calendar day, use =RANDBETWEEN(DATE(2026,1,1),DATE(2026,12,31)) and format the cell as a date. For working days instead, put holidays in H2:H20 and use =WORKDAY(start-1, RANDBETWEEN(1, NETWORKDAYS(start, end, H2:H20)), H2:H20), with start and end referring to your range. The corresponding mode here is Working days only; the default All calendar days mode does not exclude weekends or holidays.
Frequently asked questions
Can I exclude both weekends and holidays?
Yes. Choose Working days only to exclude Saturday, Sunday and the selected country's national holidays. You can turn either rule off, change which weekdays count as the weekend, and add custom dates.
Which countries are supported?
United States, United Kingdom (England & Wales), Canada, Australia and Germany, at the national or federal level. Regional holidays can be added in the custom dates box.
Are observed holidays handled?
Yes. For the US a holiday that falls on Saturday is excluded on Friday and one on Sunday is excluded on Monday, matching the federal schedule. The UK, Canada and Australia use their substitute-day rules; Germany has no substitute days.
Can I get the same random dates again later?
Enter any text in the Seed field. The same seed with the same settings always returns the same list, and the Share settings button copies a URL that reproduces it.
Is there a limit?
Up to 1,000 dates per run within a range of up to 50 years, between 1900 and 2100. Everything is calculated in your browser.