Moz Q&A is closed.
After more than 13 years, and tens of thousands of questions, Moz Q&A closed on 12th December 2024. Whilst we’re not completely removing the content - many posts will still be possible to view - we have locked both new posts and new replies. More details here.
Schema types for webinars, infographics, datasheets, product videos and eBooks
-
Hi,
I’m looking to add Schema markup to my company pages’s webinar page (recording past webinars) and data sheets, infographics, product videos, eBooks/white papers. For eBooks, I am primarily referring to a landing page with a gate to download a PDF document.
I’m trying to determine the best markup type:
For Webinars, I’ve seen suggestions to use “Event” type but that seems appropriate for future events, not something like a recorded webinar, which is not time-sensitive, unlike a live event. However, I see a StackOverflow forum to use http://schema.org/recordedIn for recorded webinars.
For eBooks and White Papers, I see a few potential schema types:
https://schema.org/DigitalDocument
https://schema.org/CreativeWork
http://schema.org/EBook (or https://schema.org/Book and then book format type of Ebook)
-
I will create the schema for my movies website. I will create the Movie rating schema, Article schema and some more schemas that is need to my website.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Movie",
"actor": [
{
"@type": "Person",
"name": "Johnny Depp"
},
{
"@type": "Person",
"name": "Penelope Cruz"
},
{
"@type": "Person",
"name": "Ian McShane"
}
],
"aggregateRating": {
"@type": "AggregateRating",
"bestRating": "10",
"ratingCount": "200",
"ratingValue": "8",
"reviewCount": "50"
},
"author": [
{
"@type": "Person",
"name": "Ted Elliott"
},
{
"@type": "Person",
"name": "Terry Rossio"
}
],
"description": "Jack Sparrow and Barbossa embark on a quest to find the elusive fountain of youth, only to discover that Blackbeard and his daughter are after it too.",
"director": {
"@type": "Person",
"name": "Rob Marshall"
},
"name": "Pirates of the Carribean: On Stranger Tides (2011)"
}
</script>
This schema is help me to index my website fastly. -
@WhiteHat1 Hey there! For a webinar, the most appropriate schema would be a combination of Event and OnDemandEvent due to its online nature. However, as of my last update, OnDemandEvent was more suitable for an event like a movie or TV show that is available for streaming whenever you want to watch it, rather than a live webinar that takes place at a specific time.
For most live webinars, you should use the Event type with an eventAttendanceMode property set to OnlineEventAttendanceMode. The VirtualLocation type would also be used instead of a physical address.
Here's an example of what that schema might look like:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Event",
"name": "Interactive Webinar on Data Science",
"description": "Join our expert panel as they delve into the latest trends in Data Science. This webinar will cover a range of topics from predictive analytics to deep learning.",
"startDate": "2023-12-01T18:00:00+00:00",
"endDate": "2023-12-01T19:30:00+00:00",
"eventAttendanceMode": "https://schema.org/OnlineEventAttendanceMode",
"eventStatus": "https://schema.org/EventScheduled",
"location": {
"@type": "VirtualLocation",
"url": "https://www.webinarhost.com/event123"
},
"image": "https://www.webinarhost.com/images/event123_banner.jpg",
"organizer": {
"@type": "Organization",
"name": "Data Science Community Forum",
"url": "https://www.datascienceforum.org"
},
"performer": {
"@type": "Person",
"name": "Dr. Jane Doe",
"url": "https://www.datascienceforum.org/speakers#JaneDoe"
},
"offers": {
"@type": "Offer",
"url": "https://www.webinarhost.com/register/event123",
"price": "0",
"priceCurrency": "USD",
"availability": "https://schema.org/InStock",
"validFrom": "2023-11-01T09:00:00+00:00"
},
"audience": {
"@type": "EducationalAudience",
"audienceType": "Professional"
},
"recordedIn": {
"@type": "CreativeWork",
"name": "Data Science Webinar Series"
}
}
</script>Some points to consider:
eventAttendanceMode: Specifies that the event is an online event.
location: Uses VirtualLocation with a url property to indicate where the webinar can be accessed.
offers: Contains details about the registration or ticketing, which in this case indicates a free event.
recordedIn: If the webinar is part of a series, you might include this to reference the series.
Make sure to validate your structured data using Google's Rich Results Test or similar tools to check for any errors or warnings that might affect how search engines interpret and display your content.I really hope that this helps!
Got a burning SEO question?
Subscribe to Moz Pro to gain full access to Q&A, answer questions, and ask your own.
Browse Questions
Explore more categories
-
Moz Tools
Chat with the community about the Moz tools.
-
SEO Tactics
Discuss the SEO process with fellow marketers
-
Community
Discuss industry events, jobs, and news!
-
Digital Marketing
Chat about tactics outside of SEO
-
Research & Trends
Dive into research and trends in the search industry.
-
Support
Connect on product support and feature requests.
Related Questions
-
How to find correct schema type
Dear Moz members, I m currently working on schema optimizations of my website casinobesty.com which review online casino websites. I have a doubt which schema itemReviewed type I have to use in the review pages. Currently I m using type as "Game" but I m not sure it is correct. "description": "",
Intermediate & Advanced SEO | | CongthanhThe
"itemReviewed": {
"@type": "Game",
"name": "LeoVegas Casino",
"url": "https://casinobesty.com/casino/leovegas-casino/"
}, Thank you1 -
JSON-LD schema markup for a category landing page
I'm working on some schema for a client and have a question regarding the use of schema for a high-level category page. This page is merely the main lander for Categories. For example: https://www.examples.com/pages/categories And all it does is list links to the three main categories (Men's, Women's, Kid's) - it's a clothing store. This is the code I have right now. In short, simply using type @Itemlist and an array that uses @ListItem. Structured Data Testing Tool returns no errors with it, but my main question is this: Is this the _correct _way to do a page like this, or are there better options? Thanks.
Intermediate & Advanced SEO | | Alces0 -
Should I use https schema markup after http-https migration?
Dear Moz community, Noticed that several groups of websites after HTTP -> HTTPS migration update their schema markup from, example : {
Intermediate & Advanced SEO | | admiral99
"@context": "http://schema.org",
"@type": "WebSite",
"name": "Your WebSite Name",
"alternateName": "An alternative name for your WebSite",
"url": "http://www.your-site.com"
} becomes {
"@context": "https://schema.org",
"@type": "WebSite",
"name": "Your WebSite Name",
"alternateName": "An alternative name for your WebSite",
"url": "https://www.example.com"
} Interesting to know, because Moz website is on https protocol but uses http version of markup. Looking forward for answers 🙂0 -
Should HTML be included in the structured data (schema) markup for the main body content?
Lately we have been applying structured data to the main content body of our client's websites. Our lead developer had a good question about HTML however. In JSON-LD, what is the proper way to embed content from a data field that has html markup (i.e. p, ul, li, br, tags) into mainContentOfPage. Should the HTML be stripped our or escaped somehow? I know that apply schema to the main body content is helpful for the Googlebot. However should we keep the HTML? Any recommendations or best practices would be appreciated. Thanks!
Intermediate & Advanced SEO | | RosemaryB0 -
Product or Shop in URL
What do you think is better for seo and for sale, I am using woo-ecommerce for health products website. websitename.com/product/keyword OR websitename.com/shop/keyword
Intermediate & Advanced SEO | | MasonBaker0 -
Shopify Product Variants vs Separate Product Pages
Let's say I have 10 different models of hats, and each hat has 5 colors. I have two routes I could take: a) Make 50 separate product pages Pros: -Better usability for customer because they can shop for just masks of a specific color. We can sort our collections to only show our red hats. -Help SEO with specific kw title pages (red boston bruins hat vs boston bruins hat). Cons: -Duplicate Content: Hat model in one color will have almost identical description as the same hat in a different color (from a usability and consistency standpoint, we'd want to leave descriptions the same for identical products, switching out only the color) b) Have 10 products listed, each with 5 color variants Pros: -More elegant and organized -NO duplicate Content Cons: -Losing out on color specific search terms -Customer might look at our 'red hats' collection, but shopify will only show the 'default' image of the hat, which could be another color. That's not ideal for usability/conversions. Not sure which route to take. I'm sure other vendors must have faced this issue before. What are your thoughts?
Intermediate & Advanced SEO | | birchlore0 -
Benefits of Rich Snippets for financial products
Does anyone have experience of using rich snippets for non-physical products? Our website offers credit cards comparison service. Do you think that tagging each card's page with rich snippets such as credit card image, name, description and category makes sense? The idea is to make it stand out in the search results.
Intermediate & Advanced SEO | | imoney0 -
Dynamic pages - ecommerce product pages
Hi guys, Before I dive into my question, let me give you some background.. I manage an ecommerce site and we're got thousands of product pages. The pages contain dynamic blocks and information in these blocks are fed by another system. So in a nutshell, our product team enters the data in a software and boom, the information is generated in these page blocks. But that's not all, these pages then redirect to a duplicate version with a custom URL. This is cached and this is what the end user sees. This was done to speed up load, rather than the system generate a dynamic page on the fly, the cache page is loaded and the user sees it super fast. Another benefit happened as well, after going live with the cached pages, they started getting indexed and ranking in Google. The problem is that, the redirect to the duplicate cached page isn't a permanent one, it's a meta refresh, a 302 that happens in a second. So yeah, I've got 302s kicking about. The development team can set up 301 but then there won't be any caching, pages will just load dynamically. Google records pages that are cached but does it cache a dynamic page though? Without a cached page, I'm wondering if I would drop in traffic. The view source might just show a list of dynamic blocks, no content! How would you tackle this? I've already setup canonical tags on the cached pages but removing cache.. Thanks
Intermediate & Advanced SEO | | Bio-RadAbs0