Table of Contents

What is Schema and why is it important?

Schema, or you may also have heard the term structured data, is a vocabulary that all popular search engines (such as Google, Bing, and Yahoo) use to understand the meaning of a web page. It may be easy for you as a human to grasp the meaning of a web page, but it can be a challenging task for search engine bots. Back in the day, search engines used keyword density to determine topic relevancy and you only needed to add a bunch of keywords on to a page to rank high in search engine results. With Google and other search engines becoming more sophisticated, the new and improved search formula is not that simple anymore. With updates like Hummingbird and Schema.org, search engine algorithms now are way better at understanding the contextual meaning and search intent. Schema or structured data is a collaborative project that started back in 2011 and aimed at creating a comprehensive labeling system to help search engines understand the content of a page. There are a number of case studies proving that Schema could be only beneficial for a website. These days it’s actually a must for those businesses that want better results from organic search. The problem is that Schema markup is complicated. The vocabulary contains over 800 classes, each of them having their own properties and subclasses to add more clarity to the content. The issue goes further as the Schema.org documentation looks like a dictionary, and couldn’t help an average user. You certainly don’t start speaking another language fluently just because you have read the dictionary, do you?! You need to know how to put the words together in a sentence and that’s what we will show you bellow.
attorney schema
Use Schema.org vocabulary to create a JSON-LD code to help search engine understand the content of you page.

Before we dive into the coding, let me further explain why implementing Schema markup to your website is a must for successful businesses.

Are you a lawyer? See 8 Tips for Effective Legal SEO

What are the benefits of using Shema markup on your website?

It’s been proven that companies that adopt Schema Markup not only perform better in search results but also get higher quality traffic, which results in higher revenue. Why is that?

Schema increases the possibility to be found

As I explained above, Schema is the language that search engines “speak” and if you want to be ranked you need to be understood first. In fact, according to SchemaApp, implementing structured data can lead to 9 positions higher in search results, and 35% more impressions. Even though Google has stated that Schema Markup is not a ranking factor, multiple case studies and researches, including our experience, show that there is a remarkable difference between rankings before and after implementing the markup. This may be due not to the fact that the markup is directly influencing rankings, but the fact that it gives you rich search results, which leads me to the next point.

Schema will improve your click-through rate

Rich search results or rich snippets are additional information about your pages available for the user to see from search. This includes but it’s not limited to stars rating, frequently asked questions, featured snippets, videos, product or event information. Rich snippets help you stand out in the search by taking a lot more real estate than a normal listing.

rich snippets stars rating immigration lawyer
Which one would you rather click on?

Schema can help you get more clients

Schema Markup gives you control over what information to display in search. Now, you can tell your story with your own words. Researches show that users spend more time on a web page with rich results and are more likely to interact with the business.

How to create a schema markup strategy for your law firm?

Schema markup strategy is the process of figuring out what content on your website needs to be understood by search engines in order to achieve your business goals. It also helps you to identify opportunities for content improvements. I will take you further and show you how I would build a Schema Markup strategy for a legal firm.

Step 1. Define the key elements of your business

This should be easy as it aligns with your marketing goals and business direction. What is it that drives your business and you want it highlighted? What service do you want to focus your efforts on and what areas of practice would bring the most return on investment for you? How do you want to tell your firm story?

This information is often available on your website. This may include office locations/ branches, services, user reviews, about pages, founders, and so on. If you’re an agency, it’s important to consult with your client, as it will often help you discover new opportunities to fully leverage Schema Markup.

For a law firm, Step one might look like this – 

  1. Offices/Locations 
  2. Services 
  3. Reviews 
  4. News 
  5. Questions that potential clients may have
  6. Company story  

Step 2. Translate these key elements into Schema

We need to find the most specific Schema that relates to your main business concept. It’s important to know that you need to choose the most specific available class from the Shema.org tree. If only a general item is available, you can always use additional types to explain it further. If we use the above example this will look like –
  1. Office/Locations  > Local Business Markup
  2. Services > Service Markup
  3. Reviews > Users reviews & Aggregate Rating
  4. News > Blog post
  5. Questions that potential clients may have > FAQ
  6. Company story > About Page Markup

