Schema.org markup for video

Minimal markup example

Below is a list of properties that are required for indexing videos.

Property

Type

Description

url

URL

Video link.

name

Text

Video title.

description

Text

Video description.

duration

Duration

Video duration.

isFamilyFriendly

Boolean

Determines whether children can watch the video.

  • true: Appropriate for children.
  • false: The video contains elements that the law or the site owner consider inappropriate for children.

thumbnail

ImageObject

Preview image description.

uploadDate

Date

The video upload date in the ISO 8601 format.

Example of a minimal video description

<div itemscope itemtype="http://schema.org/VideoObject" > 

<!--Specify the object type-->
    <a itemprop="url" href="https://www.mysite.com/view/306/">
    <h1 itemprop="name">What is Schema.org</h1></a>
    <p itemprop="description">Schema.org is an initiative launched by Google, Bing, and Yahoo! in summer 2011 to implement a common standard for structured data markup. Its purpose is to make the internet more understandable and structured as well as to help search engines and special programs to extract and process information for its convenient presentation in search results.</p>
    <meta itemprop="duration" content="PT6M58S">
    <meta itemprop="isFamilyFriendly" content="true">
    <p>Upload date:<span itemprop="uploadDate">2013-06-05T00:00:00</span></p>
    <span itemprop="thumbnail" itemscope itemtype="http://schema.org/ImageObject"> 
    <img itemprop="contentUrl" src="https://www.mysite.com/images/preview/img1.jpg">
    <meta itemprop="width" content="250">
    <meta itemprop="height" content="120">
    </span>

</div>

Add a player

Note

The video search currently embeds the players of large hosting companies whose databases contain at least 500 videos.

To add your player to the video search results, inform the Yandex robot about it:

  1. Place the player on a separate page.

  2. Add the page link in the embedUrl element.

    <link itemprop="embedUrl" href="https://www.mysite.com/iframe/yacinema/123/">
    
  3. Let us know about the player via the feedback form. We'll test the player and inform you about the results.

Additional markup

The fields listed below are optional, but you can use them to index your videos better and to show them to users that make relevant queries.

Video format

Video categories

Player parameters

Date format

Statistics

Display restrictions

Video format

The following fields are supported:

  • height: Video clip height.

  • width: Video clip width.

  • bitrate: Maximum bitrate in kilobits per second (kbps).

  • videoQuality: Video encoding quality.

    Supported values:

    • low: Low quality (resolution less than 360 × 640, bitrate lower than 717 kbps).

    • medium: Average quality (resolution from 360 × 640 to 720 × 1280, bitrate from 717 kbps to 1 Mbps).

    • HD: HD quality (resolution from 720 × 1280 to 1080 × 1920, bitrate 1–2 Mbps).

    • full HD: 1080p quality (resolution greater than 1080 × 1920, bitrate higher than 2 Mbps).

  • contentSize: Video size in kilobytes.

Video categories

Movie

To describe movies, use the Movie schema.

Supported features:

  • video (required field): A description of the main video content.

    Nested fields are filled in the same way as plain video fields.

  • alternativeHeadline: The movie name in its original language.

  • dateReleased: The movie release date.

  • part: The part number (for movies that have several parts, for example, Harry Potter and the Deathly Hallows: Part 1).

  • subtitleLanguage: Subtitle language.

    The language code is specified in the IETF BCP 47 format (for example, en).

Markup example:

