Video

Schema.org video markup

Example of minimal markup

This table lists properties that need to be included for the videoclips to be indexed.

PropertyTypeDescription
url URL

Link to videoclip.

name Text

Video title.

description Text

Video description.

duration Duration

Video length.

isFamilyFriendly Boolean

Indicates whether or not video is appropriate for children:

  • true — if appropriate for children.
  • false — if the clip contains elements that either the law or the site's owner deems inappropriate for children.
thumbnail ImageObject

Description of preview image.

uploadDate Date

Date the video was uploaded to site in ISO 8601 format.

Example of minimal video description.

<div itemscope itemtype="http://schema.org/VideoObject" > 
<!--Indication of object type-->
    <a itemprop="url" href="http://mysite.com/view/306/">
    <h1 itemprop="name">What is Schema.org</h1></a>
    <p itemprop="description">Schema.org is a semantic markup standard for internet data that was released by Google, Bing and Yahoo! during the summer of 2011. The goals of semantic markup are to make the internet more intelligible and structured, and to make it easier for search systems and special programs to retrieve and process information so that it is clearly presented 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="http://mysite.com/images/preview/img1.jpg">
    <meta itemprop="width" content="250">
    <meta itemprop="height" content="120">
    </span>
</div>

Adding a player

Note. Currently Yandex.Video has embedded players for the major hosting sites (those that have a base of at least 1000 videoclips).

To make sure your player ends up in video search results, let the Yandex robot know about it using one of these methods:

  • Put the player on a separate page and enter the link to it in the embedUrl element.

    <link itemprop="embedUrl" content="//mysite.com/iframe/yacinema/123/">
  • Send the HTML code to integrate your player, wrapping it in the embedHTML tag.

    <div itemprop="embedHTML"><iframe width="640" height="360" src="//mysite.com/123/?feature=player_detailpage" frameborder="0" allowfullscreen=></iframe></div>

Use the feedback form to let us know when you enter the player information in the markup. We will test the player and inform you of the results.

Additional markup

The fields listed below are not mandatory, but including them will help with indexing your videoclips and will increase the odds that your videos will display in response to a relevant search query.

Video format

The following fields are supported:

  • height — Videoclip height in pixels.

  • width — Videoclip width in pixels.

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

  • videoQuality — Quality of video encoding.

    Supported values:

    • low — Low quality (resolution lower than 360×640, bitrate below 717 kbps)

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

    • HD — HD quality (resolution between 720×1280 and 1080×1920, bitrate of 1-2 Mbps)

    • full HD — 1080 res quality (resolution higher than 1080×1920, bitrate above 2 Mbps)

  • contentSize — Size of the video file in kilobytes.

Video categories

Movie

Use the Movie schema to describe films.

Supported characteristics:

  • video (mandatory field) — Description of main contents of videoclip.

    Nested fields are filled in the same way as for a simple video.

  • alternativeHeadline — name of film in original (production) language.

  • dateReleased — Movie release date.

  • part — part number (for movies with multiple parts, such as Harry Potter and the Deathly Hollows: Part 1).

  • subtitleLanguage — language of subtitles.

    Language code is indicated using 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>,
    <a itemprop="director" href="/name/26439/">Tom Tykwer</a>.
  </span>

  <span>
    <a itemprop="producer" href="/name/26437/">Stephan 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/">d</a>,
    <a href="/film/464484/keywords/">and others</a>.
  </span>

  <span class="title">Staring:</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">

<!-- General description of videoclips -->
  <link itemprop="url" href="http://www.kinopoisk.ru/film/464484/">
  <span itemprop="description">Six stories and five reincarnations that take place in different times, yet are intimately connected to one another...</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="http://st.kinopoisk.ru/images/film/464484.jpg" alt="Cloud Atlas (Облачный атлас)" itemprop="thumbnail"/>
  </div>

<!-- Subtitle language -->
   <meta itemprop="subtitleLanguage" content="ru">   
</div>
Episode of series

Use the TVEpisode schema to describe a episode.

