Schema markup is a small block of code that tells search engines what your page is: an article, a recipe, a shop, a product or a person. This guide covers schema markup for beginners. In short, Google recommends a format called JSON-LD, you place it in the page head, and it must describe only what readers can see on the page.

The Website SEO Checkup flags two schema problems: no structured data at all, and structured data with errors. Both are easy to fix once you know what the code does.

What is schema markup?

Search engines read your words, but they still guess. Is "Apple" a fruit or a company? Is that date the publish date or an event date? Schema markup removes the guessing. Google calls it structured data: a standard way to describe a page and sort its content.

The word "schema" comes from schema.org, a shared list of types and labels. Google, Microsoft and other search engines all use it. A type is the kind of thing, such as Article or LocalBusiness. A property is a detail about it, such as headline, author or opening hours.

Structured data can earn rich results. These are search results with extras, such as star ratings, prices or a picture. But Google says it does not guarantee rich results, even when your code is perfect. Think of schema as a clear label, not a ranking trick.

Here is a simple example. A bakery's page about a sourdough loaf can tell Google, in code, that it is a recipe. It can also list the baking time and the author. Without schema, Google has to work all of that out from the text alone. With schema, the facts sit in one neat block that any search engine can read.

Which schema types does a small site need?

Most blogs and small business sites only need a few types:

TypeUse it onWhat it says
WebSiteHome pageThe site name and address
OrganizationHome or about pageYour brand, logo and contact details
Article or BlogPostingEach postHeadline, author, image and dates
LocalBusinessA shop or office pageAddress, phone and opening hours

What about FAQPage? Google stopped showing FAQ rich results in May 2026. The markup is still a valid way to describe a list of questions and answers, so it does no harm. Just do not add it in the hope of extra space in Google. Google has dropped several other rich result types in recent years too, so check its documentation before you add a rare type.

What does JSON-LD look like?

JSON-LD is a short script block that sits in your page code. It does not change how the page looks. Here is a simple Article example. Each line goes into the head of the page, in this order:

  • <script type="application/ld+json">
  • {"@context": "https://schema.org", "@type": "Article",
  • "headline": "How to Bake Sourdough Bread",
  • "author": {"@type": "Person", "name": "Jane Baker"},
  • "datePublished": "2026-03-14", "dateModified": "2026-04-02",
  • "image": "https://example.com/images/sourdough.webp"}
  • </script>

The @context line says you use the schema.org list. The @type line names the type. The rest are properties. Use full addresses that start with https:// for images and pages, and use the year-month-day format for dates.

Schema markup for beginners: how do you add it?

Pick the way that fits your site:

  1. Bloghints CMS: you do not need to do anything. It adds WebSite, Organization, Article and FAQPage markup to each page by itself.
  2. WordPress: most SEO plugins add Article and Organization markup for you. Open the plugin settings, fill in your site name, logo and author details, and save.
  3. Simple PHP or HTML site: build the block with the free Schema Markup Generator. Copy it into your header include file, just before the closing head tag, or into the one page it describes.

On a PHP site that uses one header file for every page, be careful. An Article block with one fixed headline would then show on every page, and that is wrong. Put page-level types on the page itself, or fill the values from PHP variables.

What causes schema errors?

When the checkup says your structured data has errors, it is usually one of these:

  • Broken code: a missing comma, quote or bracket. One small typo breaks the whole block.
  • Missing required property: some types need certain details. If a required one is missing, the page cannot get that rich result.
  • Hidden content: Google's rules say you must not mark up content that readers cannot see. Do not add reviews, prices or questions that are not on the page.
  • Two plugins at once: two WordPress plugins can each add an Article block. Turn off schema in one of them.
  • Wrong values: a date in the wrong format, or an image address that gives a 404 error.

How do you test your schema markup?

  1. Open Google's Rich Results Test and paste your page address.
  2. Read the result. Errors in red must be fixed. Warnings in orange are missing optional details. Google says the more recommended details you add, the better the result.
  3. Fix the code, upload the file and test again.
  4. In Search Console, check the rich result reports under Enhancements now and then. They show errors that appear later, for example after a theme update.

Schema works best on a page that is already clear. A good title and meta tags matter just as much. Our guides on how long a meta title should be and Open Graph tags for beginners cover the other tags in your page head.

That is schema markup for beginners: a few honest labels in JSON-LD that match what is on the page. Add them, test them, and then re-run the free Website SEO Checkup to confirm the schema items now pass.

Frequently asked questions

Does schema markup improve rankings?

Not directly. It helps Google understand the page and can make it eligible for rich results, which can get more clicks. Google does not promise rich results, so good content still does the heavy lifting.

Is JSON-LD better than Microdata?

Both work, but Google recommends JSON-LD when your site allows it. JSON-LD sits in one block, so you can add or change it without touching the visible HTML. That makes it easier to keep correct over time.

Can I copy schema code from another site?

You can copy the structure, but change every value to match your own page. A copied block with someone else's name, logo or headline describes the wrong page. Always test the final version in the Rich Results Test.