XooCode(){

WatchAction

WatchAction is an Action subtype (via ConsumeAction) for watching video content: streaming a movie, playing a video, watching a live broadcast. It adds no properties of its own. Use it as a potentialAction on a VideoObject or Movie to provide Google with a direct "watch" URL. Google reads this for the "Watch" button in video rich results and knowledge panels.

WatchAction is particularly useful for streaming platforms, where the watch URL may require authentication or differ from the content's informational page. Include actionAccessibilityRequirement (inherited from ConsumeAction) to express whether the content is free or requires a subscription.

Full example of schema.org/WatchAction json-ld markup

The markup is verified as valid with Rich Results Test from Google.

Highlight legend:Required by GoogleRecommendedOptional
schema.org/WatchAction
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Movie",
  "name": "The Children's Doctor",
  "@id": "https://xoofilms.dk/the-childrens-doctor#movie",
  "potentialAction": {
    "@type": "WatchAction",
    "target": {
      "@type": "EntryPoint",
      "urlTemplate": "https://nordicstream.dk/watch/the-childrens-doctor",
      "actionPlatform": [
        "https://schema.org/DesktopWebPlatform",
        "https://schema.org/MobileWebPlatform",
        "https://schema.org/IOSPlatform",
        "https://schema.org/AndroidPlatform"
      ]
    },
    "actionAccessibilityRequirement": {
      "@type": "ActionAccessSpecification",
      "category": "subscription",
      "requiresSubscription": {
        "@type": "MediaSubscription",
        "name": "NordicStream Premium"
      }
    }
  }
}
</script>

Minimal valid version

The smallest markup that still produces a valid WatchAction entity. Use it as the floor. Reach for the advanced example above when you want search engines and AI agents to understand more about your content.

schema.org/WatchAction (minimal)
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Movie",
  "name": "The Children's Doctor",
  "potentialAction": {
    "@type": "WatchAction",
    "target": "https://nordicstream.dk/watch/the-childrens-doctor"
  }
}
</script>

Google rich results this unlocks

Markup matching this example makes your page eligible for the following Google Search rich results. The primary target drives the required / recommended property classification in the advanced code block above.

Common WatchAction mistakes

Mistakes that pass validation but silently fail to earn rich results or mislead consumers walking the graph. Avoid these and your markup will be ahead of most sites in the wild.

  1. 01

    Using ViewAction for video content

    Wrong
    "@type": "ViewAction" on a Movie or VideoObject
    Right
    "@type": "WatchAction"

    ViewAction is for static content (articles, images). WatchAction is for dynamic/moving visual content (videos, movies, live streams). Google uses the distinction to show the correct button label ("View" vs "Watch").

About the example data

A watch action on The Children's Doctor documentary, targeting the NordicStream streaming page.

Comments

Loading comments...

Leave a comment