Supported characteristics:

  • video (mandatory field) — Description of main contents of videoclip.

    Nested fields are filled in the same way as for a simple video.

  • episodeNumber (mandatory field) — episode number.

  • alternativeHeadline — Name of film in original (production) language.

  • dateReleased — Movie release date.

  • partOfSeason — Season number.

  • subtitleLanguage — Language of subtitles.

    Language code is indicated using 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

Use the MusicVideoObject schema to describe a music video.

Supported characteristics:

  • video (mandatory field) — Description of main contents of videoclip.

    Nested fields are filled in the same way as for a simple video.

  • trackName (mandatory field) — Track name.

  • 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>
Episode of a show

Use the TVSeries schema to describe a TV show.

Supported characteristics:

  • video (mandatory field) — Description of main contents of videoclip.

    Nested fields are filled in the same way as for a simple video.

  • dateReleased (mandatory field) — Release date.

  • alternativeHeadline — Name of film in original (production) language.

  • 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>
Broadcast

Use the BroadcastEvent schema to describe the airing.

Supported characteristics:

  • video (mandatory field) — Description of main contents of videoclip.

    Nested fields are filled in the same way as for a simple video.

  • dateStarted (mandatory field) — Date of the first broadcast.

  • dateEnded — Date of the last broadcast.

    If the video is accessible at the same address after the broadcast ends, the end date is omitted.

Markup example:

<div itemscope itemtype="http://schema.org/BroadcastEvent">
  Date of first broadcast<span itemprop="dateStarted">2013-02-01T00:00:00</span>
  Date of last broadcast<span itemprop="dateEnded">2013-02-12T00:00:00</span>
  <div itemprop="video" itemscope itemtype="http://schema.org/VideoObject">
  ...
  </div>
</div>

Video player parameters

Supported characteristics:

  • embedUrl — iframe link to embed video player.

  • embedHTML— HTML code to embed video player.

    Enter this if you can't generate an iframe link for the embedURL field.

  • allowEmbed — Indicates that the video can be displayed on the Yandex search results page.

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

  • playerType — Available codecs for this video format.

    If multiple codecs are available, they are comma-separated.

  • availablePlatform — The platform you can play the video on.

    Full list of possible platforms:

    • Desktop — indicates that the main PC platforms are supported (see list below)

    • Windows

    • Linux

    • OSX

    • Mobile — indicates that the main mobile platforms are supported (listed below)

    • iOS

    • Android

    • WindowsPhone

    • WindowsMobile

    • Symbian

    • Bada

    • BlackBerry

    • MeeGo

Date format

Date indicated in ISO 8601 format.

Supported characteristics:

  • dateCreated — Date videoclip was created.

  • datePublished — Date videoclip was first published

  • dateModified — Date changes were made to videoclip information on site.

  • expires — Last date when video will be available.

    Used if, for example, rights to view the video are restricted to a time period.

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 characteristics:

  • interactionCount — Counter for specific types of user interaction with the videoclip.

    You can enter the following counter types using the counterName:date format:

    • UserComments — Number of comments

    • UserLikes — Number of user "likes"

    • UserDislikes — Number of user "dislikes"

    • UserViewsLastMonth — Number of views in last month

    • UserViewsLastWeek — Number of views in last week

    • UserViewsLastDay — Number of views in last day

    • UserViews — Total number of views

  • aggregateRating — Overall rating based on users' reviews

    For a aggregate rating statistics, the following parameters may be set:

    • worstRating — Lowest rating value (1 by default)

    • bestRating — Highest rating value (5 by default)

    • ratingValue — Rating value

    • ratingCount — Number of reviews that the rating is based on

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>

Viewing restrictions

Supported characteristics:

  • allowCountries — List of countries where video is allowed to be shown along with age restriction. For example: RU (18+), US (16+), UK (12+).

    We recommend using this field if the video is only allowed to be shown in certain countries.

  • disallowCountries — List of countries where this video is restricted or not permitted for viewing.

    This field is used in cases when unrestricted viewing is permitted in the majority of countries.

    In cases where there are restrictions, enter the minimum audience age. For example: RU (18+), US (16+), UK (12+).

