Structured data is a powerful tool for improving SEO, but unfortunately many websites still don’t use it correctly. As an SEO consultant with many years of experience, I see that correctly implemented structured data can increase search CTR with minimal effort, improve results and help search engines understand page content better. Structured data is also part of many SEO analyses and audits, because some types are genuinely very easy to implement. In this article, I’ll share what structured data is, how it works and how you can implement it on your website.

What is structured data and why does it matter?

Structured data is a way of giving search engines information about the content of our pages in a format they understand unambiguously. Of course, search engines today often cope well even with websites without structured data and classify them correctly. But why take the risk?

The vast majority of websites either have structured data implemented incorrectly or don’t have it at all. Search engines therefore have to “think” much harder about what is actually on the pages, and you run the risk of being classified wrongly or not at all. This is a shame, not least because you miss out on the chance of a more attractive presentation in search results, known as Rich Snippets.

Structured data is essentially a technique for translating page content for machines in a way they understand completely unambiguously. From my experience, websites with correctly implemented structured data often have a higher CTR (click-through rate) in search results and perform better. On the other hand, you can’t expect miracles. On some projects, deploying structured data simply did nothing at all.

How structured data works and what it is for

Search engines use structured data to obtain the information they need to display special features in search results. When you add a piece of JSON-LD code to a page, the search engine can use it to create an enhanced search result.

Google structured data

For example, when you implement structured data for a product review, star ratings may appear in search results. For a long time this was (and still is, although Google is now changing it as of mid-2025) a bit dodgy. All you had to do was add structured data that wasn’t based on fact to the code of all your pages, and Google started displaying it blindly. This code:

I mirror it from my Google reviews, for example, but if I put 9,785 five-star reviews on my website, Google would very likely display them too.

Recently, however, I have noticed a different type of rating in the SERP. I wrote about it on LinkedIn:

Or if you run an e-shop, you can use structured data to mark up product prices and availability, which can then appear directly in search results.

It has been shown many times that the visual appeal of results marked up with Rich Snippets increases the chance that users will click on them, which of course improves the click-through rate (CTR). We also have some indications that Google slightly prefers these websites and results over those without structured data. The marketing rule of distinctiveness applies here too: when a result is striking and different, it will get more clicks, but it is important that it matches the user’s search intent.

Types of structured data and how to use them

Structured data mostly uses Schema.org, which was created through a collaboration between Google, Bing, Yahoo! and Yandex. There are literally hundreds of types of structured data you can use on your website. Search engines don’t work with some of them at all.

A few years ago, I rolled out How-to and FAQ structured data extensively on one website, but in August 2023 Google announced that it was limiting the display of rich results for the “How-to” and “FAQ” types in the SERP for most websites. Hours of work suddenly lost their value.

From my work as an SEO consultant, I can confirm that these types are the most useful:

When working with clients, I most often implement structured data for Article, Product, Organization and, previously, very frequently AggregateRating, because they deliver the most noticeable results for most websites. But everything changes as Google changes the rules of the game. Overnight, various types of structured data can become irrelevant, and using them can even harm us. That’s why it’s a good idea to test the trends.

How to implement structured data

There are several ways to implement structured data on a website:

  1. JSON-LD – The format recommended by Google, which inserts a block of structured data into the HTML code
  2. Microdata – An older format where the data is inserted directly into HTML tags
  3. RDFa – An even older format, very similar to microdata

Personally, I always recommend using JSON-LD, because it separates the data for search engines from the HTML, which is much clearer and easier to implement and maintain. Google clearly prefers this format, which is another reason why I favour it too.

Connecting entities and semantic SEO

Most structured data implementations I have ever seen were only the bare minimum and focused on increasing CTR. The problem is that pages then often contain several separately described entities that have no relationship to each other.

As a result, the search engine can’t tell straight away which of them the page is actually about. I consider this a mistake that reduces the effectiveness of structured data. On the other hand, the vast majority of websites really do make this mistake. As the recognition capabilities of Google and other systems advance, it is genuinely questionable whether to go for that comprehensive implementation.

For effective semantic SEO, it is important to:

  1. Define the main entity of the page – Either with “mainEntity” (you start by describing the page and include the main entity as part of it) or with “mainEntityOfPage” (you start by describing the main subject and state that it is the main entity of the page).
  2. Connect entities in the code – You can do this either by nesting (one part of the code contains another related part) or by using IDs (you give each entity a unique identifier that you then reference).

A correct implementation should look like this: the structured data, like the page itself, describes only one main entity. Everything else is just additional information related to that main entity. This can help you work with your website better from an SEO perspective and make it clearer for Google.

If your website is well built with the right emphasis, ChatGPT can help you generate the structured data. You can then test it in a structured data testing tool. It generated the following for me, using only the website as its source.

Code examples to copy

Here are some examples of structured data you can use (after adapting them) on your website:

1. Article

