Discord Timestamp Generator
Make Discord timestamps that show in every reader's own time zone. Pick a date or a countdown, preview each format live and copy the code in one click.
Discord codes
Previews show what Discord displays in English (US) in your time zone. Every reader sees their own time zone and language.
Countdown to an event
Enter how long until the event starts. The R code shows every reader a live countdown, such as “in 2 hours”, that turns into “2 hours ago” once the event has started.
Decode a timestamp
How to use it
- Pick the date and time of your event. The time zone starts as yours; change it when the time was announced somewhere else, for example “8 PM New York time”.
- Copy the code for the style you like and paste it into a Discord message. Everyone who reads it sees the time converted to their own time zone and language.
- For an event that starts a set time from now, use Countdown to an event: enter days, hours and minutes and copy a ready-made countdown.
- To check a timestamp someone else posted, paste it into the decoder. It also accepts a whole message, a plain Unix time, or a Discord ID (message, user or server) and tells you when that ID was created. If a code would show up as plain text, it tells you why.
What each style letter means
The code looks like <t:1618953630:F>: a Unix time in seconds, then an
optional style letter. Letters are case-sensitive. Examples below are for
1618953630 as a US reader in Central time sees it:
| Code | Name | Shows as (English, US) |
|---|---|---|
t |
Short time | 4:20 PM |
T |
Medium time | 4:20:30 PM |
d |
Short date | 04/20/2021 |
D |
Long date | April 20, 2021 |
f |
Long date, short time | April 20, 2021 at 4:20 PM |
F |
Full date, short time | Tuesday, April 20, 2021 at 4:20 PM |
s |
Short date, short time | 04/20/2021, 4:20 PM |
S |
Short date, medium time | 04/20/2021, 4:20:30 PM |
R |
Relative | 3 hours ago, in 2 days |
Leaving the letter out, as in <t:1618953630>, gives the same result as f.
The s and S styles are newer additions to Discord’s documented styles,
so check that they render in your app before relying on them. Readers with
a different language setting see their own format: English (UK) uses a
24-hour clock and day-first dates.
How it works
A Discord timestamp stores a single moment as the number of seconds since
1 January 1970 UTC, known as Unix time. Earlier moments are negative
numbers: the Moon landing, 20 July 1969 at 20:17:40 UTC, is
<t:-14182940:F>. The code carries no time zone at all:
each reader’s app formats that moment in their own time zone. The time zone
you choose here is only used to turn the clock time you typed into that
number.
Around daylight saving changes some clock times happen twice and some never happen. For a repeated time the generator uses the first occurrence; for a skipped time (such as 2:30 AM on a spring-forward night) it moves forward by the length of the gap, and it tells you when either happens.
Countdowns for events
The R style is the one to use for anything upcoming: each reader’s app
recalculates it, so “in 2 hours” counts down by itself and becomes
“2 hours ago” once the moment has passed. On its own it can be vague (“in
a day” covers about 22 to 36 hours), so pair it with a clock time for events
later today, <t:1618953630:t> (<t:1618953630:R>), or with the full date
for later days, <t:1618953630:F> (<t:1618953630:R>). The countdown
helper builds both and can round the start to a clean time, such as the
nearest quarter hour.
Tips
- Discord expects seconds. JavaScript’s
Date.now()returns milliseconds, so divide by 1000 first. A 13-digit number pasted into<t:...>does not show the date you meant. - Bots can build the same codes: discord.py has
discord.utils.format_dt(dt, style="R"), and discord.js has thetime()helper withTimestampStyles. - To find when a message was sent, turn on Developer Mode in Discord’s settings, choose Copy Message ID and paste the ID into the decoder. The creation time is stored in the ID itself: the top 42 bits are milliseconds since the start of 2015.
Frequently asked questions
Will everyone see the time in their own time zone?
Yes. The code only contains a Unix time, and each reader’s Discord app shows it in their own time zone and language. Nobody needs to convert anything.
Why does my timestamp show the wrong time?
Usually the time was entered in the wrong time zone, or a millisecond value was used where Discord expects seconds. Paste the code into the decoder to see the exact moment it points to.
Can I choose a 12-hour or 24-hour clock?
Not in the code itself. Each reader sees the clock style that goes with their own Discord language, for example 4:20 PM in English (US) or 16:20 in English (UK).
Is anything I enter sent to a server?
No. The codes and previews are made by JavaScript in your browser. Nothing you type or paste, including message text and Discord IDs, is uploaded or stored.
Why does my timestamp show up as plain text in Discord?
Discord only converts the exact form <t:1618953630> or <t:1618953630:R>, with no spaces, a whole number of seconds and one of the style letters in the table above. Anything else, such as a decimal point, a space after the colon or an unknown letter, is shown exactly as typed, and so is a code inside backticks or a code block. Copy the code from the generator and paste it outside any formatting.