Check JWT expiry

Check whether a JWT expiration timestamp has passed.

freeworks offlinenothing uploaded
ToolJWT Expiry Checker
Input
Output
Put this on your own site

The frame below runs the same code as this page, in the reader's own browser. Nothing is sent to us, and nothing is sent to you.

Pick a dark background and the text and panels follow it, so the frame stays readable on a dark page.

Preview

How it works

The JWT payload is decoded and its NumericDate expiration claim is compared with a selected current time, optionally accounting for a clock-skew tolerance. The check is local and does not validate the signature, issuer, audience, or revocation state.

  • NumericDate uses seconds since the Unix epoch; skew handles imperfect clocks.

Worked example

Check expired JWT with iat and exp claims
Inspect a JWT from January 2018 to see its expiry status and timestamps
Input
											eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJ1c2VyLTEyMyIsImV4cCI6MTUxNjIzOTAyMiwiaWF0IjoxNTE2MjM4OTIyfQ.abc123
										
Output
												Issued At: 2018-01-18T01:28:42.000Z
Expires At: 2018-01-18T01:30:22.000Z
  Status: EXPIRED (Expired 3141d 11h 14m 53s ago)
											

When to use this

Frontend diagnostics, gateway prechecks, and near-expiry test fixtures inspect JWT dates.

Edge cases

  • A missing expiration claim is not the same as an unexpired token.
  • Milliseconds interpreted as seconds produce a date thousands of years away.
  • A valid future expiry does not make an unsigned token trustworthy.

References