<div itemscope itemtype="http://schema.org/Movie">

  <span>
    <a itemprop="director" href="/name/23330/">Lana Wachowski</a>,
    <a itemprop="director" href="/name/26439/">Tom Tykwer</a>.
  </span>

  <span>
    <a itemprop="producer" href="/name/26437/">Stefan Arndt</a>,
    <a itemprop="producer" href="/name/31351/">Grant Hill</a>,
    <a href="/film/464484/cast/#producer" >and others</a>.
  </span>

  <span>
    <a itemprop="musicBy" href="/name/312865/">Reinhold Heil</a>,
    <a itemprop="musicBy" href="/name/26439/">Tom Tykwer</a>.
  </span>

  <span>
    <a itemprop="genre" href="/level/10/m_act%5Bgenre%5D/8/">drama</a>,
    <a itemprop="genre" href="/level/10/m_act%5Bgenre%5D/17/">detective</a>,
    <a href="/film/464484/keywords/">and others</a>.
  </span>

  <span class="title">Starring:</span>
  <div> 
    <a itemprop="actor" href="/name/9144/">Tom Hanks</a>
    <a itemprop="actor" href="/name/1179/">Halle Berry</a>
    <a itemprop="actor" href="/name/38704/">Jim Broadbent</a>
  </div>

<div itemprop="video" itemscope itemtype="http://schema.org/VideoObject">

<!-- Video description, applies to all videos -->
  <link itemprop="url" href="https://www.kinopoisk.ru/film/464484/">
  <span itemprop="description">Six stories. Five closely intertwined reincarnations that take place at different times…</span>
  <meta itemprop="contentRating" content="MPAA R">
  <meta itemprop="duration" content="PT2H52M04S">
  <meta itemprop="dateReleased" content="2013-11-08T00:00:00">
  <meta itemprop="uploadDate" content="2014-11-08T00:00:00">
  <meta itemprop="dateCreated" content="2013-09-09T00:00:00">
  <meta itemprop="inLanguage" content="ru">
  <meta itemprop="isFamilyFriendly" content="true">
  <meta itemprop="productionCompany" content="Warner Bros">
  <div>
   <h1 itemprop="name">Cloud Atlas</h1>
   <span itemprop="alternativeHeadline">Облачный атлас</span>
   <img src="https://st.kinopoisk.ru/images/film/464484.jpg" alt="Cloud Atlas (Облачный атлас)" itemprop="thumbnail"/>
  </div>

<!-- Subtitle language -->
   <meta itemprop="subtitleLanguage" content="ru">
</div>
Series episode

To describe series, use the TVEpisode schema.

Supported features:

  • video (required field): A description of the main video content.

    Nested fields are filled in the same way as plain video fields.

  • episodeNumber (required field): Episode number.

  • alternativeHeadline: The name in the language of production.

  • dateReleased: Air date.

  • partOfSeason: Season number.

  • subtitleLanguage: Subtitle language.

    The language code is specified in the IETF BCP 47 format (for example, en).

Markup example:

<div itemscope itemtype="http://schema.org/TVEpisode">
  <meta itemprop="alternativeHeadline" content="The best series">
  <meta itemprop="dateReleased" content="2008-12-05T00:00:00">
  <meta itemprop="episodeNumber" content="133">
  <meta itemprop="subtitleLanguage" content="en">
  <div itemprop="video" itemscope itemtype="http://schema.org/VideoObject">
  ...
  </div>
</div>
Music video

To describe music videos, use the MusicVideoObject schema.

Supported features:

  • video (required field): A description of the main video content.

    Nested fields are filled in the same way as plain video fields.

  • trackName (required field): Track name.

  • ovs:album: Album name.

Markup example:

<div itemscope itemtype="http://schema.org/MusicVideoObject">
  <meta itemprop="trackName" content="Welcome to My World">
  <meta itemprop="album" content="Delta Machine">
  <div itemprop="video" itemscope itemtype="http://schema.org/VideoObject">
  ...
  </div>
</div>
TV show episode

To describe a TV show, use the TVSeries schema.

Supported features:

  • video (required field): A description of the main video content.

    Nested fields are filled in the same way as plain video fields.

  • dateReleased (required field): Air date.

  • alternativeHeadline: The name in the language of production.

  • partOfSeason: Season number.

  • episodeNumber: Episode number.

Markup example:

<div itemscope itemtype="http://schema.org/TVSeries">
  <meta itemprop="alternativeHeadline" content="SuperShow">
  <meta itemprop="dateReleased" content="2012-02-03T00:00:00">
  <meta itemprop="partOfSeason" content="2">
  <meta itemprop="episodeNumber" content="3">
  <div itemprop="video" itemscope itemtype="http://schema.org/VideoObject">
  ...
  </div>
