Video

Example of a video rich result and videos in image search

Mark up your video content with structured data to make Google Search an entry point for discovering and watching videos. You can provide details such as the description, thumbnail URL, upload date, and duration by marking up your video with VideoObject. You can also add additional structured data to your VideoObject to enable the following video enhancements:

  • Video Carousel: Mark up video gallery pages (a page with a list of videos) using ItemList structured data.
  • Video Segments: Mark important segments in your video with Clip structured data, which enables users to quickly navigate to specific points in a video.

By structuring your content according to this guide, your content may automatically enable a video badge in mobile image Search results.

Examples

Standard video rich result

Here's an example of standard video markup using JSON-LD. It only has the VideoObject and isn't eligible for a Video Carousel or Video Segments.

Here's an example of a page with a list of videos. To enable the Video Carousel, the page has VideoObject and additional ItemList structured data.

JSON-LD
Microdata

Video Segments (limited access)

Here's a JSON-LD example of VideoObject with additional Clip structured data to mark video segments. Video Segments is currently limited to a small set of providers. If you would like to participate, register your interest in our form.

AMP page with a video

Here's an example of a VideoObject on an AMP page.

Guidelines

You must follow these guidelines for your video to be eligible to appear as a video rich result

Video Segment guidelines (limited access)

If you're adding Clip to mark video segments, follow these guidelines:

  • The video must be publicly available to watch without a subscription.
  • The video must have the ability to deep link into some point other than the start point in the video URL. For example, http://www.example.com/example?t=30 starts 30 seconds into a video.
  • Video segment structured data must be added to a page where users can watch the video. It's a bad user experience to point users to a page where they can't watch the video.
  • The total video duration must be a minimum of 30 seconds.
  • Make sure that no two clips on the same video defined on the same page share a start time.
  • The video must have VideoObject structured data.

Structured data type definitions

This section describes the structured data types related to video features in Google Search. You must include the required VideoObject properties for your content to be eligible for display as a video rich result. You can also include the recommended properties to add more information about your content, which could provide a better user experience. In addition to VideoObject, you can add the following data types to enable video enhancements in Google Search:

  • ItemList: Mark up pages with a list of videos to enable a Video Carousel.
  • Clip: Mark important segments in your video to help users quickly navigate to specific points in a video.

VideoObject

The full definition of VideoObject is available at schema.org/VideoObject. If you do not include the required properties, Google may not be able to extract any information about the video. You can also include the recommended properties to add more information about your content, which could provide a better user experience.

Required properties
description

Text

The description of the video. HTML tags are ignored.

name

Text

The title of the video

thumbnailUrl

Repeated ImageObject or URL

A URL pointing to the video thumbnail image file.

  • Image URLs must be crawlable and indexable.
  • Images must represent the marked up content.
  • Images must be in .jpg, .png, or. gif format.
  • Images must 60px x 30px, at minimum.
uploadDate

Date

The date the video was first published, in ISO 8601 format.

Recommended properties
contentUrl

URL

A URL pointing to the actual video media file.

Make sure to follow our Video best practices.

duration

Duration

The duration of the video in ISO 8601 format. For example, T00H30M5S represents a duration of "thirty minutes and five seconds".

embedUrl

URL

A URL pointing to a player for the specific video. Usually this is the information in the src element of an <embed> tag.

Make sure to follow our Video best practices.

expires

Date

If applicable, the date after which the video will no longer be available, in ISO 8601 format. Don't supply this information if your video does not expire.

interactionStatistic

InteractionCounter

The number of times the video has been watched. For example:

"interactionStatistic":
  {
    "@type": "InteractionCounter",
    "interactionType": { "@type": "http://schema.org/WatchAction" },
    "userInteractionCount": 12345
  }

ItemList

To enable your video to display in a Video Carousel, add the following ItemList properties in addition to VideoObject properties. While ItemList properties aren't required, you must add the following properties if you want your video to display in a Video Carousel. For more information about carousels, see Carousel.

The full definition of ItemList is available at schema.org/ItemList.

Required properties
itemListElement

ListItem

Annotation for a single item page. Each ListItem element should include VideoObject properties as well as ListItem properties.

ListItem.position

Integer

Ordinal position of the item page in the list. For example:

"itemListElement": [
  {
    "@type": "VideoObject",
    "position": 1,
    ... other VideoObject properties ...
  }, {
    "@type": "VideoObject",
    "position": 2,
    ... other VideoObject properties ...
  }
]
ListItem.url

URL

The canonical URL of the item page. Every item should have a unique URL.

Clip (limited access)

To enable Video Segments for your video, nest the following properties in your VideoObject. While Clip properties aren't required, you must add the following properties if you want your video to display with video segments.

The full definition of Clip is available at schema.org/Clip.

Required properties
name

Text

A descriptive title for the content of the clip.

startOffset

Number

The start time of the clip expressed as the number of seconds from the beginning of the work.

url

URL

A URL that points to the start time of the clip.

The clip URL must point to the same URL path as the video with additional query parameters that specify the time.

For example, the following URL means the video starts at 2:00 minutes:

"url": "https://www.example.com/example?t=120"
Recommended properties
endOffset

Number

The end time of the clip expressed as the number of seconds from the beginning of the work.