epochkit

Discord Timestamp Generator

Generate <t:UNIX:F> syntax for Discord messages. All 9 formats, instantly.

A Discord timestamp is chat markup in the form <t:UNIX:STYLE> — a Unix timestamp in seconds plus a single-letter style token — that Discord renders as a formatted date, time, or live countdown in each viewer's local timezone. This generator converts any date, time, and timezone into ready-to-paste syntax for all nine styles.

Short Time Time only
t
epochkit BOT Today at 12:00

Event starts 12:29 PM

<t:1785673776:t>
Medium Time Time with seconds
T
epochkit BOT Today at 12:00

Event starts 12:29:36 PM

<t:1785673776:T>
Short Date Numeric date
d
epochkit BOT Today at 12:00

Event starts 8/2/26

<t:1785673776:d>
Long Date Written month
D
epochkit BOT Today at 12:00

Event starts August 2, 2026

<t:1785673776:D>
Long Date, Short Time Default format
f
epochkit BOT Today at 12:00

Event starts August 2, 2026 at 12:29 PM

<t:1785673776:f>
Full Date, Short Time Weekday + date + time
F
epochkit BOT Today at 12:00

Event starts Sunday, August 2, 2026 at 12:29 PM

<t:1785673776:F>
Short Date, Short Time Numeric date + time
s
epochkit BOT Today at 12:00

Event starts 8/2/26, 12:29 PM

<t:1785673776:s>
Short Date, Medium Time Numeric date + seconds
S
epochkit BOT Today at 12:00

Event starts 8/2/26, 12:29:36 PM

<t:1785673776:S>
Relative Countdown or elapsed
R
epochkit BOT Today at 12:00

Event starts less than a minute ago

<t:1785673776:R>

How to use

1

Pick a date and time

Use the date and time inputs above, or click Now to use the current moment.

2

Choose your timezone

Select the timezone the event is happening in. Discord converts automatically for each viewer.

3

Copy and paste

Click the copy button on any format card and paste the <t:...> syntax directly into Discord.

Why Discord timestamps are timezone-aware

Discord timestamps are timezone-aware because the <t:UNIX:STYLE> syntax stores a Unix timestamp — the count of seconds since January 1, 1970 UTC — rather than any local wall-clock time. Every Discord client, whether desktop, mobile, or browser, reads that UTC-anchored value and renders it using the viewer's own device timezone and locale; the sender's timezone never travels with the message, and Discord never needs to store it. The same message therefore shows "Saturday, May 9, 2026 6:00 PM" to a reader in New York and "Sunday, May 10, 2026 7:00 AM" to a reader in Tokyo — both correct, with no conversion by anyone. This makes the syntax the reliable way to announce events in international servers: you set the time once, in whatever timezone you work in, and every member sees their own local equivalent instead of asking "is that EST or UTC?" in the replies.

The nine style tokens — t, T, d, D, f, F, s, S, and R — control what the rendered timestamp includes. Lowercase t shows a short time such as 5:52 AM, while uppercase T adds seconds. d and D cover numeric and written dates for deadlines where the time is irrelevant. f is Discord's default long date with short time, and F prepends the full weekday name — use it for events where ambiguity about the day is costly. s and S combine the compact numeric date with short or seconds-precision time — the most space-efficient way to show both. R is the relative style: it renders phrases like "in 3 hours" or "5 minutes ago" and updates live while the message is on screen, which makes it the standard choice for countdowns to releases, deadlines, and maintenance windows.

Discord timestamp style reference

Every style uses the same <t:UNIX:STYLE> wrapper; only the single-letter token changes. Example outputs use the Unix value 1778406728 — Sunday, May 10, 2026 at 09:52:08 UTC — as rendered for a viewer in New York (EDT).

Token Description Example output
t Short time 5:52 AM
T Medium time 5:52:08 AM
d Short date 5/10/26
D Long date May 10, 2026
f Long date, short time May 10, 2026 at 5:52 AM
F Full date, short time Sunday, May 10, 2026 at 5:52 AM
s Short date, short time 5/10/26, 5:52 AM
S Short date, medium time 5/10/26, 5:52:08 AM
R Relative in 3 hours (updates live)

Common issues with Discord timestamps

Most Discord timestamp problems trace back to the Unix value. Discord expects whole seconds, so a current timestamp is 10 digits long; a 13-digit value came from a milliseconds API such as JavaScript's Date.now() and must be divided by 1000 — Math.floor(Date.now() / 1000) — before it will render. If the syntax appears literally as <t:...> instead of a formatted time, check where you pasted it: Discord renders timestamps in message content and embed descriptions and fields, but not in embed titles, author fields, or footers. A time that is off by exactly one hour usually means the value was calculated in local time on the wrong side of a daylight saving transition rather than in UTC. And a relative timestamp that immediately shows "less than a minute ago" means the Unix value is already in the past — recheck the intended date and timezone offset.

Frequently asked questions

What is a Discord timestamp?

A Discord timestamp is a special syntax — <t:UNIX:FORMAT> — that Discord renders as a formatted date or time, automatically adjusted to each viewer's local timezone. Instead of writing "the meeting is at 3 PM EST", you write a timestamp and everyone sees the correct time for their location.

Why does the time look different to other people?

That is the whole point. Discord renders <t:...> tags in each viewer's own timezone. A timestamp set to 18:00 UTC+0 will show "6:00 PM" to someone in London, "2:00 PM" to someone in New York, and "3:00 AM next day" to someone in Tokyo. No manual conversion needed.

How do I use the Relative format (R) for a countdown?

Use the R format — <t:UNIX:R> — and Discord will show something like "in 3 hours" or "5 minutes ago" that updates in real time as users view the message. Use it for countdowns to events, deadlines, and release times.

Can I use Discord timestamps in embeds and bot messages?

Discord timestamps work anywhere Discord renders markdown: regular messages, embed descriptions, and embed field values, whether sent by a person or a bot. They do not render in embed titles, author fields, or footers — the raw <t:...> text shows there instead. Bot developers can insert the syntax into message content or embed description strings exactly as a user would type it.

What's the difference between f, s, and F?

All three render the same instant with different amounts of detail. Take the Unix value 1778406728 as seen by a viewer in New York (EDT). f is the default format — May 10, 2026 at 5:52 AM. s is more compact: 5/10/26, 5:52 AM. F adds the full weekday name: Sunday, May 10, 2026 at 5:52 AM. Use S instead of s when you also need seconds in the time.

Why isn't my <t:...> rendering as a timestamp?

Check that the Unix value is in seconds, not milliseconds. A current Unix timestamp is 10 digits (e.g., 1778406728). If your value is 13 digits, divide by 1000. Also confirm the format token is one of: t, T, d, D, f, F, s, S, R.

Learn more

Other tools you might find useful