</div>
Live broadcast

To describe broadcasts, use the BroadcastEvent schema.

Supported features:

  • video (required field): A description of the main video content.

    Nested fields are filled in the same way as plain video fields.

  • dateStarted (required field): Broadcast start date.

  • dateEnded: Broadcast end date.

    If the video is available at the same address after the broadcast ends, don't fill out the broadcast end date.

Markup example:

<div itemscope itemtype="http://schema.org/BroadcastEvent">
  Broadcast start date<span itemprop="dateStarted">2013-02-01T00:00:00</span>
  Broadcast end date<span itemprop="dateEnded">2013-02-12T00:00:00</span>
  <div itemprop="video" itemscope itemtype="http://schema.org/VideoObject">
  ...
  </div>
</div>

Player parameters

Supported features:

  • embedUrl: An iframe link to insert the video player.

  • allowEmbed: Means that the video can be shown on the Yandex search results page.

    By default, videos can be played directly in the search results.

  • playerType: Available codecs for this video format.

    If multiple codecs are available, specify them separated by commas.

  • availablePlatform: The platform where this video can be played.

    Full list of supported values
    • Desktop: Means that the main personal computer platforms are supported (listed below)

    • Windows

    • Linux

    • OSX

    • Mobile: Means that the main mobile platforms are supported (listed below)

    • iOS

    • Android

    • WindowsPhone

    • WindowsMobile

    • Symbian

    • Bada

    • BlackBerry

    • MeeGo

Date format

Dates are specified in the ISO 8601 format.

Supported features:

  • dateCreated: The date when the video was created.

  • datePublished: The date when the video was first published.

  • dateModified: The date when video information was changed on the site.

  • expires: The date after which the video won't be available.

    For example, it's used if the rights to the video have a time limit.

Markup example:

<meta itemprop="dateCreated" content="2012-11-08">
<meta itemprop="datePublished" content="2013-06-05">
<meta itemprop="dateModified" content="2013-07-22"> 

Statistics

Supported features:

  • interactionCount: Counters for specific types of user interaction with the video.

    You can specify the following counter types in the Counter Name:number format:

    • UserComments: The number of comments.

    • UserLikes: The number of users who liked the video.

    • UserDislikes: The number of users who disliked the video.

    • UserViewsLastMonth: The number of views over the past month.

    • UserViewsLastWeek: The number of views in the past week.

    • UserViewsLastDay: The number of views over the past day.

    • UserViews: The total number of views.

  • aggregateRating: The overall rating based on aggregated user ratings of the video.

    You can set the following parameters for the aggregated rating:

    • worstRating: The lowest rating value (1 by default).

    • bestRating: The top rating value (5 by default).

    • ratingValue: The rating value.

    • ratingCount: The number of ratings on which the rating is based.

Markup example:

<meta itemprop="interactionCount" content="UserComments:18" />
<meta itemprop="interactionCount" content="UserLikes:152" />
<meta itemprop="interactionCount" content="UserDislikes:3" />
<meta itemprop="interactionCount" content="UserViewsLastMonth:25550" />
<meta itemprop="interactionCount" content="UserViewsLastWeek:2544" />
<meta itemprop="interactionCount" content="UserViewsLastDay:2154" />
<meta itemprop="interactionCount" content="UserViews:2154587" />
<div itemprop="aggregateRating" itemscope itemtype="http://schema.org/AggregateRating">
  <meta itemprop="worstRating" content="1">
  <meta itemprop="bestRating" content="5">
  <meta itemprop="ratingValue" content="5">
  <meta itemprop="ratingCount" content="2545">
</div>

Display restrictions

Supported features:

  • allowCountries: A list of countries where the video is available. For example, RU, US, UK.

    We recommend using this field when there's a fixed list of countries where the video must be available, and it isn't available in other countries.

  • disallowCountries: A list of countries where the video is banned or access to it is restricted.

    This field is used if viewing without restrictions is allowed in most countries.

