What is Data Structure?
Let's talk SEO: Structured Data
When talking about SEO and getting the best opportunity for online visibility. Often you hear about Schema Mark-Up or Structured Data. Just as often when you are discussing structured data with people outside of the SEO & Web Development communities you get reactions such as the GIF shown above! That is why I have decided to explore the world of structured data and hopefully shed some light on the subject. First and foremost let's dive into what structured data is. Data structures provide a means to manage large amounts of data efficiently for uses such as internet indexing services. (i.e.) Google, Bing, Yandex, etc. In other words, it is an easily readable format for web crawlers to read and digest what kind of content a specific website has to offer.
A phenomenal resource on structured data is offered at schema.org a collaborative community with a single purpose of creating, maintaining and promoting schemas for structured data on the internet. Schemas are readily available in several different encoding formats: RDFa, microdata, and JSON-LD. It should be noted that schemas are best described as a massive project. That provides mutually-agreed-upon definitions for microdata tags across the world wide web. Whereas, Structured Data - simply stated, a system for pairing a name with a value that enhances search engines and their web crawlers capabilities to categorize and index your content.
Structured Data can be leveraged to mark up a variety of items. Including products, recipes, and events. However, I, believe it is most often used in providing additional information about:
To take a more in-depth look at the different Schemas available, click here. I encourage you to explore all of the content available on the schema website and all the different options available. It really is quite something when you slow-down to think about it for a moment. Especially, considering it is a massive collaboration that cuts through everything. A schema is the proverbial Switzerland of the World Wide Web. Cool. I'm sure you are thinking now, "that's great but what the heck does this all mean?"
Let's Look at a JSON-LD Schema Example
Let's say you are the webmaster of a Farm Drainage Company and you are interested in adding schema markup specifically for marking up an organization. Now, your website already has all the relevant information throughout the site, such as your contact information, relevant content and social links. What this structured data will do is gather your relevant information as an organization and format it in such a way that it is easily digestible by web crawlers. In turn, making your site more visible to indexes and ultimately to searchers via an enhanced SERP. Rather than the web crawlers looking all over your sitemap and source code for the relevant information, it is seeking. It will be placed within your web page in a neat tightly packed, concise format for the web crawler to read. Another great resource is utilizing a Schema Markup Generator. The one I fancy is on technicalseo.comechnicalseo.com they have a great resource for creating structured data. Make's life a little easier for people involved in the SEO community and DIY'ers alike. What you see below is what your structured data could look like for our fictional, Farm Drainage Organization, that we will call, "Plug & Flow Farm Drainage". The language shown below is what I prefer to use. Which is JSON-LD:
"name": "Plug & Flow Farm Drainage",
"alternateName": "Flow Farm Drainage Services",
"contactType": "customer service",
This "code" (or markup snippet) would be placed in between your <head> </head> tags in your web page. Essentially, right into your website's meta-data. Before you do this you will want to 'validate' your newly created structured data first. Take advantage of the validation tool available from Google. Super easy to use and what I think is great about this tool. It will show you what your potential Rich Snippet or Structured Data will look like on search. Now, let's break down what each line of this "code" is telling our creepy crawlers about your website and ultimately about your organization.
The first line is telling the crawlers and browsers. What language is being used? In this case, JSON-LD.
'@context' - Which is describing the location where it can help to be understood - in our situation that is at schema.org.
'@type' - This is referring to what type of schema we have decided to use.
'name' - Very straight-forward your corporation's name.
'alternateName' - Option to list any abbreviation or names your company goes by.
'url' - Website address for your business.
'logo' - a URL to a web page where your company logo can be found/used.
'contactPoint' - Expression for incoming detail on contact info.
'@type' - See #3 in this list.
'telephone' - Telephone number for business including country code.
'contactType' - Describing what kind of contact this is - Customer Service.
'contactOption' - Describing what kind of number is listed, Toll-Free for our example.
'areaServed' - Describing what geographic area is served by this company.
'availableLanguage' - Describing what language is available for this contact option.
Finally, the last line(s) 'sameAs' are forming the link between the company, company URL and the company's social media platforms.
Invalid value type for field "availability"
Here is a pro-tip when using "product" markup on your site. If you happened to have product markup on your site and you are running into 'warnings' in your Google Search Console enhancements report. Specifically, you are getting a warning for (see image to the right), "Invalid value type for field 'availability'." Then this tip is for you!
Recently, I was working on structured data within a client's site. As I was going over the enhancements report on GSC. I noticed I was throwing 1 warning for all the new custom product markup that I had just implemented. Looking closer at my GSC report I could see there was an issue with the 'availability' portion of the markup. What's interesting is Google's structured data testing tool did not throw any warnings? However, the actual index spider is where the issue became apparent. As I began debugging the issue. I was having a hard time finding any syntax errors or errors in general. This is the line of code I had that was throwing the warning.
After doing some research and testing within GSC using the 'Test Live URL' function. I found the issue. It's rather silly however it fixed the 'warning' I was getting. The issue is, this particular schema.org property is only recognized by using HTTP rather than HTTPS. At least this is the case with Google anyways. I went in and changed all the product markup with this particular warning from HTTPS to HTTP (see below) and this fixed the issue. I hope this helps you!
Bottom Line - What is Schema Markup
Mark up is a language of tags that you can add to your HTML to improve the way indexes read and crawl your website's content in efforts to improve how your SERPs are represented. Adding structured data to your site's HTML will enhance how your URL is represented in SERPs with rich snippets beneath the page title. Just like humans, the advanced search algorithms, machine learning programs and the A.I. that is involved at the major search indexes. Appreciate it, when you make your content a little easier for them to find, understand and digest (index). If you are interested in seeing if your website has structured data and it's current overall health. Use our Free SEO Audit Tool. It's super simple to use and will generate an actionable report for you to start using within minutes.