Schema markup is a powerful tool that helps search engines, particularly Google, accurately understand the context and content of your website.
Adding schema markup to your home page allows Google to display your website in rich and featured snippets. These eye-catching and informative search results stand out from the standard blue links, potentially increasing your click-through rates and driving more qualified traffic to your site. Rich and featured snippets are designed to provide users with quick and relevant answers to their queries, making your website content more appealing and accessible to potential customers.
Schema markup is constantly evolving as search engines strive to deliver the most accurate and helpful results to their users. By staying up-to-date with the latest schema developments and implementing them on your home page, you can ensure that your website remains competitive and visible in the ever-changing landscape of search.
Visit schema.org and reference Google’s Developer Documentation on search appearance to keep up to date with opportunities and recommendations from Google.
In this guide, we will explore the most important schema and structured data types that you should consider adding to your home page.
Favicon
See how your site is more visible in search results when you have a graphic element that breaks up the boredom of a search page?
How to increase your chances of having your website’s favicon displayed in Google Search results
These are simply guidelines to ensure that your site is eligible to have the favicon featured in Google Search Results. There is no guarantee that the favicon will be displayed.
- Make a square version of your logo that is sized appropriately and saved in an approved file format. (SVG,
- 💡 Make sure that the favicon image is sized in multiples of 48px x 48px. Google provides additional documentation about this here.
- Add a tag that references the favicon:
<link rel="icon" href="#>
- 💡 Make sure that you also add a second tag for the apple-touch-icon attribute. Lighthouse may flag your site for not having:
<link rel="apple-touch-icon" href="#>
For more information on Google’s guidelines for favicons in search results, click here to review the documentation.
How to Quickly and Easily add a Compliant Favicon in WordPress
- Open the Appearance Settings and Click Customize:
- Next, choose site identity:
- Last, upload your image and make sure that dimensions are 512 x 512 pixels:
💡 Make sure that you test that it is working properly after you’ve uploaded the image.
- Check the browser tab and make sure that you can see your favicon there
- View your page source and search for link rel=”icon” and link rel=”apple-touch-icon”, or if you name the file favicon before you upload it, it’s easier to find
- 💡 Google doesn’t want this file name changing, so naming the favicon image ensures that if you need to replace this file, anyone doing so can and should use the same name each time as a best practice:
- As stated above, do a site:[enteryoururl] search, and make sure that your favicon is showing up:
That’s it for favicons, now let’s look into implementing WebSite structured data.
WebSite Structured Data
WebSite structured data must be on the homepage as it used to help declare the name of your website. Do not get this confused with your title tag. The WebSite schema is used to name your entire site, whereas the title tag is a descriptor for one page. Besides, you only get 60 characters to describe a page, using valuable real-estate for your company or site name may not be helpful in some cases, which is why you want to make sure that you have your site name clearly defined using the WebSite schema instead.
For more information about site names, check out Google’s documentation here. They provide clear guidelines on acceptable names and when/why you should provide alternate names as well (more on that later).
Also, here is the launch notes with more information about site names, and their importance in mobile search here.
How to Implement WebSite Structured Data
Here are some important things to note about WebSite schema before you start implementing:
- It MUST be on your home page of the site at the root. So if your home page has a directory at the end of it (ie. https://mysite.com/home) this won’t work.
- Make sure that you’ve got duplicate home page issues resolved. If you have both HTTPS and non-HTTP versions of your home page being indexed, for example, you’re going to want to get that cleaned up.
- Only use one name. If you want multiple names considered, provide an alternate name.
Now let’s jump into the code.
Basic WebSite Structured Data With Required Fields
{
"@context": "https://schema.org",
"@type": "WebSite",
"url": "https://yoursite.com",
"name": "Enter the Name of Your Site"
}
You want want to modify the following:
- Replace the “https://yoursite.com” with the url of your website (keep the quotation marks)
- Replace “Enter the Name of Your Site” with the official site name that you want the search engines to use.
💡 All of these fields must be filled in for this schema as they are required or else the code will not pass validation.
If you need to add an alternate name, reference Google’s documentation for how to modify the code.
WebSite Additional Fields and Sitelinks Search Box
If you use a tool like RankMath for WordPress, the WebSite schema template is much more robust based on how you configure the plugin when you use the setup wizard. So be careful, and be sure to check your pages. You’ll want to modify the information to ensure that it is accurate.
Let’s break this more complex WebSite markup down…
{
"@context": "https://schema.org",
"@type": "WebSite",
"url": "https://yoursite.com",
"name": "Enter the Name of Your Site",
"publisher": {
"@id": "https://yoursite.com/#organization"
},
"inLanguage": "en-US",
"potentialAction": {
"@type": "SearchAction",
"target": "https://yoursite.com/?s={search_term_string}",
"query-input": "required name=search_term_string"
}
}
So here’s what’s going on with this schema:
- Publisher – this basically ties the publishing of the content of this site to the organization that owns the website. While it might seem redundant, search engines need lots of context, so this provides just that. Having this on the homepage isn’t a bad idea so feel free to add it! Just update the ‘yoursite’ text with your domain information.
- inLanguage is pretty self explanatory, it’s telling the search engines that the content is written in US English. If your site is written using the Queen’s English, you’re going to want to change the language so that the search engines know.
- Potential Action is exactly what it means… It is used to define the possible interactions users can have with the content or elements on your site (in the context of using this property on the home page).
The “potentialAction” property is part of the Action schema, which represents actions that can be taken, such as searching, ordering, or consuming media. By including the “potentialAction” property in your structured data, you provide search engines with information about the actionable items on your page, potentially making it easier for users to engage with your content directly from the search results.
In the context of the WebSite structured data, you can use the SearchAction property if your site has site search enabled which could potentially trigger search inception:
This is yet another way that your site can stand out in search by giving uses the ability to search your website within the search engine. That’s what the following @type “SearchAction” is used for. We’re telling Google that our site has search capabilities for users.
The rest of this code requires some technical understanding; however, at the very least if you change the ‘yoursite.com’ url to that of your website, you might be able to get it to work. Every CMS is different, so you’ll need to adjust this code based on the sitelinks search box documentation that Google provides.
Place Structured Data For Physical Locations
If the business only has one location, it may be beneficial to include the local business information on the home page since it pertains to the entire site. There are other more specific local business schema markups that you can implement for different types of companies, but if you have a service business, like an accounting firm for example, this schema is handy.
Place can also be used for other things like in-person events. In that case, you’d have to use your best judgment as to whether or not this structured data goes on the home page. Consider the use case for your business and what you want to communicate to search engines as you decide.
{
"@type": "Place",
"@id": "https://yoursite.com/#place",
"address": {
"@type": "PostalAddress",
"streetAddress": "123 Cherry Lane",
"addressLocality": "Long Beach",
"addressRegion": "California",
"postalCode": "90802",
"addressCountry": "USA"
}
This one is pretty self explanatory. Input your URL where https://yoursite.com is, and include your address details in the appropriate properties.
Organization Structured Data
Saving the best for last (when it comes to the home page), this one can get complicated for noobs that are just getting started with structured data. There’s a lot that you can do with this schema type (including subtypes), but we’re going to keep this general in nature for common implementation.
Google really leans on Organization information for a few purposes. If the search engines have a lot of information about your organization you may win a fancy knowledge panel where Google will display a bunch of information in one place, making it easier for users to learn more about your organization when they search for your brand (or when your brand pops up in related search where a knowledge panel of your company may be deemed helpful).
Organization structured data also supports other areas in search where Google may need to reference your brand. Here’s more information on all of the possibilities for this markup in populating other visual elements and interactive experiences in search.
Here’s how we tell Google what we’re all about so that we get some shine in search. Remember this is a very basic implementation for organization structured data.
{
"@type": "Organization",
"url": "https://www.yourwebsite.com",
"sameAs": [
"https://facebook.com/myprofile",
"https://instagram.org/myprofile",
"https://pinterest.org/myprofile",
],
"logo": "https://www.yourwebsite.com/images/logo.png",
"name": "Your Company Name",
"description": "The description of your company",
"email": "contact@yourcompany.com",
"telephone": "1-555-867-5309",
"address": {
"@type": "PostalAddress",
"streetAddress": "123 Cherry Street",
"addressLocality": "Long Beach",
"addressRegion": "California",
"postalCode": "90802"
"addressCountry": "USA",
},
}
Here’s how to fill this code in:
- For “url” swap out https://yourwebsite.com with your website url.
- Under “sameAs,” replace those links with any and every public profile about your company that you can think of. This is where you tap into linking your brand to various entities across the web. For now, link your social profiles. If you have a dedicated wikipedia page, or any other brand profiles, go ahead and add those too. It helps the search engines better understand your company’s knowledge graph.
- “Logo” link your logo (this is different from your favicon potentially. Reference Google’s documentation for more information and specifications on the file dimensions and various other details.
- Make sure that you use the same “name” when you replace “Your Company Name” that you used for the WebSite property.
- Provide a contact email address in the “email” property. If you’re against providing that publically, you can delete it. This is a recommended field, and is not required so this code should still pass validation.
- Enter the primary telephone number for your business, with the country code and replace the “1-555-867-5309”
- The rest is self-explanatory, replace your address information in the remaining fields.
As previously stated, there’s a lot more to this organization schema than what we’ve provided in this code snippet. You can add much more detail about your business. If we covered all of them, this guide would never end. (ie. hours of operation, specific organization subtypes such as medical centers, physicians, etc.)
If you have questions or need more specific support for your site and any unique needs that it may have while trying to implement structured data, join our community! Ask your questions and get help. Click here for more information.
In the meantime, add the structured data to your website using a plugin or ask your developer to add the modified code snippets.
Remember, after you add your structured data, you always want to validate it using a schema validator. Schema.org has one and all you have to do copy and paste your URL for the page that you want to check. It will let you know if there are any errors. Schema errors may also pop up in Google Search Console, so be on the lookout for errors there as well.