Step 3. Define where the information exists on the website

The next step is to find out where the information about a certain business concept exists on the website. If the concept is not on the website, that’s an opportunity to create that content. 

Step 4. Identify which elements are eligible for rich snippets

As I mentioned above, Schema Markup will make you eligible for rich snippets. Unfortunately, not all markup would be eligible for rich results (see which types are currently eligible), but that doesn’t mean you should skip the markup. For example, marking up your service pages will not give you a rich snippet, but your services are the core of your business and you shouldn’t miss the opportunity to explain that to search engines. Remember, that it makes it easy for search engines to understand you and that will result in better ranking.

Step 5. How to implement Schema Markup

There are different ways to include Schema Markup on your web pages. Which one you would use depends on your technical skills, the platform you are using, and of course your preferences.

a. Plugins. If your website has been built on WordPress, or any other CMS, there are a number of plugins that can help you with Schema Markup.  Of course, using a plugin will come with some risks, so be mindful of which one you choose. Also, I haven’t yet come across a plugin that includes all the Schema vocabulary and available markups.

b. Manual integration. If you have the coding skills and the experience, this would be the recommended way to do as it gives you a lot more freedom on what kind of Markup you use. Remember, that Google stated its preferences to JSON-LD rather than microdata, so that’s what you should use. Implement your JSON-LD code into the header of your page.

c. Both plugin and manual coding – that’s the method that we would usually use when working on a WordPress website. We install a plugin that gives us the option to add scripts to the header of each page. We manually create the JSON-LD code, depending on what information has to be marked on the page (every case is different). Then add the code to the header of the page using the header plugin.

Examples of Schema Markup for a Legal Services

Local business markup for legal firms

Below is an example of Local Business Schema Markup for a law firm, based in Sydney, Australia, which has a map and geo coordinates on its website. It also gives information about the date the firm has been established, its founders, and its awards. The markup also may make you eligible for stars rating snippet in search.

Please note a sample data has been used in the code. You need to replace it with your real information

<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "LegalService",
"aggregateRating": {
"@type": "AggregateRating",
"ratingCount": 3,
"bestRating": 5,
"worstRating": 1,
"reviewCount": 10,
"ratingValue": "4.9",
"name": "Legal Firm Aggregate Rating",
"@id": "https://demosite.com.au/#AggregateRating"
},
"review": {
"@type": "Review",
"author": {
"@type": "Person",
"name": "Name",
"@id": "https://demosite.com.au/#Person"
},
"name": "This is test review",
"@id": "https://demosite.com.au/#Review"
},
"founder": {
"@type": "Person",
"name": "Founder Name",
"@id": "https://demosite.com.au/#Person1"
},
"hasMap": {
"@type": "Map",
"name": "Map",
"@id": "https://maps.google.com/maps?cid=YOURCIDNUMBER"
},
"geo": {
"@type": "GeoCoordinates",
"longitude": "151.20929",
"latitude": "-33.86882",
"name": "Sydney",
"@id": "https://demosite.com.au/#GeoCoordinates"
},
"openingHoursSpecification": {
"@type": "OpeningHoursSpecification",
"opens": "09:00",
"dayOfWeek": [
"Friday",
"Monday",
"Thursday",
"Tuesday",
"Wednesday"
],
"closes": "17:00",
"name": "Legal Firm Opening Hours",
"@id": "https://demosite.com.au/#OpeningHoursSpecification"
},
"image": {
"@type": "ImageObject",
"name": "Image.jpg",
"url": "",
"@id": "http://schemaapp.com/db/#ImageObject"
},
"address": {
"@type": "PostalAddress",
"streetAddress": "123 Street",
"postalCode": "2000",
"addressRegion": "New South Wales",
"addressLocality": "Sydney",
"addressCountry": "Australia",
"name": "Address",
"@id": "https://demosite.com.au/#PostalAddress"
},
"name": "Legal Firm",
"telephone": "+612345678",
"priceRange": "$",
"awards": "Award 1, Award 2",
"foundingDate": "2020-05-01",
"@id": "https://demosite.com.au/#LegalService"
}
</script>

