Web & SEO

Schema.org Structured Data: The Practical Guide

Schema.org structured data: priority types, JSON-LD, checklist, mistakes to avoid and validation to gain visibility on Google.

March 28, 20269 min read·The TC Automation team
Données structurées Schema.org : le guide pratique
Photo: cottonbro studio via Pexels

Your pages deserve to show up with their review stars, prices or opening hours right inside Google's results. That is exactly what Schema.org structured data makes possible. The catch: the official documentation is dense, technical and written for developers. This guide gives you the essentials, without needless jargon, with a step-by-step method and concrete examples for a small or mid-sized business.

Structured data is markup you add to your pages to describe their content in a language that search engines understand perfectly. Instead of letting Google guess that a page is about a product, an article or a local business, you tell it explicitly. Schema.org is the standard vocabulary, backed by Google, Bing, Yahoo and Yandex, that defines this shared language.

The stakes are twofold: helping engines understand your pages better and unlocking rich results, those displays with stars, images, expandable FAQs or breadcrumb trails that make your link more visible and more clicked. Think of this project as a natural extension of your SEO fundamentals: once your content is solid, markup makes it readable by machines.

Why structured data matters for your visibility

A search engine reads text, but it does not always understand the meaning of each element. Is a number like 4.8 a rating, a price or a product reference? Structured data removes the ambiguity. It does not replace good content, but it acts as a translator between your page and the algorithm.

In practice, correct markup can trigger richer displays in the results. Be aware, though: Google alone decides whether or not to show a rich result. Markup is a necessary but not sufficient condition. Without it, you have no chance; with it, the door is open.

A concrete example for a small business

Take a heating engineer in Nantes. Without structured data, their listing appears as a plain blue link. With well-filled `LocalBusiness` markup, Google has their address, opening hours, service area and phone number in a usable format. Possible outcome: a more complete display, better consistency with their business profile, and a visitor who can call in one click. This reasoning ties directly into a strategy of local SEO to be visible in your city.

Structured data and rankings

Schema.org markup is not a direct, official ranking factor. Its impact is indirect: better understanding of the page, rich results, a higher click-through rate. It is this virtuous circle that benefits your SEO, with no promise of an immediate position gain.

JSON-LD: the format to favor

There are three formats for writing structured data: Microdata, RDFa and JSON-LD. Google explicitly recommends JSON-LD, and it is the one you should use in nearly every case.

Its decisive advantage: the markup is gathered in a single script block, separate from your visible HTML code. You do not have to stuff your `<div>` tags with attributes. It is more readable, easier to maintain and less risky when you redesign a site.

The principle of JSON-LD markup for a local business, to be placed in the `<head>` or at the end of the `<body>`, comes down to a few elements:

  • The block opens with `"@context": "https://schema.org"` to indicate the vocabulary used.
  • `"@type"` specifies the nature of the entity, for example `LocalBusiness` or `Article`.
  • The following properties (name, address, phone, rating, hours) describe the content in a structured way.
  • Each value must match exactly what is displayed on the page, down to the character.
FormatRecommended by GoogleReadabilityRisk in a redesign
JSON-LDYes, the recommended formatHigh, single separate blockLow
MicrodataToleratedLow, mixed into the HTMLHigh
RDFaToleratedLow, mixed into the HTMLHigh

One block, several entities

You can describe several entities in the same document, for example an Organization and a BreadcrumbList navigation trail on the same page. Link them with identifiers to avoid duplicates and help Google connect the elements together.

The Schema.org types to know first

Schema.org has hundreds of types, but for a small or mid-sized business, a handful cover most needs. There is no point marking up everything: focus on what genuinely matches your pages and your business goals.

Schema typeWhat it is forWho it is for
OrganizationCompany identity, logo, social profilesAny business
LocalBusinessAddress, hours, service area, phoneLocal shops and services
ProductName, price, availability, reviewsE-commerce
ArticleTitle, author, date, image of a piece of contentBlogs and news
FAQPageQuestions and answers displayable in GoogleFAQ pages
BreadcrumbListNavigation breadcrumb trailSites with a clear structure
ServiceService offered and area coveredAgencies and providers

How to choose the right type

The rule is simple: start from the page's intent, not from the list of available types. A product page calls for `Product`, a blog post calls for `Article`, a local contact page calls for `LocalBusiness`. If you run a blog, the `Article` type naturally reinforces the groundwork described in our guide to building a profitable company blog for SEO. And for a shop, `Product` markup rounds out a strong product page that sells and ranks.

One golden rule: only mark up what is visible on the page. Marking up a customer review that appears nowhere, or a price different from the one shown, exposes you to a manual penalty from Google for structured data spam.

A common mistake to avoid

