Skip to Content

Schema.org, Structured Data & Rich Snippets - What Are They and Why You Need to Know

[Web Development, Google, Optimization]
Last week I showed you a few examples of the Google Knowledge Graph and Carousel in action, and as part of that post I touched briefly on "rich snippets" when pointing out where Google was pulling data from to display in the the "Upcoming Events" section in the Knowledge Graph.
Note that in Burlington’s Knowledge Graph section, Google includes a scrollable “Upcoming Events” section and a “Points of Interest” section. As always, following any of these links simply takes you to drilled down search results pages, which doesn’t make it easy to figure out where Google pulls that data from. I do however see that most of those search results pages appear to be displaying structured data (a.k.a rich snippets, a.k.a schema markup) from a variety of other event sites. Basically Google couldn’t rely on a single database to supply all, up-to-date event info so they appear to be using websites that are marked up with rich snippets like ticketmaster.comexcite.com/eventszevents.comseatgeek.comsongkick.com, etc.
Today, I'd like to explore at least the basics of "rich snippets" a little further. A couple of weeks back when I simply searched for "burlington vt", one of the "upcoming events" was Gabriel Iglesias at the Flynn (9/27). Here's a screenshot of the Knowledge Graph portion of the search results page for "burlington vt" shown at the time: Burlington Upcoming Events Gabriel Iglesias

Upcoming Event Data in Google's Knowledge Graph

Again, the Knowledge Graph helps you drill down to more specific things you might be looking for, so when you click anything in it, you're usually directed to more specific results pages. This Gabriel Iglesias "upcoming event" item in the Knowledge Graph on the "Burlington VT" search was no different. Let's go back and take a look at the screenshot I took of those results at the time, this time with a handful of numbered items I'll explain momentarily: Gabriel Iglesias Rich Snippets Numbered As I mentioned, Google seems to be pulling event data from multiple sources and it's clear that a lot of ticket brokers, etc. have this information in their databases. Of course, not everyone has figured out how to use rich snippets on their site to better feed this data out to Google for display in search results pages, but clearly many have. Note that Google seems to be recognizing that 5 of the 10 'Gabriel Iglesias' search results shown on page 1 appear to be using rich snippets/schema mark-up/structured data of some kind. That's half of the results on page 1! But I should point out that they aren't all displaying structured data in the same way:

Examining Structured Data in Search Results

  1. TicketMaster - Lists 3 upcoming venues for the comedian, with dates. Links go to individual TicketMaster URLs, two of which redirect to other ticket purchasing sites. (FlynnTix in one case, which just so happens to be our client.)
  2. LiveNation - Lists just the Flynn event on 9/27. This page doesn't redirect to the Flynn site, but if you click to "Find Tickets" on the page, it does bring you there. Despite only showing 1 show time result (rather than 3), I actually think this result is better because it's the most relevant to the Iglesias/Flynn search (see search box in screen shot.)
  3. VividSeats - Lists 3 events again, but they're different than TicketMaster. TicketMaster's third item is a show in Westbury, NY on 9/30, but the third item here is a 9/29 show in CT. Notice also that the linked text in each item is now just the venue name, whereas the TicketMaster used the show name as the anchor text and each was followed by the venue name in plain text.
  4. Excite - These results use the same format as the TicketMaster items, however they too have a 9/29 show that TicketMaster didn't.
  5. SonicLiving - Lists only the single event, like LiveNation, however nothing is linked this time.
