PodcastSeries and PodcastEpisode markup with feed and transcripts

Make podcast content machine-readable across episodes, series, and the underlying RSS feed.

Scan your site

What this signal tests

We check that podcast pages carry two related structured-data types. PodcastSeries describes the whole show and points to the RSS feed using a webFeed property. PodcastEpisode describes each individual episode with partOfSeries, episodeNumber, duration, datePublished, and an associatedMedia AudioObject. A transcript field on the episode unlocks full-text indexing.

Why it matters for your visibility in AI

Podcasts are pure audio with very little surrounding text on most episode pages. Without PodcastEpisode markup and a transcript, an AI crawler sees a player widget and not much else. The actual content of the episode (interviews, debates, expertise) is invisible to retrieval. An AI answer engine looking for authoritative voices on your topic cannot find you. The RSS feed pointer matters too. AI ingestion services that subscribe to RSS pull new episodes automatically as they publish. Without webFeed, your podcast cannot be bulk-ingested by news aggregators, podcast directories, or AI assistants that maintain their own listening libraries.

Pass criteria at a glance

Criterion Passes when
Podcast pages have PodcastEpisode; >=40% include transcript.

How we test it

We look for podcast indicators on the page: PodcastSeries JSON-LD, RSS feed links, or common podcast embed players. If detected, we require PodcastEpisode markup with partOfSeries (linking back to the series), an associatedMedia of type AudioObject, episodeNumber, duration, and datePublished. We measure what percentage of episodes also include transcript text.

Show technical detection method
Detect podcast pages (PodcastSeries schema, RSS link, common podcast embeds); require PodcastEpisode with partOfSeries and associatedMedia.

If your site fails: how to fix it

  1. Add a PodcastSeries JSON-LD block to your podcast home page with name, description, image, and webFeed (your RSS feed URL).
  2. On every episode page, add a PodcastEpisode JSON-LD with partOfSeries (pointing to your PodcastSeries), episodeNumber, datePublished (ISO 8601), duration (ISO 8601), and associatedMedia containing an AudioObject with contentUrl.
  3. Transcribe each episode (Whisper, Descript, Otter, Rev) and include the transcript in the PodcastEpisode.transcript field. Aim to transcribe at least 40 percent of your back catalogue and 100 percent of new episodes.
  4. Render the transcript as visible HTML on the episode page too, ideally inside an <article> element with proper heading hierarchy. This doubles up the signal for text crawlers.
  5. Validate via Google's Rich Results Test. Podcast structured data has strict required fields; missing partOfSeries is the most common error.
  6. If you use Buzzsprout, Transistor, Podbean, or Squarespace podcast hosting, check whether their templates already emit this markup. Many do partial markup but skip the transcript field.

Quick facts

MaturityESTABLISHED
Weightmedium
CategoryMultimodal

Primary sources

Related signals

Frequently asked questions

I host on Spotify or Apple Podcasts. Why does the markup on my website matter?

Your website is where AI crawlers land when someone searches for your show. The platform catalogs do not feed most AI search products. The structured data on your episode pages is what gets ingested into general-purpose AI retrieval indexes.

Do I need to transcribe my whole back catalogue?

Not all at once. Prioritise high-traffic episodes and recent ones. Even covering your latest 20 episodes meaningfully expands the surface area AI systems can cite. Whisper running locally can transcribe an hour of audio in a few minutes on modern hardware.

Can a single page describe both the series and an episode?

Yes. You can include both PodcastSeries and PodcastEpisode JSON-LD blocks on an episode page, or use a graph structure that nests them. The important part is that partOfSeries on the episode points to the correct series identifier.

What about video podcasts on YouTube?

Video podcasts should use PodcastEpisode plus VideoObject (rather than AudioObject) in associatedMedia. Or publish both: the audio file with AudioObject and the video version with VideoObject. Both carry transcripts independently.

Run your own scan

Run a free scan and see how your site grades across all 155 AI-readiness signals.

Scan your site