Live blogs are web pages that are frequently updated during events like the General Elections. Each update can be set up to show as a detailed preview within the blog. Schema.org offers a special LiveBlogPosting type just for this kind of content.
How often Google is showing the "Live" badge/pill on Top Stories?
During the Paris Olympics 2024, our data shows that the distribution between the badgers is as follows:
LiveBlog badge/pill is dominating with 66.6%
Video badges, which are not that popular reached 29.1% of all badges
Overall, Google is showing the LiveBlog badge on only 3.5% of the results in Google Top Stories
You can also use Microdata to mark up your live blog instead of JSON-LD. In this case, text-only live blog posts will be displayed alongside the main image of the entire live blog.
Guidelines for Using LiveBlogPosting Markup
A LiveBlogPosting includes multiple liveBlogUpdates, each of type BlogPosting, representing individual time-stamped updates to the live blog. Every BlogPosting should have an articleBody specified and can also include an image or video.
The original publication date and time, formatted according to ISO 8601. This value remains constant, regardless of any subsequent updates to the article.
Set mainEntityOfPage.@id when the article is the main focus of the page. This property's value should align with the canonical URL of the article page.
BlogPosting information
Within a LiveBlogPosting, a BlogPosting type represents a single entry. Each post's content should be marked up following the guidelines provided here.
The body of the blog update. In addition to text, the articleBody can contain tags to indicate line breaks, but it needs to be typed as HTML in that case.
The AMP URL for the live blog update. Generally, this will be the same as LiveBlogPosting.url with an additional HTML anchor (for example: https://www.website.com/someArticle#post). Don't use CGI parameters in the URL.
URL to the thumbnail to be used in the video. This property is required if a BlogPosting contains a video. If video is chosen to be marked up for a BlogPosting, then video.thumbnail must also be marked up.
What to do when a live blog expires:
When a live blog post concludes, it's important to follow these best practices:
Remove the live blog URL from your Google News XML sitemap.
Exclude it from the homepage, as well as any category or index pages.
For ongoing events, consider placing a link to the live blog page prominently on the main event page as a soft redirect.
Avoid removing the liveBlogPosting schema, as the "coverageEndTime" attribute offers valuable details about the event's coverage period.
Good examples of well-implemented LiveBlogPosting
Based on my experience, the New York Times(NYT) is always very detailed and precise in its schema markup. So if you are looking for some best practices and inspiration for some additional properties to add to your schema I would recommend having a look at their schema markup.
I'm biased but a good example is also the liveblogPosting schema markup on The Telegraph.
LiveBlogPostin schema markup debugging
To debug a LiveBlogPosting schema, you should use Schema Validator tool. You can enter the URL or you to paste the entire HTML and JSON-LD to validate. This tool will highlight any errors or warnings in your schema markup.
Google's tool Rich Result Test specifically checks whether your structured data is eligible to generate rich results (enhanced search snippets) in Google Search
What is the difference between the Rich Result Test and the Schema Validator?
Rich Results Test: This tool, provided by Google, specifically checks whether your structured data is eligible to generate rich results (enhanced search snippets) in Google Search. It evaluates the structured data for compatibility with Google's search features, such as rich snippets, carousels, or knowledge panels. It also highlights errors and warnings related to the specific schemas that can impact your content's appearance in search results.
Schema Validator Tool: This tool (such as Schema.org's validator) checks the correctness of your structured data against the Schema.org standards. It verifies if your markup is correctly formatted and adheres to the specifications, regardless of whether the data is eligible for rich results on Google. This tool ensures that your schema is technically accurate, but it doesn't provide information on how it will be displayed in search engines.
Svetoslav (Svet) Petkov is a found of StoryHawk. He has a solid backgrong in SEO optimisation and in the past couple of eash in SEO for news publisher. With his passion of Python and data he is alway interest in providing a valuable data and sotry behind.
Google Top Stories highlights trending news articles at the top of search results. It updates frequently, showcasing articles from various sources based on relevance, freshness, and authority. Tracking Top Stories helps SEO specialists, audience performance specialists, content creators, and news publishers understand ranking trends. By analysing this data, they can optimise content in almost real-time, […]
What is LiveBlog Posting? LiveBlog Posting is a form of real-time blogging that provides continuous updates on unfolding events, such as sports matches, political elections, breaking news, or product launches. Why is LiveBlog Posting Important for Google News? Real-time Content Delivery Google loves fresh, up-to-date content — and LiveBlogs delivers exactly that. With frequent updates, […]
A Google News XML sitemap is a specialized XML sitemap created for news websites to help Google News discover and index their content more efficiently. Unlike a regular XML sitemap that includes all the pages of a website, a Google News sitemap specifically lists news articles published within the last 48 hours and allows Google […]
Are you ready to step up?
StoryHawk gives you almost real-time insights into Google Top Stories. Track your rankings, spot trends, and stay ahead in the news game. 🚀