Properties supported by video search

Note

Properties that aren't included in the standard but are supported in the Yandex extension are highlighted in bold.

Property

Type

Description

Mandatory

url

URL

Video link.

name

Text

Video title.

description

Text

Video description.

duration

Duration

Video duration.

<meta itemprop="duration" content="PT6M58S">

isFamilyFriendly

Boolean

Determines whether children can watch the video.

  • true: Appropriate for children.
  • false: The video contains elements that the law or the site owner consider inappropriate for children.

thumbnail

ImageObject

Preview image description.

uploadDate

Date

The video upload date in the ISO 8601 format.

Additional

content_id

Text

The video ID. Must be unique for each video.

The same video that's posted on different pages must have the same ID in the markup of these pages. That way the robot avoids indexing duplicates.

author

Person

The login of the user who uploaded the video to the site.

caption

Text

Video caption.

contentUrl

URL

The address that the video file is available at.

feedUrl

URL

The address of the XML feed for the page.

If there is an XML feed of the recommended format for the page, using Schema.org, you can only specify the object category and a feed link.

But you can also fill out other fields. If there's both an XML feed and filled-out Schema.org fields, preference is given to the feed. If the feed is unavailable for some reason, the data is obtained from the micro-markup.

genre

Text

You can specify the video topic (like humor, sports, or music) and genre (such as comedy, drama, rock, or pop) here.

license

Text

The license type that the video is distributed under.

image

URL

The official video image (for example, a movie poster or an album cover).

productionCompany

Text or Organization

The video production company.

isOfficial

Boolean

Means that the video is posted on the official site or channel of the manufacturer, performer, or copyright holder.

To indicate that the video is official, add the isOfficial attribute with the true value. If this field isn't specified, Yandex considers the video unofficial.

status

Text or URL

The current video status.

The following statuses are available:

  • published: The video is published on the site and is publicly available.

  • private: The video is on the site, but access to it is limited.

  • blocked: The video is blocked.

  • processing: The video is uploaded and being processed.

  • deleted: The video was removed from the site.

height

Distance

The video clip height.

width

Distance

The video clip width.

bitrate

Text

Maximum bitrate in kilobits per second (kbps).

videoQuality

Text

Video encoding quality. Supported values:

  • low: Low quality (resolution less than 360 × 640, bitrate lower than 717 kbps).

  • medium: Average quality (resolution from 360 × 640 to 720 × 1280, bitrate from 717 kbps to 1 Mbps).

  • HD: HD quality (resolution from 720 × 1280 to 1080 × 1920, bitrate 1–2 Mbps).

  • full HD: 1080p quality (resolution greater than 1080 × 1920, bitrate higher than 2 Mbps).

contentSize

Text

Video size in kilobytes.

embedUrl

URL

An iframe link to insert the video player.

allowEmbed

Boolean

Means that the video can be shown on the Yandex search results page. By default, videos can be played directly in the search results.

playerType

Text

Available codecs for this video format. If multiple codecs are available, separate them by commas.

availablePlatform

Text

The platform where this video can be played.

Full list of supported values
  • Desktop: Means that the main personal computer platforms are supported (listed below)

  • Windows

  • Linux

  • OSX

  • Mobile: This means that the main mobile platforms are supported (listed below).

  • iOS

  • Android

  • WindowsPhone

  • WindowsMobile

  • Symbian

  • Bada

  • BlackBerry

  • MeeGo

dateCreated

Date

The date when the video was created.

datePublished

Date

The date when the video was first published.

dateModified

Date

The date when video information was changed on the site.

expires

Date

The date after which the video won't be available.

For example, it's used if the rights to the video have a time limit.

interactionCount

Text

Counters for specific types of user interaction with the video.

To learn more, see Statistics.

aggregateRating

AggregateRating

The overall rating based on aggregated user ratings of the video.

To learn more, see Statistics.

allowCountries

Text

