Timestamp Converter
Convert Unix timestamps (seconds or milliseconds), ISO 8601 strings, and human-readable date forms into every common representation.
Why timestamps are tricky
Most bugs in date handling come from confusing three things: the moment (an instant in time, best stored as Unix seconds or milliseconds), the representation (the string you display it as), and the time zone the representation is rendered in. Mix those up and you'll have a meeting about it sooner or later.
| Form | Example | Notes |
|---|---|---|
| Unix seconds | 1700000000 | Seconds since 1970-01-01T00:00:00Z. 10 digits until year 2286. |
| Unix milliseconds | 1700000000000 | JavaScript's Date uses this internally. |
| ISO 8601 (UTC) | 2023-11-14T22:13:20Z | The "Z" means Zulu / UTC. Preferred for APIs. |
| ISO 8601 (offset) | 2023-11-14T17:13:20-05:00 | Carries the local offset. |
| RFC 1123 | Tue, 14 Nov 2023 22:13:20 GMT | The format used in HTTP Date headers. |
The Year 2038 problem
Systems that store Unix time as a signed 32-bit integer overflow at 03:14:07 UTC on 19 January 2038. Use 64-bit integers — every modern language and database does this by default — and the problem disappears.
FAQ
Should I store time as Unix integers or ISO strings in databases?
Either works. ISO strings are human-readable in raw queries; integers are more compact and indexed predictably. Whichever you pick, store in UTC and convert to local time only at display.
What's the difference between Z and +00:00?
None — both mean UTC. Z is a single character shorthand for the zero offset.