Connect via MCP →

Enter Calculation

Formula

Advertisement

Results

UTC Date & Time (ISO 8601)
2023-11-14T22:13:20Z
Coordinated Universal Time (UTC)
Date (UTC) 2023-11-14
Time (UTC) 22:13:20
Epoch seconds 1,700,000,000
Year 2023
Month 11
Day 14
Hour 22
Minute 13
Second 20

What is an epoch milliseconds timestamp?

A Unix epoch timestamp counts the time elapsed since 1970-01-01 00:00:00 UTC, known as the "epoch." Many programming languages and APIs (JavaScript's Date.now(), Java's System.currentTimeMillis(), and many JSON payloads) express this value in milliseconds rather than seconds. This converter turns that raw number into a clear, human-readable UTC date and time.

Timeline showing the Unix epoch starting at 1970 and milliseconds counting forward
Epoch milliseconds count the time elapsed since the Unix epoch, 1970-01-01T00:00:00Z.

How to use this converter

Paste or type your millisecond timestamp into the input box and submit. The tool divides the value by 1000 to obtain whole seconds, then maps those seconds onto the calendar starting from the epoch. You get the full ISO 8601 string (e.g. 2023-11-14T22:13:20Z) plus a breakdown into year, month, day, hour, minute and second — all in UTC, so the result is unaffected by your local time zone.

The formula explained

The conversion is two simple steps. First, \(\text{seconds} = \left\lfloor \text{ms} / 1000 \right\rfloor\) drops the sub-second remainder. Second, \(\text{date} = \text{epoch} + \text{seconds}\) adds those seconds to midnight on 1 January 1970. Calendar logic handles leap years, varying month lengths and the like automatically.

$$\text{Date}_{\text{UTC}} = \text{Epoch}_{1970}\;+\;\frac{\text{Epoch Time (ms)}}{1000}\ \text{seconds}$$

$$\begin{gathered} \text{Date}_{\text{UTC}} = \text{Epoch}_{1970} + t_{s}\ \text{seconds} \\[1.5em] \text{where}\quad \left\{ \begin{aligned} t_{s} &= \left\lfloor \dfrac{\text{Epoch Time (ms)}}{1000} \right\rfloor \\ \text{Epoch}_{1970} &= \text{1970-01-01T00:00:00Z} \end{aligned} \right. \end{gathered}$$

Diagram converting milliseconds value divided by 1000 into a date and time breakdown
Dividing the millisecond count by 1000 yields seconds, which map to a UTC date and time.

Worked example

Take 1,700,000,000,000 ms. Dividing by 1000 gives 1,700,000,000 seconds. Adding that to the epoch lands on 2023-11-14T22:13:20Z — that is the 14th of November 2023 at 22:13:20 UTC.

$$\text{Date}_{\text{UTC}} = \text{Epoch}_{1970} + \frac{1{,}700{,}000{,}000{,}000}{1000}\ \text{seconds} = \text{Epoch}_{1970} + 1{,}700{,}000{,}000\ \text{seconds} = \text{2023-11-14T22:13:20Z}$$

FAQ

Is the result in my local time? No. To avoid ambiguity, the output is always in UTC (Coordinated Universal Time). Apply your own time-zone offset if you need local time.

What if I have seconds, not milliseconds? Multiply your second-based timestamp by 1000 before entering it, or simply append three zeros.

Why might a timestamp look like a date far in the future or 1970? A value in seconds entered as milliseconds appears near 1970, while a value already in milliseconds entered again with extra zeros lands far in the future. Always confirm your unit is milliseconds.

Last updated: