How Discord Timestamps Work
Two pieces — a Unix timestamp and a format letter — are all Discord needs to render a date that's correct for every reader, in their own timezone. Here's the full mechanism.
The two pieces of a Discord timestamp
Every Discord timestamp is built from a Unix timestamp — the number of seconds that have elapsed since January 1, 1970 at 00:00 UTC — and a single format letterthat tells Discord's client how to display it. Wrapped together inside angle brackets, prefixed witht:, they look like <t:1735689600:F>. Discord recognizes this exact pattern anywhere it appears in message content, embed fields, or webhook payloads.
What happens when Discord renders it
When a message containing that markup reaches a reader's screen, their Discord client — not a server — does the conversion: it reads the Unix number, reads the format letter, and formats the result using that device's own timezone and locale settings. Nobody's timestamp passes through a lookup or calls out to any API at render time; the same fixed UTC moment simply gets displayed in whatever local time each reader's own device already knows. That's the entire mechanism behind "the timestamp shows correctly for everyone" — there's no per-user configuration or timezone picker anywhere in Discord itself, because it doesn't need one.
What this tool automates
The two fiddly parts of building that markup by hand are figuring out the correct Unix number for a date you have in mind, and remembering which of the seven letters produces which style. This generator removes both: you pick a date and time using an ordinary date/time picker (interpreted asyour own local time — the same time your screen is already showing you), and the page converts that into Unix seconds using JavaScript's built-in Date object, then assembles the final string with whichever format letter you've selected.
Under the hood
This specific page runs entirely inside your browser tab. Picking a date, choosing a format, building the preview, and copying the result to your clipboard involve zero network requests — open your browser's developer tools and watch the Network panel stay empty while you use the tool. There is no server component to this generator; it's a static page plus client-side JavaScript.
Why the reader's timezone, not the sender's
This is the detail that trips people up: the timestamp doesn't store a timezone at all — only a single absolute point in time (UTC seconds). Timezone only enters the picture at the very last step, on the reader's own device, using whatever timezone that device is already configured with. That's why two people in different countries reading the exact same message see two different clock times, both correct. See the timezone converter page for a worked example, or the full format reference for what each of the seven letters produces.