Timestamp Converter
A free timestamp converter: Unix epoch seconds or milliseconds to a date in any time zone, dates back to timestamps, Excel and Windows times, bulk CSV and code. Runs in your browser.
- Free, no sign-up
- Seconds to nanoseconds
- Every time zone
- Date to timestamp
- Bulk CSV
- Nothing uploaded
People also use
How to convert a timestamp in three steps
Paste a Unix timestamp in the box above and it turns into a readable date at once: in the time zone you choose, in your own zone, as ISO 8601, RFC 2822 and relative time, plus the same moment as an Excel serial, a Windows FILETIME and more. The number can be in seconds, milliseconds, microseconds or nanoseconds; the timestamp converter works out which from the number of digits.
It also goes the other way. Type a date and a time zone and you get the timestamp back, with summer time handled. Above everything, the current Unix timestamp ticks live, ready to copy.
This timestamp converter runs entirely in your browser with its built-in time-zone database. Nothing you type is sent anywhere.
- 1
Paste a timestamp
Type or paste a number under Timestamp to date, or press Use on the live clock. Leave Unit on Auto or pick s, ms, µs or ns.
- 2
Choose a time zone
Pick a zone under Show in. Every row updates: date and time, ISO 8601, RFC 2822, relative time, week and more.
- 3
Copy what you need
Press Copy next to any row. To go the other way, type a date under Date to timestamp and copy the seconds or milliseconds.
The timestamp converter remembers your unit, time zone, extra zones and bulk unit in this browser. The timestamps and dates you type are not saved.
What a Unix timestamp is: the epoch explained
A Unix timestamp, also called epoch time or POSIX time, is the number of seconds since the Unix epoch: 00:00:00 UTC on 1 January 1970. Today that count is a ten-digit number of almost 1.8 billion, and it goes up by one every second, everywhere on Earth at the same moment.
Because it is a single number with no time zone, no calendar and no date format, it is easy to store, sort, compare and send between systems. Databases, log files, APIs, JSON payloads, cookies and JWT tokens all use it. The cost is that people cannot read it, which is what a converter is for.
Times before 1970 are simply negative. -86400 is one day before the epoch, 31 December 1969, and the timestamp converter accepts the minus sign.
| Timestamp | Date and time (UTC) | Why it is known |
|---|---|---|
| 0 | 1970-01-01 00:00:00 | The Unix epoch itself |
| -86400 | 1969-12-31 00:00:00 | One day before the epoch |
| 1000000000 | 2001-09-09 01:46:40 | The first ten-digit timestamp |
| 1234567890 | 2009-02-13 23:31:30 | Digits in order |
| 1700000000 | 2023-11-14 22:13:20 | 1.7 billion seconds |
| 2147483647 | 2038-01-19 03:14:07 | Largest signed 32-bit value |
Unix timestamp converter: how it reads your number
Most mistakes with timestamps come from the unit, not the date. A unix timestamp converter that guesses wrong shows a date in 1970 or thousands of years from now. With Unit on Auto, this page counts the digits: up to 11 digits are read as seconds, 12 to 14 as milliseconds, 15 to 17 as microseconds and 18 or more as nanoseconds. A short line such as Read as milliseconds shows what it chose.
If the guess is wrong, for example for an old date in milliseconds that has fewer digits, pick s, ms, µs or ns yourself. A minus sign is allowed for dates before 1970 and a decimal point for fractions of a second. Spaces, commas and underscores used as digit separators are ignored.
Anything else, such as letters, shows a short message instead of a wrong date. The timestamp converter handles about 270,000 years either side of 1970, the same range as JavaScript dates.
Timestamp converter in milliseconds, microseconds and nanoseconds
The same moment can be written four ways. Unix itself counts seconds, but JavaScript's Date.now(), Java's System.currentTimeMillis() and many APIs return milliseconds, three digits longer. Python's time.time_ns(), Go's UnixNano and tracing tools go down to nanoseconds.
As a timestamp converter in milliseconds and smaller units, the output lists the moment in all four: Seconds, Milliseconds, Microseconds and Nanoseconds, each with a Copy button. These rows are exact to the millisecond; digits below that are rounded, because browsers keep times in milliseconds.
| Unit | Digits today | Example (same moment) | Common sources |
|---|---|---|---|
| Seconds | 10 | 1761043200 | Unix, PHP time(), MySQL UNIX_TIMESTAMP(), JWT exp and iat |
| Milliseconds | 13 | 1761043200000 | JavaScript Date.now(), Java, many JSON APIs |
| Microseconds | 16 | 1761043200000000 | Some databases and log formats |
| Nanoseconds | 19 | 1761043200000000000 | Go UnixNano, Python time_ns(), tracing tools |
Unix timestamp to date: every output row explained
Once the number is read, the table under the box converts the unix timestamp to date and time in every common format at once. Here is each row for 1761043200 with UTC chosen:
| Row | Example | What it is |
|---|---|---|
| Date and time | Tuesday, October 21, 2025 at 10:40:00 AM UTC | Readable date in the zone under Show in, in your browser's language |
| Your time zone | Depends on your device | The same moment in the zone your device uses |
| ISO 8601 | 2025-10-21T10:40:00Z | Machine format with the offset of the chosen zone |
| ISO 8601 (UTC) | 2025-10-21T10:40:00Z | Always UTC, with Z at the end |
| RFC 2822 | Tue, 21 Oct 2025 10:40:00 +0000 | Email-style date |
| Relative | 1 year ago | Distance from now, updated live |
| Day | Tue · day 294 of 365 · ISO week 43 | Weekday, day of the year and ISO week |
| Seconds to Nanoseconds | 1761043200 and longer | The moment in each unit |
| Excel / Google Sheets serial | 45951.444444 | Days since 1900, in the chosen zone |
| Windows FILETIME / LDAP | 134055168000000000 | 100-nanosecond steps since 1601 |
| Apple Cocoa (since 2001) | 782736000 | Seconds since 1 January 2001 UTC |
| Julian day | 2460969.94444 | Days since 4713 BC, used in astronomy |
| Chat tags | <t:1761043200:R> | Tags that show the date in each reader's zone |
The Day row uses ISO weeks, which start on Monday. Week 1 is the week with the first Thursday of the year, so 30 December can belong to week 1 of the next year; the row then names that year. The chat tags work in apps that read the <t:…> format, Discord being the best known: R shows relative time, F the full date and time, d a short date, each in the reader's own zone.
Timestamp converter with timezone: any zone, summer time included
A timestamp is the same everywhere; only the wall-clock time differs. Choose any IANA zone under Show in, such as America/New_York, Europe/Berlin or Asia/Kolkata, and the readable date, ISO 8601, RFC 2822, Day and Excel rows switch to that zone. Your own zone is listed near the top, marked (yours).
A timestamp converter with timezone support matters because of summer time. New York is UTC-5 in winter and UTC-4 in summer, London switches between GMT and BST, and the dates of the change differ by country. The timestamp converter uses your browser's built-in time-zone database (Intl), so each date gets the offset that applied on that day, including past rule changes the database knows about.
To compare places, the Same moment in other time zones card starts with New York, London, Kolkata and Tokyo. Remove any with the cross, or pick a zone and press Add, up to 20. It is a quick way to plan a call or read a log from a server abroad.
Timestamp converter UTC: why UTC is the reference
UTC, Coordinated Universal Time, is the time at zero longitude with no summer time. Unix timestamps are defined in UTC, which is why the page opens as a timestamp converter UTC-first: Show in starts on UTC until you change it, and the ISO 8601 (UTC) row always stays in UTC with a Z at the end.
Local time is UTC plus an offset, such as +05:30 for India or -07:00 for California in summer. The Your time zone row shows the moment in your device's zone, so you see both without switching. A good habit: store and send timestamps or UTC times, and convert to local time only when showing them to a person.
Timestamp converter ISO 8601 and RFC 2822 formats
ISO 8601 writes a date from the largest unit to the smallest: 2025-10-21T10:40:00Z. The T separates date and time, and the end shows the offset: Z for UTC, or +05:30, -04:00 and so on. It sorts correctly as plain text, and it is what JSON APIs, JavaScript's toISOString() and most databases expect. The form used here is also valid RFC 3339.
The timestamp converter ISO 8601 row shows milliseconds only when they are not zero and gives the offset of the zone you chose, so 10:40 UTC appears as 2025-10-21T16:10:00+05:30 for Asia/Kolkata. The ISO 8601 (UTC) row gives the Z form of the same moment.
RFC 2822 is the older format from email headers, such as Tue, 21 Oct 2025 10:40:00 +0000. HTTP headers and RSS feeds use a close relative. Copy whichever your system asks for.
Timestamp converter to date and back: date to timestamp
A timestamp converter to date is only half the job; often you have a date and need the number. Type it in the Date to timestamp card, or use the date and time picker next to it, and choose the zone the date is in. You get Seconds, Milliseconds, ISO 8601 (UTC) and the offset of that zone on that date.
The box understands 2026-10-21 14:30, 2026-10-21T14:30:00.250, 21 Oct 2026 2:30 PM and RFC 2822 dates. A date that ends with Z or an offset such as +05:30 uses that offset and ignores the zone menu. Without one, the date is read as wall-clock time in the chosen zone, with summer time taken into account. A date alone, such as 2026-10-21, means midnight at the start of that day.
Dates with slashes are read the way your browser reads them, usually month first, so the year-month-day form is the safest choice.
Unix timestamp now: the live clock
The dark bar at the top shows the unix timestamp now, in seconds, updating every second, with the same moment in milliseconds and as a UTC time below it. Press Copy to take the seconds, Pause to freeze the clock, Resume to restart it, and Use to send the current value to the converter.
The clock comes from your device, so it is only as right as your device's time. Phones and computers that sync time automatically are usually within a fraction of a second.
Epoch converter online for Excel, Windows and Apple times
Not every system counts from 1970. This epoch converter online also handles the other counters you meet in spreadsheets, Windows and Apple software: as output rows for every timestamp and, for Excel and Windows, as inputs in the Excel and Windows times card.
| Format | Counts | From | Value at 1970-01-01 UTC |
|---|---|---|---|
| Unix time | Seconds | 1970-01-01 UTC | 0 |
| Excel / Google Sheets serial | Days, with the time as a fraction | 1900 date system | 25569 |
| Windows FILETIME / LDAP | 100-nanosecond steps | 1601-01-01 UTC | 116444736000000000 |
| Apple Cocoa (Core Data) | Seconds | 2001-01-01 UTC | -978307200 |
| Julian day | Days | Noon, 1 January 4713 BC | 2440587.5 |
Windows FILETIME is also the format of Active Directory attributes such as lastLogonTimestamp, pwdLastSet and accountExpires, so you can paste an 18-digit value from an LDAP query into the FILETIME box and read the date. The Apple Cocoa value appears in iOS and macOS databases.
Epoch converter in Excel and Google Sheets: formulas
If you need an epoch converter in Excel itself, one formula is enough. Excel and Google Sheets store dates as days since 1900, and 1 January 1970 is day 25569, so a Unix timestamp in seconds becomes a date by dividing by 86,400 and adding that day:
| Task | Formula (value in A1) |
|---|---|
| Seconds to date | =A1/86400+DATE(1970,1,1) |
| Milliseconds to date | =A1/86400000+DATE(1970,1,1) |
| Date to seconds | =(A1-DATE(1970,1,1))*86400 |
| Seconds to India time | =A1/86400+DATE(1970,1,1)+5.5/24 |
| Google Sheets only | =EPOCHTODATE(A1) |
Format the result cell as a date and time, or you see a plain number such as 45951.44. The result is in UTC; add or subtract hours divided by 24 for a local zone, keeping in mind that a fixed offset ignores summer time. Mac workbooks set to the 1904 date system count from 1904 instead, where 1970 is day 24107.
Going the other way, paste an Excel serial into the Excel / Sheets serial number box and the timestamp converter shows the ISO date and the Unix seconds. Excel serials have no time zone, so the result is shown as if the sheet were in UTC. In the output rows, the Excel / Google Sheets serial follows the zone under Show in, ready to paste into a sheet that uses that local time.
Convert many timestamps at once, with CSV
Paste up to 5,000 lines into Convert many at once, one timestamp or date per line, mixed if you like. Each line gets its ISO 8601 date in the zone under Show in and its Unix seconds, and the first 200 are listed on the page. Bulk unit can stay on Auto, which reads each number by its digits, or be set to s or ms when the whole list uses one unit.
Press CSV to download timestamps.csv with the columns input, type, iso_8601 and unix_seconds. It opens in any spreadsheet or database import, and lines the page could not read are marked not understood.
Timestamps in code: quick snippets
The Get or convert a timestamp in code panel under the tool has short snippets for JavaScript, Python, PHP, Java, C#, Go, MySQL, PostgreSQL, Bash and Excel: how to get the current time as a timestamp and how to turn one into a date. The most common ones:
| Language | Current timestamp | Timestamp to date |
|---|---|---|
| JavaScript | Math.floor(Date.now() / 1000) | new Date(ts * 1000).toISOString() |
| Python | int(time.time()) | datetime.fromtimestamp(ts, timezone.utc) |
| PHP | time() | date('c', $ts) |
| MySQL | SELECT UNIX_TIMESTAMP(); | SELECT FROM_UNIXTIME(ts); |
| PostgreSQL | EXTRACT(EPOCH FROM now()) | to_timestamp(ts) |
| Bash | date +%s | date -u -d @ts (GNU) or date -u -r ts (macOS) |
JavaScript works in milliseconds and most other languages in seconds. Multiplying or dividing by 1000 in the wrong place is the most common timestamp bug.
Leap seconds and the year 2038 problem
Unix time pretends every day has exactly 86,400 seconds. Real UTC has had 27 leap seconds added since 1972 to keep clocks in step with the Earth's rotation. Unix time ignores them: during a leap second the count repeats a second or the system smooths it out, so the gap between two timestamps can be off by those seconds over long spans. For everyday dates this never matters, and this timestamp converter, like nearly all software, follows Unix time.
The year 2038 problem comes from systems that store timestamps as a signed 32-bit integer. The largest value, 2147483647, is 03:14:07 UTC on 19 January 2038. One second later such a counter overflows to -2147483648, which reads as 13 December 1901. Modern systems, databases and languages use 64-bit timestamps that last for billions of years, but old devices, file formats and database columns can still be affected. Type 2147483648 above to see the moment just after the limit.
What people use timestamps for
Read logs and errors
Turn the epoch numbers in server logs, crash reports and analytics exports into dates you can read.
Check API data
See what a created_at or updated_at value in a JSON response really means, in your zone.
Inspect tokens
The exp, iat and nbf claims of a JWT are Unix seconds; paste one to see when a token expires.
Schedule across zones
Pick a meeting time and see it in New York, London, Kolkata and Tokyo side by side.
Prepare database values
Turn a date into seconds or milliseconds for a query, a seed file or a test.
Fix spreadsheet dates
Convert epoch columns to Excel serials, or serials back to timestamps.
Read Active Directory times
Decode FILETIME values such as pwdLastSet and lastLogonTimestamp.
Post event times in chat
Copy a <t:…:F> tag so everyone sees the event in their own time zone.
Troubleshooting: when the date looks wrong
The date is in 1970
The number was read in the wrong unit, usually milliseconds read as seconds. Check the Read as line, or pick ms or s under Unit.
The date is thousands of years away
The same cause the other way round: seconds read as milliseconds or microseconds. Choose the unit by hand.
The time is off by a few hours
The time zone differs. Compare the Show in zone with the zone the date was meant for; ISO 8601 (UTC) is always UTC.
The time is off by one hour
Usually summer time. A fixed offset added by hand, for example in a spreadsheet, ignores it; the city zones in the menu do not.
This date was not understood
Write it as 2026-10-21 14:30:00, with Z or an offset at the end if you know it. Slash dates depend on the browser.
Excel shows a number, not a date
Format the cell as a date or date and time. The number is the serial, which is correct.
Copy does not work
Some browsers block the clipboard in private windows. Select the value and press Ctrl+C, or Cmd+C on a Mac.
All settings at a glance
| Setting | Choices | What it does |
|---|---|---|
| Unit | Auto, s, ms, µs, ns | How the timestamp is read; Auto counts the digits |
| Show in | UTC, your zone, every IANA zone | Zone for the readable date, ISO 8601, RFC 2822, Day, Excel serial and bulk results |
| Date to timestamp zone | Any zone | The zone a typed date is in, unless it ends with Z or an offset |
| Other time zones | Up to 20 | Extra zones shown side by side; remove or add any |
| Bulk unit | Auto, s, ms | How numbers in the bulk list are read |
| Pause | Pause and Resume, or the checkbox | Freezes the live clock and the relative time |
Is it safe? Converted in your browser, nothing sent
Every conversion happens in your browser, using its built-in time-zone database (Intl). Timestamps, dates and bulk lists are not uploaded, logged or put in the address bar, and the CSV file is created on your device.
This timestamp converter remembers only your settings, the unit, the Show in zone, the extra zones and the bulk unit, in this browser's local storage. You can clear them in your browser's site data settings.
What to do next
Timestamps often sit inside other data. The JWT Decoder shows a token's claims, including exp and iat, and the JSON Formatter makes an API response readable so you can find the date fields. To turn a bulk CSV into JSON, use CSV to JSON.
Need random IDs for test records? The UUID Generator makes them. To compare two log files line by line, open the Diff Checker, and to test a pattern that matches dates, try the Regex Tester.
Frequently asked questions
What is a unix timestamp converter?
It turns the number of seconds since 1 January 1970 UTC into a readable date, and a date back into that number. This page also handles milliseconds, microseconds and nanoseconds, any time zone, Excel serials and Windows FILETIME values.
What is the Unix timestamp now?
It is shown live in the dark bar at the top of the page and goes up by one every second. Press Copy to take it, or Use to convert it. In October 2026 it is a ten-digit number of about 1.79 billion.
How do I convert a Unix timestamp to date?
Paste it in the Timestamp to date box. With Unit on Auto, the page reads 10 digits as seconds and 13 as milliseconds, then shows the date in the zone under Show in, in your own zone and in ISO 8601.
Does this epoch converter online handle milliseconds?
Yes. A 13-digit value is read as milliseconds automatically, and you can force s, ms, µs or ns with the Unit buttons. Every result also lists the moment in all four units.
Does the timestamp converter to date show my own time zone?
Yes. The Your time zone row always shows the date in the zone your device uses, next to the zone chosen under Show in. You can also pick your zone, marked (yours), in the menu.
How does the timestamp converter with timezone handle summer time?
It uses your browser's time-zone database, so each date gets the offset that applied on that day in that zone. New York, for example, shows -05:00 in January and -04:00 in July.
Is there a timestamp converter in milliseconds for JavaScript values?
Yes. Paste a value from Date.now() or getTime(); 13 digits are read as milliseconds. To go back, the Milliseconds row gives the number JavaScript expects.
Does the timestamp converter ISO 8601 output include the offset?
Yes. The ISO 8601 row ends with the offset of the chosen zone, such as +05:30, and the ISO 8601 (UTC) row ends with Z. Milliseconds are added only when they are not zero.
Why does the timestamp converter UTC row differ from my local time?
UTC is the reference time, with no offset and no summer time. Your local time is UTC plus your zone's offset, which the Your time zone row shows. Both describe the same moment.
How do I use an epoch converter in Excel?
Put the timestamp in A1, use =A1/86400+DATE(1970,1,1) and format the cell as a date. For milliseconds, divide by 86400000 instead. Google Sheets also has an EPOCHTODATE function.
How do I convert a date to a Unix timestamp?
Type the date in the Date to timestamp card, or pick it with the date picker, and choose its time zone. You get seconds, milliseconds, the UTC time and the zone's offset on that date.
Why does my timestamp show a date in 1970?
The number was read in the wrong unit, usually a milliseconds value treated as seconds or a very small number. Check the Read as line and choose the unit under Unit if needed.
What is the Unix epoch?
It is the starting point of Unix time: 00:00:00 UTC on 1 January 1970. Every Unix timestamp is the number of seconds before or after that moment.
Can timestamps be negative?
Yes. Negative values are dates before 1970; -86400 is 31 December 1969 at midnight UTC. Type the minus sign and the page converts it like any other value.
What is the year 2038 problem?
Systems that store timestamps as signed 32-bit numbers run out at 2147483647, which is 03:14:07 UTC on 19 January 2038. The next second wraps to a date in 1901. Systems with 64-bit timestamps are not affected.
Does Unix time count leap seconds?
No. Unix time treats every day as exactly 86,400 seconds and ignores the 27 leap seconds added since 1972. For almost every use this makes no difference.
What is the difference between seconds and milliseconds timestamps?
They describe the same moment; a milliseconds value is 1000 times larger and has three more digits. Today seconds have 10 digits and milliseconds 13.
What is a Windows FILETIME or LDAP timestamp?
It counts 100-nanosecond steps since 1 January 1601 UTC and is 18 digits long today. Active Directory uses it for values such as pwdLastSet. Paste one into the FILETIME box to read it.
What are the <t:…:R> chat tags?
They are tags that chat apps such as Discord turn into a date shown in each reader's own time zone. R shows relative time, F the full date and time, and d a short date. Copy the row and paste it into a message.
Can I convert many timestamps at once?
Yes. Paste up to 5,000 timestamps or dates, one per line, into Convert many at once. Press CSV to download the results with ISO 8601 dates and Unix seconds.
Is anything I type sent to a server?
No. All conversions run in your browser with its built-in time-zone database. Only your settings, such as the unit and the zones, are remembered in this browser.
Convert a timestamp now
Seconds to nanoseconds, every time zone, dates back to timestamps, Excel and Windows times. A free timestamp converter that works on your device.
Back to the toolLast updated October 2026 · Written and maintained by the FlipMyFormat team