Never mark up self-assigned ratings or reviews without real reviews visible on the page. Google actively hunts down this kind of abuse and can remove all your rich results, or even penalize the entire site. It is never worth the gamble.

Common mistakes that block rich results

Most markup that produces no rich result suffers from a small number of recurring mistakes. Spotting them upfront will save you several hours of debugging.

  • Missing required fields: each type has required properties. A `Product` without a name or an offer will not be eligible.
  • Inconsistency with the page: a price marked up at 49 euros while the page displays 59 euros. Google compares and rejects.
  • Marking up invisible content: describing an FAQ that the visitor does not see on the page.
  • Poorly written dates or formats: a date that does not follow the expected format invalidates the whole block.
  • Several conflicting blocks: two different Organization entities on the same page muddle the message.
  • Overlooked after a redesign: the markup is not carried over to the new templates, and the rich results disappear.

The reflex that avoids most problems

Before marking up a piece of data, ask yourself a single question: is it displayed, as is, to a visitor who lands on the page? If the answer is yes, you are on safe ground. If it is no, do not mark it up.

A 7-step implementation checklist

  1. 1List your page types: homepage, product pages, blog posts, contact page, FAQ.
  2. 2Match each page type with the relevant Schema.org type (Article for the blog, Product for the pages, etc.).
  3. 3Write the markup in JSON-LD, one entity per intent, using the data actually displayed.
  4. 4Insert the script block into the page code, usually in the `<head>`.
  5. 5Test each page with Google's Rich Results Test and the Schema.org validator.
  6. 6Fix the reported errors and warnings, prioritizing the required fields.
  7. 7Track indexing in the Enhancements report of Google Search Console after a few days.

Automate the generation

If you use a CMS or a custom-built site, generate the JSON-LD dynamically from your existing data (product database, article metadata). This way you avoid inconsistencies and save time on every new page. It is also your guarantee that the markup stays up to date when a price or an opening time changes.

Testing and validating your markup

Never publish without checking. Two free tools are essential: Google's Rich Results Test, which tells you which rich displays are eligible, and the Schema.org validator, which is stricter on vocabulary compliance. Use both: the first tells you what Google can display, the second hunts down syntax errors.

Once in production, Google Search Console becomes your dashboard: the Enhancements section lists the detected types, the valid items and the errors to fix. Keep an eye on it after every major release. This check fits naturally into an SEO audit you can run yourself.

Also think about performance: clean markup is useless if your pages are slow. Unoptimized images are the leading cause of slowness. Compress them before putting them online, a point we detail in our article on optimizing images for the web.

Compress your images before publishing

Lightweight visuals improve your page speed and therefore the user experience, a signal Google takes into account. Reduce the size of your images with no visible loss of quality, right in your browser.

Open the image compressor
Structured data does not create good content, it makes it readable by machines. It is a technical investment with a lasting return.
TC Automation Team

Frequently asked questions

How do I add structured data to my site?

Write a JSON-LD block describing the page content, then insert it into the code, usually in the `<head>` tag. If your site runs on a CMS, a dedicated plugin or module can generate this markup automatically. Then test each page with Google's Rich Results Test before publishing.

How long before I see rich results in Google?

First, Google has to recrawl and reindex the page, which usually takes anywhere from a few days to a few weeks. A rich result is never guaranteed, even with perfect markup: Google remains the sole decision-maker. Follow the progress in the Enhancements report in Search Console.

Why is my markup valid but with no rich result?

Valid markup makes the page eligible, but Google arbitrates the display based on site quality, the query and the competition. Also check that all recommended fields are filled in, not just the required ones. Sometimes you simply need to wait for a fresh crawl for the display to appear.

Which Schema.org type should I choose for a small local business?

Start with `Organization` on your homepage, then move to `LocalBusiness` if you have an address and a service area. Add `Service` to describe your offerings and `BreadcrumbList` for the navigation trail. These few types cover most of a small business's needs.

Do structured data directly improve my ranking?

No, it is not a direct, official ranking factor. Its effect is indirect: it improves how your pages are understood and unlocks more visible displays that lift your click-through rate. It is this better click-through rate that ultimately benefits your search rankings.

In summary

Schema.org structured data is an accessible SEO lever, even for a small team. Start simple: first mark up your homepage (Organization or LocalBusiness), then your blog posts (Article) and your product pages (Product) if you sell online. Use JSON-LD, only mark up what is visible, always validate before publishing and keep an eye on Search Console. To go further, consider strengthening your internal linking, another free and lasting lever.

This project is technical but highly rewarding over time: better understanding by engines, rich results and an improved click-through rate. If you want to add clean, automated markup to your site, or rebuild your online presence on solid SEO foundations, the TC Automation team is here to help: let's talk about your project.

#seo#schema.org#json-ld#search optimization#rich results#web#google search console
All articles
Ad Space