Decode Instagram Media ID

Enter Instagram post, reel, or story ID to extract creation date

Post Created On
Unix Timestamp (milliseconds)
Unix Timestamp (seconds)
ISO 8601 Format

Last updated

Key Facts About Instagram Reel IDs

Paste any Instagram Reel ID to instantly decode its creation timestamp. No API access required.

Examples

Example 1: Basic Reel ID Decoding

Instagram Reel ID: 2950000000000000000

Decoded result:
  Created at:     2023-11-20 09:15:42 UTC
  Unix timestamp: 1700471742
  Post age:       ~1 year, 4 months ago

Formula:
  INSTAGRAM_EPOCH = 1293840000  (Jan 1, 2011 in seconds)
  timestamp_seconds = (reel_id >> 23) + INSTAGRAM_EPOCH
  created_at = datetime.fromtimestamp(timestamp_seconds)

Note: Reels launched in August 2020.
Any Reel ID that decodes to a date before August 2020
indicates an invalid ID or a regular post, not a Reel.

Example 2: JavaScript Decoder

const INSTAGRAM_EPOCH = 1293840000; // Jan 1, 2011

function reelIdToDate(reelId) {
  const id = BigInt(reelId); // BigInt required for large integers
  const timestampSeconds = Number(id >> 23n) + INSTAGRAM_EPOCH;
  const createdAt = new Date(timestampSeconds * 1000);

  // Validate: Reels launched August 2020
  const reelsLaunch = new Date('2020-08-05T00:00:00Z');
  if (createdAt < reelsLaunch) {
    console.warn('Warning: Date predates Reels launch — may be a regular post ID');
  }

  return {
    createdAt,
    iso: createdAt.toISOString(),
    unixSeconds: timestampSeconds,
    unixMs: timestampSeconds * 1000
  };
}

// Usage:
const result = reelIdToDate('2950000000000000000');
console.log(result.iso);
// → "2023-11-20T09:15:42.000Z"

Example 3: Python Decoder

import datetime

INSTAGRAM_EPOCH = 1293840000
REELS_LAUNCH = datetime.datetime(2020, 8, 5, tzinfo=datetime.timezone.utc)

def reel_id_to_date(reel_id: int) -> dict:
    timestamp_seconds = (reel_id >> 23) + INSTAGRAM_EPOCH
    created_at = datetime.datetime.fromtimestamp(
        timestamp_seconds,
        tz=datetime.timezone.utc
    )

    if created_at < REELS_LAUNCH:
        print(f"Warning: {created_at} predates Reels launch")

    return {
        'created_at': created_at,
        'timestamp_seconds': timestamp_seconds,
        'formatted': created_at.strftime('%Y-%m-%d %H:%M:%S UTC')
    }

# Usage:
result = reel_id_to_date(2950000000000000000)
print(result['formatted'])
# → "2023-11-20 09:15:42 UTC"

Frequently Asked Questions

Enter the Instagram media ID and click Decode. The tool extracts the embedded timestamp using the formula: (id >> 22), returning the Unix timestamp and creation date.

An Instagram media ID is a unique snowflake identifier for posts, reels, and stories. It encodes the creation timestamp in the first 41 bits.