Date Format Converter Online Free

⏰ Date and Time Free Forever

Date Format Converter Online Free

Paste any date and convert it to DD/MM/YYYY, ISO 8601, US format, long format, Unix timestamp and more, all at once.

Enter any date Paste any date in any common format — the tool detects it automatically.
or try an example:
Could not parse that date. Try a format like 2024-06-15, 15/06/2024, or June 15, 2024.
Enter a date above to see all formats
About This Tool

Every date format, from one input, plus a straight answer on the 03/04/2024 problem

Paste a date in almost any shape and this tool converts it into seventeen formats at once: ISO 8601, regional slash formats, long form English, ordinals, Unix timestamps, week numbers, quarters and day of year. Every row has a copy button. Nothing leaves your browser.

03/04/2024
Most of the world reads3 April 2024. Day first, then month. This is the convention across Europe, India, Australia, Latin America and Africa.
The United States reads4 March 2024. Month first. Also used in the Philippines and in parts of Canada.

There is no way to resolve that from the string alone. So the parser applies a rule you can predict rather than a guess you cannot: if the first number is above 12 it must be a day, if the second is above 12 it must be a month, and if both are 12 or under it assumes day first. Enter 2024-03-04 instead and there is nothing to resolve. That is the whole argument for ISO 8601.

What the parser accepts

Input is tested against ordered patterns, most specific first, with the native Date constructor as a last resort fallback.

PatternExampleNotes
YYYY-MM-DD2024-06-15ISO 8601 calendar date, unambiguous
YYYYMMDD20240615ISO basic format, common in filenames and EDI
DD/MM/YYYY15/06/2024Also accepts dot and hyphen separators
MM/DD/YYYY06/15/2024Detected when the second number exceeds 12
YYYY/MM/DD2024/06/15Year first, no ambiguity possible
Month D, YYYYJune 15, 2024Full or three letter month names
D Month YYYY15 June 2024British long form
10 digit integer1718409600Unix seconds
13 digit integer1718409600000Unix milliseconds
Anything elseSat Jun 15 2024Handed to Date.parse, which handles RFC 2822 style strings
1 MatchRegex tests run in order. First hit wins, so specific patterns are checked before loose ones.
2 ConstructA local Date is built from explicit year, month and day arguments. Month is zero indexed in JavaScript, so June is 5.
3 ValidateAn invalid date produces NaN from getTime. That fails the check and the parser moves on to the next pattern.
4 FormatSeventeen output strings are built from the components, plus week number, quarter and day of year.

Why the native Date constructor is a poor first choice

You might expect new Date(string) to handle everything. It does not, and the failures are subtle.

// treated as UTC midnight, then rendered in local time new Date(‘2024-06-15’) // in New York this prints Jun 14 2024 20:00:00 // treated as LOCAL midnight, one character difference new Date(‘2024/06/15’) // prints Jun 15 2024 00:00:00 // explicit components, always local, never surprising new Date(2024, 5, 15)

That first case is the classic off by one day bug, and it burns people constantly. The ECMAScript spec mandates it: date only ISO strings are UTC, date and time strings without an offset are local. This tool sidesteps the whole issue by always constructing from explicit numeric components.

Format token reference

If you are building the format string yourself, these are the tokens most libraries share. Note that Unicode LDML is the standard nearly all of them follow.

YYYYFour digit year
YYTwo digit year
MMMMFull month name
MMMThree letter month
MMMonth, zero padded
MMonth, no padding
DDDay, zero padded
DoOrdinal day, 1st 2nd 3rd
ddddFull weekday name
dddShort weekday
DDDDay of year
QQuarter, 1 to 4
WISO week number
XUnix seconds
xUnix milliseconds
ZUTC offset

Watch out for the capital letters. In LDML and in most libraries, YYYY is the week based year and yyyy is the calendar year. They differ for a few days each January. This caused a wave of production bugs on 29 December 2014 and again on 30 December 2018, when developers formatting with YYYY saw the year jump forward.

The ordinal suffix rule

English ordinals look simple until you hit the teens. The tool uses the standard modulo trick.

// 1st 2nd 3rd 4th … but 11th 12th 13th suffix(n) { var s = [‘th’,‘st’,‘nd’,‘rd’], v = n % 100; return n + (s[(v – 20) % 10] || s[v] || s[0]); }

The v % 100 isolates the teens so 11, 12 and 13 fall through to th. Everything from 20 upward wraps back to the single digit rule.

Regional conventions, at a glance

LocaleShort formWhere
en-GB15/06/2024UK, Ireland, Australia, New Zealand, India, most of Europe
en-US6/15/2024United States, Philippines
de-DE15.06.2024Germany, Austria, Switzerland, Nordics
ja-JP2024/06/15Japan, China, Korea, Hungary
ISO 86012024-06-15Databases, APIs, logs, anything machine read
// let the browser do regional formatting for you new Intl.DateTimeFormat(‘en-GB’, { dateStyle: ‘long’ }) .format(new Date(2024, 5, 15)); // 15 June 2024

Related references and libraries

  • ISO 8601 is the international standard. Store dates this way and sort order matches chronological order for free, since the string sorts lexicographically.
  • RFC 3339 is the stricter internet profile of ISO 8601 used by JSON APIs. It always requires a time zone offset.
  • Intl.DateTimeFormat is built into every modern browser and handles locale aware output without a library.
  • date-fns format and Luxon toFormat cover token based formatting in JavaScript.
  • strftime is the C style token set used by Python, PHP, Ruby and shell tools. Different tokens, same idea.
  • Date format by country maps the day first and month first split geographically.

Common jobs this solves

Cleaning up a CSV export where dates arrived in three formats, converting a US spreadsheet for a European system, generating a filename safe compact date, feeding a legacy API that wants Unix seconds, reconciling a log timestamp against a report, and writing a date in long form for a letter without second guessing the comma placement.

Common Questions

Questions About Date Format Converter Online Free

ISO 8601 is the international standard for representing dates and times. Dates are written as YYYY-MM-DD (e.g. 2024-06-15). It is unambiguous and sorts correctly as a string, which is why databases, APIs, and programming languages use it by default.

Paste your date in the input field. If the day is above 12 (e.g. 25/06/2024), the tool detects it as DD/MM and converts it automatically. For dates where the day is 12 or below and ambiguous (e.g. 06/05/2024), the tool defaults to the international DD/MM convention. You see both MM/DD/YYYY (US) and DD/MM/YYYY as separate output rows.

Yes. The output includes both Unix timestamp in seconds (used by most systems) and in milliseconds (used by JavaScript). You can also paste a Unix timestamp as the input and convert it to any readable date format.

The tool accepts: ISO 8601 (YYYY-MM-DD), compact ISO (YYYYMMDD), DD/MM/YYYY with slash, dash or dot, MM/DD/YYYY, YYYY/MM/DD, long formats (June 15 2024, 15 June 2024, Jun 15 2024), Unix timestamps in seconds or milliseconds, and most RFC date strings.

This tool converts one date at a time — paste a value, copy the format you need. For bulk conversion across hundreds of rows, use a spreadsheet formula or a scripting approach. For single lookups, form-filling, and confirming the right format to use, this tool is the fastest option.

From the blog

Date and time, explained properly

Longer write ups on the calendar problems these tools solve, from ISO week numbering to scheduling across time zones.

Privacy Overview

Cookies let this site remember your preferences and show us which tools people actually use. Full detail sits in our Privacy Policy.