Adding schema.org structured data markup to your videos never been easier, thanks to this unique Schema Premium built-in extension, which automatically generates markup for embedded videos in your content.

Now, let’s have a look at how it works.

1- VideoObject Settings

To enable this feature, go to Schema → SettingsSchemas → Embeds → VideoObject

Schema Premium Embeds Settings
Embeds Settings

Enabled Video object setting, and obtain a YouTube API Key from your Google Developer console.

Wht YouTube API Key?

In some cases, like in case of embedding YouTube videos; the video data could be missing some required details, or this data isn’t provided in Embed. Schema Premium can get video data using the YouTube API.

After you enabled VideoObject, make sure you save settings.

2- VideoObject Post Meta

If you have enabled VideoObject within the plugin settings, you will notice a new post meta for VideoObject settings when you edit any schema type.

Schema Premium VideoObject post meta
Schema > Type > VideoObject post meta

Note that you can enable markups to multiple videos on the same page.

However, this may slow down your site, make sure your site is hosted on a reliable web host and cache your site pages by a good caching plugin. (Recommended setting: Single Video).

3- Embedding Videos

Now, Schema Premium will add Structured Data for embedded videos on the fly when using oEmbed method.

Schema Premium supports most of popular video service providers that are supported by Embeds. (Supports: Supports VideoPress, YouTube, TED, Vimeo, Dailymotion, and Vine).

Embed video in Gutenberg editor
Embed video in Gutenberg editor

This means, for example; when use Embeds to include a Youtube video into your post in the Editor, Schema Premium will try to discover the details out of the embedded video.

The schema.org for the embedded video will be generated automatically, and nested inside the enabled schema type markup.

4- Test schema markup

When you test schema.org markup in Google Structured Data Testing Tool, you should get a valid video markup. Here is an example (click to enlarge):

Schema Premium VideoObject markup
VideoObject