Convert Unix Timestamp to RFC 2822
RFC 2822 defines the date format used in email headers and, closely related, HTTP. It looks like “Tue, 14 Nov 2023 22:13:20 +0000” — a human-friendly layout with an explicit numeric offset.
Convert any Unix timestamp to RFC 2822 below, alongside ISO 8601 and the raw seconds for cross-referencing.
Worked example
Input 1700000000 converts to Tue, 14 Nov 2023 22:13:20 +0000:
- UTC
- Tue, 14 Nov 2023, 22:13:20 UTC
- ISO 8601 (UTC)
- 2023-11-14T22:13:20.000Z
- RFC 3339 (UTC)
- 2023-11-14T22:13:20Z
- RFC 2822
- Tue, 14 Nov 2023 22:13:20 +0000
- Unix seconds
- 1700000000
- Unix milliseconds
- 1700000000000
- Microseconds
- 1700000000000000
- Nanoseconds
- 1700000000000000000
- Hex (seconds)
- 0x6553f100
- Binary (seconds)
- 1100101010100111111000100000000
Code examples
JavaScript
const d = new Date(1700000000000); console.log(d.toISOString()); // 2023-11-14T22:13:20.000Z Math.floor(Date.now() / 1000); // current epoch
Python
from datetime import datetime, timezone print(datetime.fromtimestamp(1700000000, tz=timezone.utc)) # 2023-11-14T22:13:20.000Z import time; int(time.time())
Go
package main
import ("fmt"; "time")
func main() {
fmt.Println(time.Unix(1700000000, 0).UTC()) // 2023-11-14T22:13:20.000Z
fmt.Println(time.Now().Unix())
}See all 14 languages on the code examples pages.
Frequently asked questions
- Where is RFC 2822 used?
- Primarily in email 'Date:' headers and, with a small variation, in HTTP headers like Last-Modified and Expires.
- How does RFC 2822 differ from ISO 8601?
- RFC 2822 is human-oriented (day name, month name, numeric offset) while ISO 8601 is machine-oriented and lexicographically sortable.
- What offset should I use?
- +0000 denotes UTC. Email systems may use local offsets, but UTC is the safest for storage and comparison.