On this page:
This is some text inside of a div block.
This is some text inside of a div block.
This is some text inside of a div block.

temporalCoverage

temporalCoverage · Recommended by Google

Appears in

Dataset

What is it?

The temporalCoverage property specifies the time period that a dataset covers. It tells data consumers whether the data spans a single date, a date range, or an ongoing collection period.

Values use ISO 8601 format: a single date (2024-03-15), a date range (2020-01-01/2024-12-31), or an open-ended range (2020-01-01/..) for datasets still being updated.

Why this matters for AEO

When a user asks "is there storm data from the 1990s," AI answer engines check temporalCoverage to match datasets to time-based queries. ISO 8601 date ranges let the AI determine overlap precisely, rather than scanning description text for year mentions.

What the specs say

Schema.org:DateTime, Text, URL. The temporalCoverage of a CreativeWork indicates the period that the content applies to, either as a DateTime or as a textual string indicating a time period in ISO 8601 time interval format.

Google: Recommended. "The data in the dataset covers a specific time interval." Source

How to find your value

  • Single snapshot — Date
  • Fixed time range — Start/End
  • Still collecting — Open-ended
  • Full year — Year range
  • Precise timestamps — DateTime range

Format and code

Date range:

{
  "@context": "https://schema.org",
  "@type": "Dataset",
  "name": "Storm Events Database",
  "temporalCoverage": "2001-08-06/2002-09-09"
}

Open-ended (ongoing collection):

{
  "@context": "https://schema.org",
  "@type": "Dataset",
  "name": "Live Weather Observations",
  "temporalCoverage": "2020-01-01/.."
}

Precise timestamps:

{
  "@context": "https://schema.org",
  "@type": "Dataset",
  "name": "Svartberget Water Balance",
  "temporalCoverage": "2008-04-23T20:00:00Z/2017-10-31T14:00:00Z"
}

Webflow implementation

Static pages

Add the temporalCoverage string inside your Dataset JSON-LD block in Page Settings > Custom Code > Footer Code. Use ISO 8601 format with a / separator for ranges.

CMS template pages

Store start and end dates in CMS date fields. Concatenate them in ISO 8601 format within a custom code embed. Use .. as the end date for ongoing datasets.

In Schema HQ

The temporalCoverage field does not currently generate Dataset markup. Add temporal coverage data manually through Webflow custom code.

Real examples

From Swedish Research Data Service:

{
  "@context": "https://schema.org",
  "@type": "Dataset",
  "temporalCoverage": "2008-04-23T20:00:00Z/2017-10-31T14:00:00Z"
}

From ESIPFed Science on Schema.org:

{
  "@context": "https://schema.org",
  "@type": "Dataset",
  "temporalCoverage": "2001-08-06/2002-09-09"
}

Related fields

FAQ

What date format should temporalCoverage use?

ISO 8601. Single dates: 2024-03-15. Ranges: 2020/2024 or 2020-01-01/2024-12-31. Timestamps: 2020-01-01T00:00:00Z/2024-12-31T23:59:59Z. The / separator divides start from end.

How do I indicate an ongoing dataset?

Use .. as the end of the range: 2020-01-01/... This tells data catalogs the collection is still active and the end date is not yet determined.

Can temporalCoverage be a text description instead of a date?

Yes, schema.org accepts Text values like "The Jurassic period" or "1950s." But ISO 8601 dates are strongly preferred because they allow precise temporal matching in search engines and data catalogs.

On this page:
This is some text inside of a div block.
This is some text inside of a div block.
This is some text inside of a div block.

Need help with schema on your site?

We implement structured data for Webflow sites — from audit to deployment.

Work with us

Work with us