Skip to content
cliplimeClipLime

Epoch converter: epoch time to date

Epoch time in seconds or milliseconds to a date, plus the same moment on the clocks other systems use.

Runs in your browser, nothing is sent anywhere

Right now

Unix seconds

...

Unix milliseconds

...

Reading the clock...

Time zone

Used for the readable date on the left, and for dates on the right that have no offset of their own. UTC is always shown.

Timestamp to date

Seconds, milliseconds, microseconds or nanoseconds since 1970-01-01 UTC.

Unit

Type a timestamp to see the date.

Date to timestamp

ISO 8601 like 2023-11-14T22:13:20Z, or 2023-11-14 22:13:20, or an RFC 2822 date. Without an offset it is read in UTC.

Type a date to get its timestamp.

The year 2038 problem

Many older systems keep Unix time in a signed 32-bit integer. The largest value it can hold is 2147483647, which is 2038-01-19 03:14:07 UTC. One second later the number wraps to a negative value, which reads as 1901-12-13. Systems with 64-bit time, such as 64-bit builds of Linux, macOS and Windows, and JavaScript, are not affected. Unsigned 32-bit time lasts until 2106-02-07.

At a glance

What it does
Converts epoch time to a human readable date and back, then shows the same moment on six other clocks.
Other epochs
Windows FILETIME, .NET ticks, Apple absolute time, Chrome time, Excel serial date and Julian date, next to Unix seconds and milliseconds.
Units
Seconds, milliseconds, microseconds and nanoseconds, guessed from the digits or set by you.
Time zones
UTC and every IANA time zone your browser knows, with daylight saving applied.
Reads
Plain numbers, ISO 8601, RFC 2822 and dates like 2023-11-14 22:13:20.
Live clock
The current epoch time in seconds and milliseconds, with a pause button.
Privacy
Runs in your browser. Nothing you enter is sent anywhere.

How to do it

  1. 1

    Enter the epoch value

    Paste the number from your log, API response or database column. Commas and underscores are ignored.

  2. 2

    Check the unit

    Auto mode guesses seconds, milliseconds, microseconds or nanoseconds from the number of digits. The page says what it chose, and you can override it.

  3. 3

    Open the other clocks

    Expand The same moment on other clocks to see Windows FILETIME, .NET ticks, Apple time, Chrome time, the Excel serial date and the Julian date.

  4. 4

    Convert back if you need to

    Type a date in the right panel to get its epoch value in seconds, milliseconds and microseconds.

Epoch time counts from an agreed starting point

An epoch is the moment a clock starts counting from. When people say "epoch time" they almost always mean the Unix epoch, 1970-01-01 00:00:00 UTC. Other systems picked different starting points and different tick sizes, which is why the same moment has several epoch values:

  • Unix: seconds since 1970-01-01 UTC. Used by Linux, macOS, most APIs and many databases. JavaScript and Java count the same epoch in milliseconds.
  • Windows FILETIME: 100 nanosecond ticks since 1601-01-01 UTC. It appears in NTFS timestamps and in Active Directory fields such as lastLogon and pwdLastSet.
  • .NET ticks: 100 nanosecond ticks since 0001-01-01 00:00:00. This is the value of DateTime.Ticks in C#.
  • Apple absolute time: seconds since 2001-01-01 00:00:00 UTC. Cocoa and Core Data dates use it, for example timeIntervalSinceReferenceDate.
  • Chrome and WebKit time: microseconds since 1601-01-01 UTC. Chrome stores history and cookie times this way.
  • Excel serial date: days since 1899-12-30 for the 1900 date system, with the time as a fraction of a day. Excel wrongly treats 1900 as a leap year, so serial numbers before 1900-03-01 are one day off from this count.
  • Julian date: days since noon on 1 January 4713 BC in the Julian calendar, used in astronomy. 1970-01-01 00:00 UTC is JD 2440587.5.

The rows on this page work in whole milliseconds, so FILETIME and .NET tick values are exact to the millisecond but not finer.

Epoch milestones worth recognising

Round epoch numbers are easy to spot in logs and test data:

  • 0: 1970-01-01 00:00:00 UTC, the epoch itself.
  • 1000000000: 2001-09-09 01:46:40 UTC, sometimes called the Unix billennium.
  • 1234567890: 2009-02-13 23:31:30 UTC.
  • 1700000000: 2023-11-14 22:13:20 UTC.
  • 2000000000: 2033-05-18 03:33:20 UTC.
  • 2147483647: 2038-01-19 03:14:07 UTC, the last second a signed 32-bit integer can hold.

Paste any of them to check, or use the example buttons above the result. Values far above these, such as 13-digit numbers, are normally milliseconds.

Converting epoch time outside this page

In a spreadsheet, put the epoch seconds in cell A1 and use =A1/86400+DATE(1970,1,1), then format the cell as a date and time. For milliseconds divide by 86400000 instead. The result is in UTC.

In SQL, PostgreSQL has to_timestamp(1700000000), MySQL has FROM_UNIXTIME(1700000000) and SQLite has datetime(1700000000, 'unixepoch'). In PowerShell, [DateTimeOffset]::FromUnixTimeSeconds(1700000000) returns the date. On Linux, date -u -d @1700000000 does the same.

Questions people ask

What is epoch time?

Epoch time is a count of time units since a fixed starting moment. Usually it means Unix time: the seconds since 1970-01-01 00:00:00 UTC.

What is the current epoch time?

The Right now card at the top of the page shows it in seconds and in milliseconds and updates as you watch. Press Pause to freeze it and copy a value that holds still.

Is epoch time the same as Unix time?

Usually, yes. People use "epoch time" for Unix time, in seconds or in milliseconds. Strictly, many systems have their own epoch, such as Windows with 1601 and Apple with 2001, and this page converts between them.

How do I convert epoch time to a date in Excel?

For seconds, use =A1/86400+DATE(1970,1,1) and format the cell as a date and time. For milliseconds use =A1/86400000+DATE(1970,1,1). The result is in UTC, so add or subtract your offset in hours divided by 24 to get local time.

Which epoch does Windows use?

Windows file times and Active Directory timestamps (FILETIME) count 100 nanosecond ticks from 1601-01-01 UTC. The .NET DateTime type counts ticks from 0001-01-01. The page shows both for any moment you enter.

Why does my epoch value show a date in 1970?

A date in January 1970 usually means a number in milliseconds or microseconds was read as seconds, or a value in seconds was divided by 1000 by mistake. Set the unit by hand, or check how many digits the number has: 10 is seconds and 13 is milliseconds.