Paid video access

Supported characteristics:

  • offerType — Type of video access.

    By default, the video is assumed to be free of charge and available without registration. To correctly markup the type of video content access, include a link to the corresponding XML document in the page code. We recommend using the link tag for this:

    <link itemprop="offerType" href="https://webmaster.yandex.ru/vocabularies/Video/Subscription.xml"/>

    Supported types:

    • Free — The user can access the video without paying or registering on the website.

    • Buy — the user gets permanent access to a specific videoclip.

    • Rent — the user gets access to a specific video clip for a certain period of time.

    • Subscription — The user gets access to videoclips from a certain series for a given period of time.

  • offers — Conditions for videoclip access.

  • price — Price.

  • priceCurrency — Price currency.

    Indicated using three-letter ISO 4217 format (for example, USD).

  • duration — period of subscription or rent of videoclip.

    Indicated using ISO 8601 format (for example, P1DT12H).

Properties that Yandex.Video supports

Note. Properties that are not included in the standard but supported in the Yandex extension are emboldened.
PropertyTypeDescription
Mandatory
url URL

Link to videoclip.

name Text

Video title.

description Text

Video description.

duration Duration

Video length.

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

isFamilyFriendly Boolean

Indicates whether or not video is appropriate for children:

  • true — if appropriate for children.
  • false — if the clip contains elements that either the law or the site's owner deems inappropriate for children.
thumbnail ImageObject

Description of preview image.

uploadDate Date

Date the video was uploaded to site in ISO 8601 format.

Additional
content_id Text

Video ID, which must be unique for each video.

If the same video is hosted on different pages, it must have the same ID in the markup of those pages. This way the robot can avoid indexing duplicates.

author Person

Username of user who uploaded clip to site.

caption Text

Subscription to video.

contentUrl URL

Address of webpage where the video is published.

feedUrl URL

Address of XML feed for this page.

If there is an XML feed in the recommended format for the page, then you can enter just the object category and feed link using Schema.org.

However, other fields may be filled in as well. If both the XML feed and filled-in Schema.org fields are available, preference is given to the feed. If the feed is unavailable for some reason, data will be taken from the micro markup.

genre Text

Here you can enter information about what broad type of video it is (humor, sports, music, etc.) and its genre (comedy, drama, rock, pop).

license Text

Type of license that the video is published under.

image URL

Official image for the video (for example, a movie poster or album cover).

productionCompanyText or Organization

Video production company.

isOfficial Boolean

Indicates the video is hosted on the official site or channel of the producer, performer, or copyright holder.

To indicate that the video is official, add the isOfficial attribute with the value true. If this field is omitted, Yandex will consider the video unofficial.

status Text or URL

The current status of the video.

The following statuses are available:

  • published — The video is published on the site and made public.

  • private — The video is on the website, but access to it is restricted.

  • blocked — The video is blocked.

  • processing — The video has been uploaded and is being processed.

  • deleted — The video has been removed from the site.

height Distance

Video height in pixels.

width Distance

Width of video in pixels.

bitrate Text

Maximum bitrate in kilobits per second (kbps).

videoQuality Text

Quality of video encoding. Supported values:

  • low — Low quality (resolution lower than 360×640, bitrate below 717 kbps)

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

  • HD — HD quality (resolution between 720×1280 and 1080×1920, bitrate of 1-2 Mbps)

  • full HD — 1080 res quality (resolution higher than 1080×1920, bitrate above 2 Mbps)

contentSize Text

Size of video in kilobytes.

embedUrl URL

Iframe link to embed video player.

embedHTML Text

HTML code for embedding the player to display the video. Enter this if you can't generate an iframe link for the embedURL field.

allow_embed Boolean

Indicates that the video can be displayed on the Yandex search results page. By default, a video can be played directly in the search results.