A list of countries where the video is available. For example, RU, US, UK.

We recommend using this field when there's a fixed list of countries where the video must be available, and it isn't available in other countries.

disallowCountries

Text

A list of countries where the video is banned or access to it is restricted.

This field is used if viewing without restrictions is allowed in most countries.

productionCountry

Text

The country of production.

Specified in the ISO 3166-1 format.

inLanguage

Text

Video language.

The language code is specified in the ISO 639 format (for example, EN).

dubbing

Text

The studio that dubbed the video.

Example of a detailed video description

<div itemscope itemtype="http://schema.org/VideoObject">

<!-- Main features -->
    <link itemprop="url" href="https://www.mysite.com/view/308/">
    <meta itemprop="name" content="What is schema.org">
    <meta itemprop="description" content="Schema.org is an initiative launched by Google, Bing, and Yahoo! in summer 2011 to implement a common standard for structured data markup.
    Its purpose is to make the internet more understandable and structured as well as to help search engines and special programs to extract and process information for its convenient presentation in search results.">
    <meta itemprop="duration" content="PT6M58S">
    <span itemprop="author" itemscope itemtype="http://schema.org/Person"></span>
    <meta itemprop="genre" content="education">
    <link itemprop="feedUrl" href="https://example.com/user111/view24/view24.xml"> 
    <meta itemprop="content_id" content="3543">
    <meta itemprop="isFamilyFriendly" content="true">
    <meta itemprop="license" content="СС">
    <link itemprop="image" href="https://www.mysite.com/vi/xcL-oGPxgCg/maxresdefault.jpg">
    <meta itemprop="productionCompany" content="yandex">
    <meta itemprop="status" content="published">

<!-- Dates -->
    <meta itemprop="uploadDate" content="2013-06-05T00:00:00">
    <meta itemprop="dateCreated" content="2012-11-08T00:00:00">
    <meta itemprop="dateModified" content="2013-06-05T00:00:00">
    <meta itemprop="datePublished" content="2013-06-05T00:00:00">

<!-- Images -->
    <span itemprop="thumbnail" itemscope itemtype="http://schema.org/ImageObject">
      <link itemprop="contentUrl" href="http://i1.ytimg.com/vi/xcL-oGPxgCg/maxresdefault.jpg">
      <meta itemprop="width" content="250">
      <meta itemprop="height" content="120">
    </span>

<!-- Player -->
      <link itemprop="embedUrl" href="https://www.mysite.com/iframe/yacinema/r5cia8fb8q.4708/">
      <meta itemprop="allowEmbed" content="true">
      <meta itemprop="playerType" content="Flash">
      <meta itemprop="width" content="1920">
      <meta itemprop="height" content="1080">
      <meta itemprop="videoQuality" content="full HD">
      <meta itemprop="bitrate" content="526">
      <meta itemprop="contentSize" content="526000">
      <meta itemprop="availablePlatform " content="Mobile">

<!-- Regions -->
      <meta itemprop="allowCountries" 
      content="RU, US, UK">
      <meta itemprop="productionCountry" content="RU"> 
      <meta itemprop="inLanguage" content="RU">

<!-- Statistics -->
      <meta itemprop="interactionCount" content="UserComments:18"/>
      <meta itemprop="interactionCount" content="UserLikes:152"/>
      <meta itemprop="interactionCount" content="UserDislikes:3"/>
      <meta itemprop="interactionCount" content="UserViewsLastMonth:25550"/>
      <meta itemprop="interactionCount" content="UserViewsLastWeek:2544"/>
      <meta itemprop="interactionCount" content="UserViewsLastDay:2154"/>
      <meta itemprop="interactionCount" content="UserViews:2154587"/>
      <div itemprop="aggregateRating" itemscope itemtype="http://schema.org/AggregateRating">
       <meta itemprop="worstRating" content="1">
       <meta itemprop="bestRating" content="5">
       <meta itemprop="ratingValue" content="5">
       <meta itemprop="ratingCount" content="2545">
      </div>
</div>
Contact support