How to read 24 hour time from zero to midnight

The clock starts at zero. 00:00 marks the beginning. The next hour is 01:00, then 02:00, straight through to 23:00. After 23:59, the count resets to 00:00 for the next day. There is no 24:00 in normal daily use (more on that below).

Each hour holds 60 minutes. Write them with two digits: 09:15, not 9:15. The colon separates hours and minutes. Seconds follow the same pattern: 14:30:45 is 45 seconds past 2:30 PM.

No ambiguity. A flight departing at 22:00 is clearly evening. A meeting at 09:00 is clearly morning. You never need to guess whether "12" means noon or the start of the day.

How do I convert AM/PM to 24 hour time?

The rule is straightforward. For AM times (00:00 to 11:59), keep the hour the same but pad single-digit hours with a leading zero. 1:00 AM becomes 01:00. 11:30 AM becomes 11:30.

For PM times (12:00 PM to 11:59 PM), add 12 to the hour. 1:00 PM becomes 13:00. 8:30 PM becomes 20:30. 11:15 PM becomes 23:15.

The tricky one is 12:00. 12:00 AM is the start of the day: 00:00. 12:00 PM is noon: 12:00. This is the only time the hour does not change when converting from AM/PM.

To convert back from 24-hour to AM/PM: hours 00 through 11 are AM (00:00 = 12:00 AM, 01:00 = 1:00 AM). Hours 12 through 23 are PM. Subtract 12 from the hour. 13:00 minus 12 = 1:00 PM. 23:00 minus 12 = 11:00 PM.

AM/PM time 24-hour time
12:00 AM 00:00
1:00 AM 01:00
6:30 AM 06:30
11:45 AM 11:45
12:00 PM 12:00
1:00 PM 13:00
3:15 PM 15:15
8:00 PM 20:00
11:59 PM 23:59

When does a 24 hour day actually start?

In almost all practical use, the day begins at 00:00. This is what you see on digital clocks, in software, and on timetables.

There is one exception. Some contexts use 24:00 to mark the end of a day. A train schedule might say "departs 24:00" to mean the last minute of the current day, not the first minute of the next. This is rare and mostly limited to transport timetables and some business hours. If you see 24:00, treat it as 00:00 of the following day. ISO 8601 uses 24:00 only in this end-of-day sense and prefers 00:00 for the start of a day.

For normal reading and writing, use 00:00.

Where is 24 hour time used?

You will find 24-hour time in several professional fields because it removes ambiguity.

  • Aviation and air traffic control: Flight plans, departure times, and weather reports all use 24-hour UTC. A pilot reads "depart 14:30 Z" (Z for UTC) and knows exactly when, regardless of local time zone.

  • Healthcare: Hospitals use 24-hour time for medication schedules, patient charts, and shift handovers. A nurse administering a drug at "21:00" knows it is evening, not 9:00 AM.

  • Rail and public transport: European train and bus timetables universally use 24-hour time. A train at "07:47" is morning; one at "19:47" is evening.

  • Software and APIs: ISO 8601 uses the 24-hour format as hh:mm:ss. RFC 3339 mandates the same format with a T separator between date and time. Every API response from a modern web service uses this format.

Why does software always use 24 hour time?

If you work with data, you encounter 24-hour time constantly. ISO 8601 requires the format YYYY-MM-DDThh:mm:ss±hh:mm or YYYY-MM-DDThh:mm:ssZ. The hours are always two digits from 00 to 23. Minutes and seconds are two digits from 00 to 59.

A timestamp like 2026-10-01T14:30:00+02:00 means 2:30 PM in a time zone that is two hours ahead of UTC. The T separates the date from the time. The Z at the end means UTC.

JavaScript's Date object, when converted to an ISO 8601 string, uses 24-hour time. Python's datetime.now().isoformat() does the same. So does the strftime function in C and PHP with the %H format code.

The reason is simple: 24-hour time sorts correctly as strings. "14:00" comes after "09:00" lexicographically. "02:00 PM" does not sort correctly without custom logic.

Common mistakes when reading 24 hour time

Mistake 1: Writing 24:00 for the start of the day. Stick to 00:00. If you mean the end of a day, use 23:59 or clarify with the date.

Mistake 2: Forgetting leading zeros. 9:00 is wrong in 24-hour format. Write 09:00. This matters in software: "9:00" is not valid ISO 8601.

Mistake 3: Confusing 12:00 with the start of the day or noon. 12:00 in 24-hour format is always noon. The day begins at 00:00.

Mistake 4: Adding 12 to 12:00 PM. 12:00 PM is 12:00 in 24-hour format, not 24:00. The conversion rule (add 12 to PM hours) works for 1:00 PM through 11:00 PM. For 12:00 PM, the hour stays 12.

Mistake 5: Assuming everyone uses the same convention for the day boundary. In some railway timetables, a train at "00:15" is just after the start of the day. When in doubt, use 00:00 and specify the date.

Quick reference table

Period 24-hour range AM/PM equivalent
Day start 00:00 12:00 AM
Morning 01:00-11:59 1:00 AM, 11:59 AM
Noon 12:00 12:00 PM
Afternoon 13:00-17:59 1:00 PM, 5:59 PM
Evening 18:00-20:59 6:00 PM, 8:59 PM
Night 21:00-23:59 9:00 PM, 11:59 PM

Conversion rules: - AM: keep the hour, pad with zero (1:00 AM = 01:00) - PM: add 12 (1:00 PM = 13:00) - 12:00 AM = 00:00 - 12:00 PM = 12:00

Software formats: - ISO 8601: hh:mm:ss (00-23) - RFC 3339: YYYY-MM-DDThh:mm:ss±hh:mm - Unix timestamp: always UTC, usually converted to 24-hour local time for display