Have you run into a date like 2026-09-25T14:30:00Z in a spreadsheet, an API or a log file, or a number like 1790346600 where a date should be, and you need to know what it says?
The first one is the ISO date format, officially ISO 8601, the international standard for writing dates and times so that nobody can misread them. The second is a Unix timestamp, a count of seconds. Between them they cover nearly every date a computer hands you.
The reason the standard exists is easy to see. 04/05/2026 is the 4th of May in Britain and April the 5th in America. 2026-05-04 means one thing everywhere.
What is worth knowing:
- How to read each part of an ISO date and time
- What the Z and the +02:00 on the end mean
- What a Unix timestamp is and why it is a number
- How to convert between the two
- The mistakes that shift dates by hours
In this article you will learn all five, with examples you can copy.
So let’s get started.
Reading an ISO 8601 date
The date part is always year, month, day, largest first, with dashes: 2026-09-25. Months and days always have two digits, so September is 09.
Putting the largest unit first is like writing a number: the digit that matters most comes first. That is why ISO dates sort correctly as plain text, which no other date style does.
The time part follows a T: T14:30:00 is half past two in the afternoon, on the 24 hour clock. Seconds can carry decimals, such as 14:30:00.250 for a quarter of a second later.
Z and the offsets
The end tells you which clock the time is on.
Z means UTC, the world’s reference time, sometimes called Zulu time. +02:00 means two hours ahead of UTC, so 14:30:00+02:00 is 12:30 in UTC. -05:00 is five hours behind.
A time with nothing on the end is a local time with no zone at all. Keep in mind that it is ambiguous: the same text means different moments in London and in New York, and it is the single most common cause of dates that are off by some hours.
Unix timestamps
A Unix timestamp counts the seconds since midnight UTC on 1 January 1970. So 0 is that moment, and 1790346600 is exactly 2026-09-25T14:30:00Z, the same moment as the example at the top.
It is always UTC, which makes it simple to store and compare. JavaScript uses milliseconds instead of seconds, so a JavaScript timestamp has three more digits: 1790346600000. Mixing the two up is how dates land in 1970 or in the year 58000.
Our epoch converter turns either kind into a readable date and back, in your browser, and tells you which kind it thinks you pasted.
Writing them in code and in Excel
JavaScript: new Date().toISOString() gives the current time in ISO format, in UTC. Date.now() gives the timestamp in milliseconds.
Python: datetime.now(timezone.utc).isoformat() gives ISO format with the offset included.
Excel: type =TEXT(A1,”yyyy-mm-dd”) to show a date cell in ISO order. Excel does not understand the T and the Z directly, so an imported ISO date often arrives as text until you split it.
If you are storing dates yourself, I recommend UTC with the Z on the end, every time, and converting to local time only at the moment you show it to a person.
The mistakes that shift dates by hours
Leaving the zone off, as above, is the big one. The second is converting to local time twice, once in the database and once on the page.
The third is daylight saving. An offset such as +01:00 is fixed, while a place’s time zone changes twice a year, so a meeting stored with last month’s offset can move by an hour.
The year 2038
Older systems store Unix time in a signed 32 bit number, which runs out at 03:14:07 UTC on 19 January 2038. After that it wraps round to 1901.
Modern systems use 64 bit numbers and will not run out for billions of years. It does not work that way on some old embedded devices and databases, which is why the date still comes up in security reviews.
FAQ(ISO Date Format)
What is the ISO date format?
Year, month and day, largest first, with dashes: 2026-09-25. A time follows a T, and a Z or an offset says which time zone it is in.
What does the T mean in a timestamp?
It only separates the date from the time. 2026-09-25T14:30:00 is 25 September 2026 at 14:30.
What does Z mean at the end of a time?
UTC, the world’s reference time. It is also called Zulu time.
How do I convert a Unix timestamp to a date?
Paste it into our epoch converter. In code, JavaScript takes milliseconds and most other languages take seconds.
Is ISO 8601 the same as UTC?
No. ISO 8601 is a way of writing dates. UTC is a time zone, and an ISO date can be written in any zone.
If you have any issues, you can ask me via comment, and I will love to help you out.