text<script type="application/ld+json"> { "@context": "https://schema.org", "@type": "Article", "headline": "How to optimise website speed", "image": "https://www.patrikpilous.cz/images/article-image.jpg", "author": { "@type": "Person", "name": "Patrik Pilous" }, "publisher": { "@type": "Organization", "name": "Patrik Pilous", "logo": { "@type": "ImageObject", "url": "https://www.patrikpilous.cz/images/logo.jpg" } }, "datePublished": "2025-04-21", "dateModified": "2025-04-21" } </script>

2. Event

text<script type="application/ld+json"> { "@context": "http://schema.org", "@type": "Event", "name": "SEO workshop with Patrik Pilous", "description": "A practical workshop focused on SEO techniques and strategies.", "startDate": "2025-05-15T09:30", "url": "https://www.patrikpilous.cz/workshop", "location": { "@type": "Place", "name": "Impact Hub Praha", "address": { "@type": "PostalAddress", "addressLocality": "Prague", "streetAddress": "Drtinova 10", "postalCode": "150 00" } }, "offers": { "@type": "Offer", "price": "2990", "priceCurrency": "CZK", "url": "https://www.patrikpilous.cz/workshop/registrace" } } </script>

3. FAQ (Frequently Asked Questions)

text<script type="application/ld+json"> { "@context": "https://schema.org", "@type": "FAQPage", "mainEntity": [{ "@type": "Question", "name": "What is SEO?", "acceptedAnswer": { "@type": "Answer", "text": "SEO (Search Engine Optimization) is the process of optimising websites for search engines in order to achieve higher rankings in search results." } }, { "@type": "Question", "name": "How long does it take for SEO results to show?", "acceptedAnswer": { "@type": "Answer", "text": "How long it takes for SEO results to show varies depending on the competition, the age of the domain and the quality of the optimisation. It usually takes 3 to 6 months before more significant results appear." } }] } </script>

4. Local Business

text<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "LocalBusiness",
  "name": "SEO konzultace Patrik Pilous",
  "image": "https://www.patrikpilous.cz/images/office.jpg",
  "address": {
    "@type": "PostalAddress",
    "streetAddress": "Náměstí Míru 15",
    "addressLocality": "Praha",
    "postalCode": "120 00",
    "addressCountry": "CZ"
  },
  "telephone": "+420 777 888 999",
  "openingHours": "Mo-Fr 09:00-17:00",
  "priceRange": "$$"
}
</script>

5. Product

text<script type="application/ld+json"> { "@context": "https://schema.org/", "@type": "Product", "name": "SEO audit", "image": "https://www.patrikpilous.cz/images/seo-audit.jpg", "description": "A comprehensive SEO audit of your website with detailed recommendations.", "offers": { "@type": "Offer", "url": "https://www.patrikpilous.cz/sluzby/seo-audit", "priceCurrency": "CZK", "price": "5000", "availability": "https://schema.org/InStock" } } </script>

Tools for testing and checking structured data

From my own experience, I know that correct implementation is key, so I recommend using these tools:

  1. Rich Results Test – A useful tool from Google, available without Search Console
  2. Google Search Console – In the “Unparsable structured data” section, you will find an overview of issues
  3. Schema.org Validator – At validator.schema.org, you can check that your implementation is correct
  4. SchemaPaths by Schema App – If you want to connect entities and don’t know how, this tool shows you the possible relationships between them

My tips and recommendations as an SEO consultant

Based on my experience implementing structured data for clients, I can give you a few practical tips:

  1. Focus on quality, not quantity – It’s better to have a few correctly implemented and connected entities than dozens of separate ones that are unrelated.
  2. Don’t use structured data for content that doesn’t exist – Google may penalise websites that use structured data for content that isn’t actually on the page.
  3. Check that everything works regularly – Tools such as Google Search Console will help you spot any errors in the implementation.
  4. Use plugins and tools – If you use WordPress, you can use plugins such as Yoast SEO, which add basic structured data automatically.
  5. Be consistent – The information in your structured data should match the content of the page and be consistent across the whole website.

Key takeaways

Structured data is one of the underrated aspects of SEO that can give you a competitive advantage. It helps search engines understand the content of your pages better and can lead to a more attractive appearance in search results. Do not expect it to send you to the moon, though. I have carried out many structured data implementations, and you will only see real changes on large projects where the implementation genuinely contains errors or where structured data is missing altogether.

Even though it may sound technical, with the examples and tools above you can handle a basic implementation yourself. And if you are not sure, you can always turn to an expert (me, for example).

As an SEO consultant, I see that correctly implemented structured data is an investment that pays off in the long term. Not only does it increase your chances of getting rich snippets, it also helps search engines better understand the context of your content, which can have a positive effect on your search rankings.

I hope this article has helped you better understand structured data and how to implement it. If you have any questions, feel free to get in touch and book a consultation.

Back to top