So why all the variation? Let's explore that a bit... Given that this all happened a week ago I can't go back and check the code on each page, but I did look it over some at the time and I can say that not all of these sites are being marked up to the exact specifications laid out on Schema.org. Google has been supporting other markup/tags for several years, and there's no indication they plan to end that support, but they do seem to be encouraging new websites to stick with schema.org markup. At any rate, that's one major difference between these various sites - they all seem to be using methods for marking up their data. The consistent markup vocabulary shown on schema.org recognized by Google, Bing, Yahoo! and others, but it's still relatively new (started summer 2011) But different markup language doesn't explain 3 upcoming events vs. 1, missing dates on some sites, etc. What's causing these inconsistencies? Let's take them one at a time. It's impossible to be certain why the 3 events TicketMaster had listed didn't match up exactly with VividSeats and Excite. I can speculate that either TicketMaster has incomplete data, or they are such a major player that they actually have the best up-to-date data and these other small players (VividSeats and Excite) didn't get an update that the 9/29 show was cancelled. I can't find any evidence of the latter, so I'm actually leaning toward the former, despite the fact that one would think TicketMaster should have as reliable data as anyone. Of course the discrepancy could be caused by something else entirely. It could have to something to do with how their structured data tags are set up or even just how Google has indexed them. As I noted above, Excite and TicketMaster are displaying their 3 items differently than VividSeats. This too could have something to do with how Google has them indexed, but in this case I suspect it has more to do with how they've set up the tags on their structured data, as I explained a few paragraphs back. I'm not sure why Google only showed one event for LiveNation (again, it really could be anything), but I think I know why they only showed one for SonicLife. Ignoring specific markup language for a moment, the page indexed in regular organics for SonicLife is the only one of the 5 examples that goes directly to an individual show details page. All others were general Gabriel Iglesias "upcoming shows" pages, which listed all upcoming shows, but Google displayed structured data for the most near-term upcoming shows underneath each of those results. Displaying these deeper links wasn't necessary for the LiveNation result, because the normal organic result was already bringing you to the specific show details page. So they just showed the general info (from structured data) about that show to let users know it was the page they were looking for. And this arguably takes users to a better quality landing page, IMO.

Why Aren't You Using Structured Data?

I bet some of you are thinking, "who cares about all of this?" Answer: potentially anyone who runs a website. The fact that Google is displaying additional data within standard organic results presents a great opportunity for virtually all website because each individual result can now take up more real estate on the page while often driving users directly to specific pages within your site that are the most relevant to them. Sure, there's no guarantee that Google will show your structured data, even if you mark it up properly, but doing so is quickly become best practice. There's no downside and there's a chance that Google will scrape and display your rich snippets in search results in the future, if they aren't already doing so. Why else would they have come up with a monster list of tag that virtually anyone could use? Seriously, they have everything from comedy clubs and notaries to dietary supplements and police stations? I used a comedy show example for the purposes of this post mainly because I knew it would be easy to show how Google is pulling rich snippets into the results already, but there are countless others I could use as well. Before I wrap up this post, take a quick look at all of the unique pieces of data being pulled into recipe search results: Guacamole Recipe Results Marked You can clearly see that Google is displaying at least the following items from recipe websites for recipe related searches:
  • 5 Star ratings and number of reviews
  • Prep/cook time
  • Calorie count
  • Photos
You'll also see, like with the show info, that the layout and amount of information again varies from one search result to another. Some include all of the items listed above, some just single bits of data like prep/cook time or reviews. I glanced at the code on these sites as well and I can see that some of them (AllRecipes and MyRecipes) are using schema.org markup language. Google actually seems to be recognizing some schema.org markup in concert with other formats to scrape some of the data being displayed in search results. You also might have noticed the filtering options to the left of the search results. You can select "Yes" or No" check boxes next to various common ingredients as well as filter by cook time and calorie count. This is another example of what I call "Smarter Search", because it's just amazing how intuitive and sophisticated Google has gotten. It's providing these filtering options simply because it knows I'm doing a recipe search. How great is this feature for people concerned about specific food allergies, time and calorie intake? Stay tuned for another post on search filtering options once I've had time to do more research, because I'm sure there are other types of searches that trigger them - I just haven't seen them yet. But I think this feature is yet another reason it may become increasingly important to have your structured data marked up. How about you? Has Google produced search results filtering options based on any non-recipe types of searches you've done? Bottom line: Get working on your Rich Snippets ASAP, but always be sure to test out your markup using Google's Structured Data Testing Tool available through Google Webmaster Tools. As an aside, you should create a Webmaster Tools account and submit your website's sitemap if you haven't already. When implementing rich snippets, keep in mind that you shouldn't have to edit code on each individual page if you've got a large database driven site like these ticketing agents and recipe sites. You should be able to set these tags up in template that would apply across all details pages throughout your site. We understand that this is a skill set outside of what most business owners will have. So feel free to drop us a line and we can help you sort through your options and talk about how we might be able to help.