Schema Markup for Service Pages

Below is an example of Schema Markup for a service page, in particular immigration advisory. You can mark up any Service page – family lawyer, conveyancing, a compensation lawyer, and so on.

The below code uses sample data, no real data of our clients is shared.

<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "Service",
"hoursAvailable": {
"@type": "OpeningHoursSpecification",
"name": "Legal Firm Opening Hours",
"closes": "17:00",
"opens": "09:00",
"dayOfWeek": [
"Friday",
"Monday",
"Thursday",
"Tuesday",
"Wednesday"
],
"@id": "https://demosite.com.au/#OpeningHoursSpecification"
},
"areaServed": {
"@type": "GeoShape",
"name": "Sydney Geo",
"@id": "https://demosite.com.au/#GeoShape"
},
"provider": "Legal Firm Name",
"description": "This is service description. You can put as much text you want, but that text need to exist on the front-end.",
"isRelatedTo": "https://en.wikipedia.org/wiki/Immigration_to_Australia",
"additionalType": "https://en.wikipedia.org/wiki/Immigration_consultant",
"name": "Immigration Law Service Markup",
"award": "Award 1, Award 2",
"@id": "https://demosite.com/immigration-lawyer"
}
</script>

FAQ Schema Markup

FAQ Markup will make you eligible for a featured snippet, so it’s worth taking your time and do it right. Besides, it’s very easy.  

Below is an example of a Schema Markup for a FAQ page. Feel free to add as many questions as you need (but make sure they also exists on your website)

<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "FAQPage",
"name": "FAQ Legal ",
"mainEntity": [
{
"@type": "Question",
"name": "Question 1?",
"acceptedAnswer": {
"@type": "Answer",
"text": "This is the full text of your answer.",
"name": "Answer 2",
"@id": "https://demosite.com/#Answer1"
},
"@id": "https://demosite.com/#Question1"
},
{
"@type": "Question",
"name": "Question 2?",
"acceptedAnswer": {
"@type": "Answer",
"text": "This is the full text of your answer.",
"name": "Answer 2",
"@id": "https://demosite.com/#Answer2"
},
"@id": "https://demosite.com/#Question2"
},
{
"@type": "Question",
"name": "Question 3?",
"acceptedAnswer": {
"@type": "Answer",
"text": "This is the text of your answer.",
"name": "Answer3",
"@id": "https://demosite.com/#Answer3"
},
"@id": "https://demosite.com/#Question3"
}
],
"@id": "https://demosite.com/#FAQPage"
}
</script>

Blog Markup for a Legal Firm

<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BlogPosting",
"dateModified": "2020-05-10",
"headline": "This is the headline",
"name": "Blog Post Name",
"image": "https://demosite.com/image.jpg",
"description": "This is a short description of your news.",
"datePublished": "2020-05-01T00:00",
"author": {
"@type": "Person",
"name": "Author Name",
"@id": "https://demosite.com/#Person"
},
"mainEntityOfPage": {
"@type": "WebPage",
"name": "Blog Name",
"@id": "https://demosite.com/article"
},
"publisher": {
"@type": "Organization",
"name": "Legal Firm Name",
"logo": {
"@type": "ImageObject",
"name": "Logo",
"url": "http://demosite.com/logo.png",
"@id": "https://demosite.com/#ImageObject"
},
"@id": "https://demosite.com/#Organization"
},
"@id": "https://demosite.com/#BlogPosting"
}
</script>

Conclusion

There are a number of combinations when you start connecting different types of information with Schema Markup. Don’t forget that whatever you mark up, needs to be available on the front-end as well.  The markup you use will depend on what content a legal firm has on its website. If such content doesn’t exist, it’s an opportunity to create that content. 

Need help with your SEO?

We can handle everything for you, including your Schema Markup