JWT decoder
Inspect a JWT’s header, payload and time claims locally.
jwtConvert Unix seconds, milliseconds and dates with explicit time zones. Compare UTC and local time, with examples for unit mistakes and 1970 dates.
Choose seconds or milliseconds. Use ISO 8601 with an explicit time zone for dates, such as 2026-09-07T08:00:00Z.
Unix (s): 1788768000
Unix (ms): 1788768000000
UTC: 2026-09-07T08:00:00.000Z
UTC+08:00: 2026-09-07T16:00:00+08:00Paste one value at a time. Multiply seconds by 1000 for milliseconds. This tool floors the Unix (s) output, so that field does not retain the millisecond fraction.
Recent dates often use 10-digit seconds or 13-digit milliseconds, but this is not universal. Values near 1970, negative values and distant dates have different lengths. Follow the API field definition; this tool does not guess units.
A common cause is interpreting seconds as milliseconds. Selecting Milliseconds for 1788768000 produces a date in 1970. Verify the input unit first; treating milliseconds as seconds produces a distant date or an out-of-range error.
No. One instant has the same timestamp regardless of how it is displayed. 08:00Z and 16:00+08:00 represent the same instant. Correct source data only after confirming that its time-zone annotation is wrong.
This tool requires a time and explicit offset to avoid browser-dependent interpretation. Use 2026-09-07T00:00:00Z, or supply the intended time and offset. Impossible dates such as 2026-02-30 are also rejected.
Compare seconds, milliseconds and ISO dates for one instant. Diagnose unit errors, UTC versus local display, and verify a date round trip.
Read guide JWTInspect a three-part JWT, read its header and payload, convert exp seconds to UTC, and separate decoding from signature and permission checks.
Read guide