Skip to content
Numbers & Chance

Random Date Generator

Generate random dates between any two dates — in ISO, US, European, long-form or Unix-timestamp format.

  • 100% free
  • Runs in your browser
  • No sign-up
  • CSV · JSON · TXT export
Options

Tip: press Enter or Space to generate again.

Ready

What is the Random Date Generator?

Choose a start and end date and RandNow picks uniformly distributed moments in between, also showing the weekday. Switch formats to match your database (ISO 8601), your users (MM/DD/YYYY or DD/MM/YYYY) or your API (Unix seconds).

When you generate birthdays for test records, choose a range that matches the ages your app accepts. For adults aged 18 to 65, set the start date 65 years before today and the end date 18 years before today. Narrow ranges are useful too: a single month produces believable order dates for a sales demo, and a range that includes February 29 of a leap year checks that your code handles that day. Because each result shows its weekday, weekend dates are easy to spot when a scenario only allows working days.

How to use the Random Date Generator

  1. Adjust the options above to match what you need.
  2. Press Generate (or hit Enter / Space) to create fresh results instantly.
  3. Click any result to copy it, or use Copy all.
  4. Download everything as CSV, JSON or TXT, or share a link with your settings.

Popular uses

  • Test data — birthdays, order dates and timestamps.
  • Historical games — “what happened on this day?” challenges.
  • Scheduling — pick a random date for an event.

Why use RandNow?

  • Instant & unlimited — no sign-up, no daily caps.
  • Private by design — results are generated in your browser, not on our servers.
  • Export-ready — copy, CSV, JSON and TXT downloads built in.
  • Cryptographically random — powered by the Web Crypto API.

Date formats at a glance

ISO 8601 writes dates as YYYY-MM-DD. It is unambiguous and has a handy side effect: sorting the text alphabetically also sorts it chronologically, which is why databases and file names love it. Slash formats are riskier — 03/04/2025 means March 4 in the United States but 3 April in much of Europe, so always state which convention you use. A Unix timestamp counts the seconds since 00:00 UTC on 1 January 1970; systems that still store it as a signed 32-bit number will overflow on 19 January 2038.

Edge cases worth testing

Leap years follow a three-part rule: a year divisible by 4 is a leap year, except century years, which only count when divisible by 400 — so 2000 was a leap year but 1900 was not. Check the last day of each month, the switch from December 31 to January 1, and dates before 1970, which become negative timestamps. Time zones matter as well: the same moment can fall on different calendar days in Tokyo and Los Angeles. Set your range, pick a format and press Generate to fill your test set.

Frequently asked questions

What range can I use?

Any range your browser supports — roughly 271,000 years either side of 1970.

Which formats are available?

YYYY-MM-DD, MM/DD/YYYY, DD/MM/YYYY, “Month D, YYYY” and Unix timestamp.

Are dates uniformly distributed?

Yes, every moment in the range is equally likely.

Which format should I use for a database?

ISO 8601 (YYYY-MM-DD) is the safest choice: it is unambiguous, widely supported and sorts correctly as plain text.

Can I generate dates before 1970?

Yes. Earlier dates work in every format; as Unix timestamps they simply appear as negative numbers.

Need random data? Get it now.

Pick any of 144 generators, hit Generate and copy or export the results as CSV, JSON or TXT. No account, no limits, nothing stored.

Start generating — free