Discord Timestamp Code Guide & Formats
Discord timestamp codes automatically display dates and times in each viewer local time zone and can even update live countdowns. Here is how the <t:UNIX:FLAG> syntax works, all 7 format styles, and how to post them in chat.
How Discord Dynamic Timestamps Solve Time Zone Confusion
When organizing community game nights, server tournaments, or team meetings, typing "Starts at 8 PM EST" creates confusion for members in other parts of the world. Readers have to calculate offsets manually, leading to missed events.
Discord solved this by adding native dynamic timestamp tags. Instead of writing plain text times, you write a short code containing a UNIX epoch number:
``
``
When posted in chat, Discord replaces the tag with a localized time based on each reader's computer or phone settings. Someone in New York sees Eastern Time, someone in London sees GMT, and someone in Tokyo sees JST.
You can generate these tags instantly with our in-browser Discord timestamp generator, or assemble them manually using the guide below.
Timestamps do not require bots or server permissions. Anyone can type a timestamp code directly into regular chat messages, thread titles, and forum posts.
The Seven Discord Timestamp Format Styles Compared
Discord provides seven distinct format flags that change how your timestamp renders. You append the single-letter flag at the end of the tag after a colon:
``
``
Here is how each flag behaves in chat:
| Flag | Format Style | Rendered Output Example | Best Usage Scenario |
|---|---|---|---|
| t | Short Time | 9:41 PM | Daily recurring voice calls and casual meetings |
| T | Long Time | 9:41:00 PM | Exact countdown moments and competitive match starts |
| d | Short Date | 10/04/2026 | Submission deadlines and calendar milestones |
| D | Long Date | October 4, 2026 | Birthdays, major releases, and holidays |
| f | Short Date/Time | October 4, 2026 9:41 PM | General event announcements (Discord default) |
| F | Long Date/Time | Sunday, October 4, 2026 9:41 PM | Official server announcements and rules |
| R | Relative Time | in 2 hours / 15 minutes ago | Dynamic live countdowns and recent activity notes |
Using Relative Timestamps (:R) as Live Countdowns
The :R flag is the most popular Discord timestamp style because it acts as an automatic live countdown.
Unlike static text that becomes outdated as time passes, a relative timestamp updates in real time on the viewer's screen. If an event is scheduled for two hours from now, Discord displays "in 2 hours". As time ticks down, the tag smoothly shifts to "in 45 minutes", "in 5 minutes", "in a few seconds", and eventually "5 minutes ago".
The client updates this text locally without sending extra network requests or editing messages.
For major server announcements, combine the full date style :F with the countdown style :R:
``
Server Maintenance: ``
This pattern gives your community both the exact calendar time and a quick relative sense of urgency.
Using both styles side-by-side ensures mobile users with small screens get the exact date while seeing how soon the event happens at a single glance.
How UNIX Timestamps Work and Common Formatting Mistakes
A UNIX timestamp represents the number of seconds that have elapsed since midnight Coordinated Universal Time (UTC) on January 1, 1970.
The most common mistake when building Discord timestamps is using milliseconds instead of seconds. In JavaScript and web development, Date.now() returns a 13-digit number (e.g., 1728000000000). If you paste a 13-digit number into Discord, the client fails to parse it and leaves the tag as raw code.
To fix this, divide milliseconds by 1,000 and round down to a 10-digit integer.
If you omit the colon and letter flag at the end (e.g., ), Discord falls back to the short date/time format (:f).
// Converting JavaScript date to Discord timestamp seconds:
const eventDate = new Date('2026-10-04T20:00:00Z');
const unixSeconds = Math.floor(eventDate.getTime() / 1000);
console.log(`<t:${unixSeconds}:R>`);
// Output: <t:1791144000:R>Formatting Timestamps in Server Announcements and Embeds
Timestamps integrate smoothly with Discord Markdown formatting. You can wrap them in bold asterisks, place them in bulleted lists, or insert them inside bot webhook embeds.
Here is an example announcement template you can copy and adjust:
``
📢 COMMUNITY TOURNAMENT
📅 Date: ``
Notice that timestamps work inside bold formatting: will render the dynamic countdown in bold text. If you want to build rich Discord announcement embeds with colors and custom fields, check out our Discord embed builder.
Timestamps can be placed inside embed descriptions, field values, and footers when sending messages through webhooks or bot libraries.
Build Dynamic Discord Timestamps Without Math
Pick a date and time zone to generate live countdowns, short times, and full dates that auto-sync to every user local device clock.
Open Timestamp Generator →Frequently Asked Questions
Do Discord timestamps update automatically without refreshing?
Yes. Relative timestamps (<t:TIMESTAMP:R>) update live on screen as time passes. Discord client handles the countdown in local memory without editing the message.
Why is my Discord timestamp showing as raw code like <t:1728000000:R>?
This happens if your timestamp has 13 digits instead of 10 (milliseconds instead of seconds), or if there are typos in the brackets. Discord requires a 10-digit UNIX second timestamp.
Can you use Discord timestamp codes on mobile phones?
Yes. You can paste timestamp codes into chat on iPhone and Android apps. They render as clickable localized times just like on desktop.
What happens if you omit the style flag at the end of the tag?
If you leave off the flag and type <t:1728000000>, Discord automatically applies the default short date and time format (:f), showing month, day, year, and time.
Can I put dynamic timestamps in channel names or server bios?
No. Dynamic timestamps only render inside chat messages, forum posts, threads, and embeds. Channel names and server descriptions treat the tag as plain literal text.