
The livestream feature adds a live badge to video thumbnails in search results. In order for the badge to appear, we'll need to know whether the video is live or when the stream begins. The live badge can be applied to any public video that is live streamed for any duration of time. Here are a few examples:
- Sporting events
- Awards shows
- Influencer videos
- Live streaming video games
Example
Here's an example of VideoObject
and isLiveBroadcast
using JSON-LD
code in the Structured Data Testing Tool.
Guidelines
You must follow these guidelines for your content to be eligible to display as a rich result with a live badge:
Content guidelines
- Don't use vulgar or potentially offensive language in the structured data.
Structured data type definitions
You must include the required properties for your content to be eligible for display as a rich result. You can also include the recommended properties to add more information about your content, which could provide a better user experience.
VideoObject
The full definition of VideoObject
is available at
schema.org/VideoObject.
Required properties | |
---|---|
contentUrl |
A URL pointing to the actual video media file. |
description
|
The description of the video. |
embedUrl
|
A URL pointing to a player for the specific video. Usually this is the information in
the |
name
|
The title of the video. |
thumbnailUrl
|
Repeated field of ImageObject or URL A URL pointing to the video thumbnail image file.
Additional image guidelines:
For example: "image": [ "https://example.com/photos/1x1/photo.jpg", "https://example.com/photos/4x3/photo.jpg", "https://example.com/photos/16x9/photo.jpg" ] |
uploadDate
|
The date the video was first published, in ISO 8601 format. |
publication
|
Describes when the video is to be streamed live. Can be a list or a single instance. |
Recommended properties | |
---|---|
duration
|
The duration of the video in ISO 8601 format. |
expires
|
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. |
interactionCount
|
The number of times the video has been viewed. |
BroadcastEvent
The full definition of BroadcastEvent
is available at
schema.org/BroadcastEvent.
BroadcastEvent
properties must be included inside the VideoOject
entity.
Required properties | |
---|---|
endDate
|
Time and date of when the livestream ends or is expected to end, in ISO 8601 format. It is required to provide the If |
isLiveBroadcast |
Boolean Set to true if the video is, has been, or will be streamed live. |
startDate
|
Time and date of when the livestream starts or is expected to start, in
ISO 8601 format. If
|
Update Google quickly with the Indexing API
We recommend using the Indexing API to ensure that Google crawls your livestream quickly. Call the API for the following events:
- When the video goes live
- When the video has stopped streaming, and the page's markup has been updated
to indicate the
endDate
- Whenever a change has happened in the markup and Google needs to be notified