A Unix timestamp in milliseconds is the number of milliseconds since 1970-01-01T00:00:00Z. It is the native time unit in JavaScript: Date.now() and Date.prototype.getTime() both return milliseconds, which is why millisecond timestamps show up constantly in web logs, APIs and front-end code. This converter decodes those values into readable dates and encodes dates back into milliseconds, all locally.
How it works
JavaScript’s Date constructor already takes milliseconds, so decoding is direct:
const date = new Date(epochMilliseconds);
date.toISOString(); // UTC ISO-8601
To encode a date-time back to milliseconds, the tool parses the string and reads getTime() directly — no scaling needed.
A present-day millisecond timestamp is about 13 digits (for example 1700000000000). If your value is only ~10 digits it is in seconds, and you should use the seconds converter so the date is not off by ~50 years.
Tips and notes
- Sub-second precision (the final three digits) is preserved in the millisecond field.
- Negative values represent dates before the 1970 epoch.
- Store and transmit the UTC ISO-8601 form; use the local form only for display.