playerType Text

Available codecs for this video format. If multiple codecs are available, they are comma-separated.

availablePlatform Text

The platform that this video can be played on.

Full list of supported values:
  • Desktop — indicates that the main PC platforms are supported (see list below)

  • Windows

  • Linux

  • OSX

  • Mobile — Indicates that the main mobile platforms are supported (listed below).

  • iOS

  • Android

  • WindowsPhone

  • WindowsMobile

  • Symbian

  • Bada

  • BlackBerry

  • MeeGo

dateCreated Date

Date the video was created.

datePublished Date

Date the videoclip was first published.

dateModified Date

Date changes were made to videoclip information on site.

expires Date

Last date when video will be available.

Used if, for example, rights to view the video are restricted to a time period.

interactionCount Text

Counter for specific types of user interaction with the videoclip.

For more information, see Statistics.

aggregateRating AggregateRating

Overall rating based on compilation of user reviews.

For more information, see Statistics.

allowCountries Text

List of countries where video is allowed to be shown along with age restriction. For example: RU (18+), US (16+), UK (12+).

We recommend using this field if the video is only allowed to be shown in certain countries.

disallowCountries Text

List of countries where showing this video is prohibited or restricted.

This field is used in cases when unrestricted viewing is permitted in the majority of countries. In cases where there are restrictions, enter the minimum audience age. For example: RU (18+), US (16+), UK (12+).

productionCountry Text

Country of production.

Written in ISO 3166-1 format.

inLanguage Text

Videoclip language.

Language code is indicated using the ISO 639 format (for example, EN).

dubbing Text

Studio that dubbed video.

offers Offer

Conditions regulating videoclip access.

price

Price.

priceCurrency Text

Currency video price is listed in.

Use the three-letter ISO 4217 format to indicate prices (for example, USD).

offerType Text or URL

Video access type.

By default, the video is considered available free of charge and without registration. To correctly markup the type of video content access, include a link to the corresponding XML document in the page code. We recommend using the link tag for this:

<link itemprop="offerType" href="https://webmaster.yandex.ru/vocabularies/Video/Subscription.xml"/>

Supported types:

  • Free — The user can access the video without paying or registering on the website.

  • Buy — the user gets permanent access to a specific videoclip.

  • Rent — the user gets access to a specific video clip for a certain period of time.

  • Subscription — the user gets access to videoclips from a certain series for a given period of time.

duration

Length of videoclip subscription or rental period. Indicated using ISO 8601 format (for example, P1DT12H).

Example of detailed video description

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

<!-- Main characteristics -->
    <link itemprop="url" href="http://mysite.com/view/308/">
    <meta itemprop="name" content="What is schema.org">
    <meta itemprop="description" content="Schema.org is a semantic markup standard for internet data that was released by Google, Bing and Yahoo! during the summer of 2011.
    The goals of semantic markup are to make the internet more intelligible and structured, and to make it easier for search systems and special programs to retrieve and process information so that it is clearly presented 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="http://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="http://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="//mysite.com/iframe/yacinema/r5cia8fb8q.4708/">
      <div itemprop="embedHTML"><![CDATA[<iframe width="2133" height="1058"                
      src="//mysite.com/iframe/yacinema/123/" frameborder="0" allowfullscreen></iframe>]]></div>
      <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">

<!-- Regionality -->
      <meta itemprop="allowCountries" 
      content="RU (18+), US (16+), UK (12+), TR, AF (18+), AG (11+)">
      <meta itemprop="productionCountry" content="RU"> 
      <meta itemprop="inLanguage" content="RU"> 
      </span>

<!-- Price -->
      <span itemprop="offers" itemscope itemtype="http://schema.org/Offer">
        <meta itemprop="price" content="15">
        <meta itemprop="priceCurrency" content="USD">
        <link itemprop="offerType"  
        href="https://webmaster.yandex.ru/vocabularies/Video/Subscription.xml">
        <meta itemprop="duration" content="P1DT12H">
      </span>

<!-- 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>