Skip to content

Discord timestamp generator

Pick a moment and copy the code. Discord renders it for every reader in their own timezone, and as a self-updating countdown if you want one.

Pick a moment

Accepts a finished code, Unix seconds or milliseconds.

The seven styles

The code on the left, the preview in your timezone next to it. Copy the row that fits.

Unix timestamp (seconds)

The preview uses your timezone. Anyone reading the code in Discord sees their own; it is the same moment.

What the code actually does

The format is <t:1730000000:F>: a Unix timestamp (seconds since January 1st, 1970) wrapped in angle brackets, with a style letter at the end. When Discord renders the message, the code turns into a date or time in each reader’s own timezone. One code, and everyone sees their local time.

That is the whole point. Announce an event as “8 PM” in a server that spans three timezones and you will spend the evening answering “whose 8 PM?”. Post the timestamp instead and the question never comes up.

Choosing a style

Six of the seven styles are combinations of date and time: t and T for time only, d and D for the date, f and F for both. Uppercase means the long form, with the month written out or the weekday added. For most announcements, f is the sensible default.

The seventh, R, renders a relative phrase such as “in 2 hours” or “3 days ago” and keeps updating on its own. It is the closest thing Discord has to a built-in countdown, and it never drifts, because it is computed from the same fixed moment for everyone.

Where it works, and where it stays plain text

The code is replaced in regular messages, embeds, webhook payloads and bot replies. It is not replaced in channel names, status texts or poll answers; there it shows up literally, angle brackets and all.

And a note on previews: this page shows the result in your timezone, because that is the only one your browser knows. Someone reading your message in Discord sees theirs. Same instant, different clock.

Frequently asked

What is a Unix timestamp?
It is the number of seconds elapsed since midnight UTC on January 1st, 1970. Most software measures time this way internally because a plain number needs no timezone rules. Discord keeps that number in the code and only converts it to local time when rendering the message.
Why does everyone see a different time?
Because that is the feature: the code stores the moment, and every client renders it in its own timezone and date format. Your 8 PM and a New York reader’s 2 PM are the same timestamp, shown through two different clocks.
Do timestamps work inside embeds and webhooks?
Yes. Embed descriptions, embed fields and webhook messages all render the code exactly like a regular message does. The places where it stays plain text are channel names, status messages and poll options, since Discord performs no replacements there.
Can I build a countdown with this?
Use the R style. It renders the distance to the moment, such as “in 3 days” or “in 12 minutes”, and Discord keeps it current without any help. You do not need a bot that edits a message every minute to fake this.
Why is my code showing up as plain text?
Usually one character is missing or the number is wrong. The full shape is <t:1730000000:F> with both angle brackets and both colons, and the number must be seconds. Milliseconds are the classic mistake: thirteen digits instead of ten, which Discord silently refuses to render. This generator always outputs seconds.

Still missing a bot for your server?

Event reminders, polls, moderation: every bot in the directory is reviewed by hand before it goes live.