About This HTML Issue
The <time> HTML element represents a specific period in time or a duration. Its datetime attribute translates human-readable text into a machine-readable format, enabling browsers, search engines, and assistive technologies to reliably parse and understand temporal data. When the datetime value doesn’t match one of the accepted formats, the machine-readable purpose of the element is defeated — tools cannot interpret the date or time, which undermines features like search engine rich results, calendar integration, and accessibility enhancements for screen readers.
The HTML specification defines several valid formats for the datetime attribute. Here are the most commonly used ones:
| Format | Example | Description |
|---|---|---|
| Date |
2024-03-15 |
Year, month, day |
| Month |
2024-03 |
Year and month only |
| Year |
2024 |
Valid year |
| Yearless date |
03-15 |
Month and day without year |
| Time |
14:30 or 14:30:00 |
Hours and minutes (seconds optional) |
| Date and time |
2024-03-15T14:30 |
Date and time separated by T |
| Date and time with timezone |
2024-03-15T14:30Z or 2024-03-15T14:30+05:30 |
With UTC (Z) or offset |
| Duration (precise) |
PT1H30M |
ISO 8601 duration |
| Duration (approximate) |
P2Y6M |
Years, months, etc. |
| Week |
2024-W12 |
ISO week number |
Common mistakes that trigger this error include:
-
Using slashes instead of hyphens:
03/15/2024instead of2024-03-15 -
Using informal date formats:
March 15, 2024or15-03-2024 -
Omitting the
Tseparator between date and time:2024-03-15 14:30 -
Using 12-hour time with AM/PM:
2:30 PMinstead of14:30 -
Providing incomplete values:
2024-3-5instead of2024-03-05(months and days must be zero-padded)
Examples
Invalid: Slash-separated date
<time datetime="03/15/2024">March 15, 2024</time>
Valid: ISO 8601 date format
<time datetime="2024-03-15">March 15, 2024</time>
Invalid: Missing T separator and using AM/PM
<time datetime="2024-03-15 2:30 PM">March 15 at 2:30 PM</time>
Valid: Date-time with T separator and 24-hour time
<time datetime="2024-03-15T14:30">March 15 at 2:30 PM</time>
Invalid: Informal time string
<time datetime="half past two">2:30 PM</time>
Valid: Simple time value
<time datetime="14:30">2:30 PM</time>
Invalid: Non-standard duration
<time datetime="1 hour 30 minutes">1.5 hours</time>
Valid: ISO 8601 duration
<time datetime="PT1H30M">1.5 hours</time>
Valid: Date-time with timezone offset
<p>The event starts at <time datetime="2024-03-15T14:30-05:00">2:30 PM ET on March 15</time>.</p>
Valid: Using only the month
<p>Published in <time datetime="2024-03">March 2024</time>.</p>
Remember that the human-readable text content between the <time> tags can be in any format you like — it’s only the datetime attribute value that must follow the specification. This lets you display dates in a user-friendly way while still providing a standardized machine-readable value.
Find issues like this automatically
Rocket Validator scans thousands of pages in seconds, detecting HTML issues across your entire site.
Learn more: