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.

partOfSeason

partOfSeason · No Google docs page

Appears in

TVEpisode

What is it?

The partOfSeason property links a TV episode to the season it belongs to. Combined with partOfSeries, it creates the full series > season > episode hierarchy that structures television content.

Why this matters for AEO

When a user asks "what season is Episode 8 of Doctor Who," AI answer engines pull partOfSeason to identify the season number. This structured link lets the AI answer season-specific questions without parsing page text.

What the specs say

Schema.org:CreativeWorkSeason. The season to which this episode belongs.

Google: No dedicated Google structured data page exists for TVEpisode.

How to find your value

  • Streaming platforms — Season label on episode page
  • TV databases — IMDb, TVDB season grouping
  • Network websites — Season navigation on show page
  • DVD/Blu-ray releases — Season number on disc packaging

Format and code

{
  "@context": "https://schema.org",
  "@type": "TVEpisode",
  "name": "Episode 1",
  "episodeNumber": "1",
  "partOfSeason": {
    "@type": "TVSeason",
    "seasonNumber": "2"
  },
  "partOfSeries": {
    "@type": "TVSeries",
    "name": "Grey's Anatomy"
  }
}

With season name:

{
  "partOfSeason": {
    "@type": "TVSeason",
    "name": "Season 5",
    "seasonNumber": "5"
  }
}

Webflow implementation

Static pages

Add the partOfSeason object inside your TVEpisode JSON-LD block in Page Settings > Custom Code > Footer Code. Use TVSeason as the type with seasonNumber.

CMS template pages

Store the season number in a CMS number field. Reference it in a custom code embed to build the TVSeason object.

In Schema HQ

The partOfSeason field does not currently generate TVEpisode markup. Add season data manually through Webflow custom code.

Real examples

From Schema.org TVEpisode Example:

{
  "@context": "https://schema.org",
  "@type": "TVSeries",
  "name": "Greys Anatomy",
  "containsSeason": {
    "@type": "TVSeason",
    "name": "Season 2",
    "episode": {
      "@type": "TVEpisode",
      "name": "Episode 1",
      "episodeNumber": "1",
      "partOfSeason": {
        "@type": "TVSeason",
        "seasonNumber": "2"
      }
    }
  }
}

**

{
  "@context": "https://schema.org",
  "@type": "TVEpisode",
  "name": "The Hungry Earth",
  "episodeNumber": "8",
  "partOfSeason": {
    "@type": "TVSeason",
    "seasonNumber": "5"
  },
  "partOfSeries": {
    "@type": "TVSeries",
    "name": "Doctor Who"
  }
}

Related fields

FAQ

What type should the value use?

Use TVSeason for television shows. CreativeWorkSeason is the parent type and works as a fallback, but TVSeason is more specific and preferred.

Is seasonNumber required inside partOfSeason?

Schema.org does not require it, but it is strongly recommended. A TVSeason object without a seasonNumber provides the hierarchical link but loses the numeric identifier that makes the data useful for queries.

Should I use partOfSeason and partOfSeries together?

Yes. Together they create the full hierarchy: series > season > episode. Using both gives AI engines the complete context to answer questions about any level of the show structure.

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