🕐 Discord Snowflake Time Converter

Convert Discord IDs to exact creation times

Convert Discord ID to Time

📌 Try these examples:
DISCORD ID
⏰ RELATIVE TIME
🌍 UTC TIME
📍 LOCAL TIME
📅 DATE
⏱️ TIME
🔢 UNIX TIMESTAMP

Discord Snowflake Time Converter

Convert Discord Snowflake IDs to exact creation times. Every Discord ID (user, message, server, channel, role) contains a timestamp showing when it was created. This tool extracts and displays that time in multiple formats.

Discord Time Formats

What Can You Convert?

👤

User IDs

Find when Discord accounts were created

💬

Message IDs

See exact message send times

🏰

Server IDs

Discover server creation dates

📢

Channel IDs

Check when channels were made

Code Examples

JavaScript
// JavaScript - Discord ID to Time
function discordIdToTime(id) {
  const DISCORD_EPOCH = 1420070400000n;
  const snowflake = BigInt(id);
  const timestamp = Number((snowflake >> 22n) + DISCORD_EPOCH);
  return new Date(timestamp);
}

// Example usage
const time = discordIdToTime('175928847299117063');
console.log(time.toUTCString());     // UTC format
console.log(time.toLocaleString());  // Local format
console.log(time.toISOString());     // ISO format

// Get relative time
function getRelativeTime(date) {
  const seconds = Math.floor((new Date() - date) / 1000);
  const intervals = {
    year: 31536000, month: 2592000, week: 604800,
    day: 86400, hour: 3600, minute: 60
  };
  
  for (const [unit, secondsInUnit] of Object.entries(intervals)) {
    const interval = Math.floor(seconds / secondsInUnit);
    if (interval >= 1) {
      return `${interval} ${unit}${interval > 1 ? 's' : ''} ago`;
    }
  }
  return 'Just now';
}
Python
# Python - Discord ID to Time
from datetime import datetime, timezone

def discord_id_to_time(snowflake_id):
    DISCORD_EPOCH = 1420070400000
    timestamp = ((int(snowflake_id) >> 22) + DISCORD_EPOCH) / 1000
    return datetime.fromtimestamp(timestamp, tz=timezone.utc)

# Example usage
time = discord_id_to_time('175928847299117063')
print(time.strftime('%Y-%m-%d %H:%M:%S UTC'))  # UTC format
print(time.astimezone().strftime('%Y-%m-%d %H:%M:%S'))  # Local

# Get relative time
from datetime import datetime
def get_relative_time(dt):
    now = datetime.now(timezone.utc)
    diff = (now - dt).total_seconds()
    
    intervals = [
        ('year', 31536000), ('month', 2592000), ('week', 604800),
        ('day', 86400), ('hour', 3600), ('minute', 60)
    ]
    
    for name, seconds in intervals:
        interval = int(diff / seconds)
        if interval >= 1:
            return f"{interval} {name}{'s' if interval > 1 else ''} ago"
    return "Just now"

Use Cases

Frequently Asked Questions

Q: How accurate is the time?

A: Discord Snowflake IDs are accurate to the millisecond. The timestamp represents the exact moment the ID was generated.

Q: Can I convert deleted message IDs?

A: Yes! Even if a message is deleted, you can still extract the creation time from its ID.

Q: What timezone is used?

A: Discord uses UTC internally. This tool shows both UTC and your local timezone for convenience.

🔗 Related Snowflake ID Tools

🐦 Twitter Snowflake Decoder 💬 Discord Snowflake Decoder 📸 Instagram Snowflake Decoder

📚 Learn More About Snowflake IDs

How to Decode Tutorial Real ID Examples Snowflake Calculator ID to Timestamp