Schema Markup for Beginners: How to Get Rich Results in Google

Learn schema markup from scratch — what it is, why it helps SEO, and how to add JSON-LD structured data to your site. Includes code examples for common schema types.

By OpsKitty Team
schemastructured-dataseo

When you search Google, some results look different from others. Some show star ratings, recipe cook times, FAQ dropdowns, event dates, or product prices directly in the search listing. These enhanced listings are called rich results, and they’re powered by schema markup — structured data you add to your pages that tells search engines exactly what your content is about.

Pages with rich results get higher click-through rates than standard listings. They stand out visually, take up more space in search results, and provide users with useful information before they even click. Adding schema markup is one of the highest-ROI SEO tasks you can do.

What Is Schema Markup?

Schema markup is a standardized vocabulary (defined at schema.org) that you add to your web pages to help search engines understand the content. Instead of relying on search engines to interpret your page’s meaning from the HTML alone, schema markup explicitly tells them: “This page is about a product with this name, this price, and this rating” or “This page contains an FAQ with these questions and answers.”

Think of it as metadata for machines. Humans read your page content. Search engines read your schema markup.

The schema.org vocabulary was jointly created by Google, Microsoft, Yahoo, and Yandex in 2011. It defines hundreds of content types (called “types”) and thousands of properties. You don’t need to know all of them — a handful of common types cover most use cases.

Why Schema Markup Matters for SEO

Schema markup doesn’t directly improve your search rankings. Google has stated that structured data is not a ranking factor in the traditional sense. However, it indirectly improves SEO in several important ways.

Rich results increase click-through rates. A search listing with star ratings, prices, or FAQ dropdowns attracts more clicks than a plain blue link. Higher CTR means more traffic from the same ranking position.

Rich results increase SERP real estate. FAQ schema can expand your listing to take up significantly more vertical space in search results, pushing competitors further down the page.

Better content understanding. Schema helps Google understand relationships between entities on your page — the author of an article, the organization behind a product, the location of an event. This improved understanding can influence how Google connects your content to search queries.

Voice search optimization. Smart assistants pull structured data to answer voice queries. Schema markup makes your content more accessible to these systems.

JSON-LD: The Recommended Format

There are three formats for adding schema markup: JSON-LD, Microdata, and RDFa. Google recommends JSON-LD, and it’s the format you should use.

JSON-LD (JavaScript Object Notation for Linked Data) is added as a <script> tag in your page’s HTML, usually in the <head> section. It’s separate from the visible content, which makes it easier to implement and maintain — you don’t need to modify your HTML structure.

Here’s the basic structure:

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "TypeName",
  "property1": "value1",
  "property2": "value2"
}
</script>

The @context tells search engines you’re using the schema.org vocabulary. The @type specifies what kind of thing you’re describing. Everything else is properties of that thing.

Common Schema Types and Examples

Organization

Every website should have Organization schema on the homepage. It tells Google about your business.

{
  "@context": "https://schema.org",
  "@type": "Organization",
  "name": "Your Company Name",
  "url": "https://www.example.com",
  "logo": "https://www.example.com/logo.png",
  "sameAs": [
    "https://twitter.com/yourcompany",
    "https://www.linkedin.com/company/yourcompany",
    "https://github.com/yourcompany"
  ],
  "contactPoint": {
    "@type": "ContactPoint",
    "email": "support@example.com",
    "contactType": "customer support"
  }
}

Article / Blog Post

Add Article schema to every blog post. It enables rich results that show the author, publication date, and a larger image in search results.

{
  "@context": "https://schema.org",
  "@type": "Article",
  "headline": "Your Article Title",
  "description": "A brief summary of the article",
  "image": "https://www.example.com/article-image.jpg",
  "author": {
    "@type": "Person",
    "name": "Author Name"
  },
  "publisher": {
    "@type": "Organization",
    "name": "Your Company",
    "logo": {
      "@type": "ImageObject",
      "url": "https://www.example.com/logo.png"
    }
  },
  "datePublished": "2026-01-15",
  "dateModified": "2026-03-01"
}

FAQ Page

FAQ schema is one of the most impactful types because it can significantly expand your search listing with expandable question-and-answer dropdowns.

{
  "@context": "https://schema.org",
  "@type": "FAQPage",
  "mainEntity": [
    {
      "@type": "Question",
      "name": "What is uptime monitoring?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Uptime monitoring is the process of continuously checking whether a website or service is accessible and responding correctly."
      }
    },
    {
      "@type": "Question",
      "name": "How often should I check my website uptime?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "For most websites, checking every 1-5 minutes from multiple locations provides a good balance of coverage and accuracy."
      }
    }
  ]
}

SoftwareApplication

For SaaS products and tools, SoftwareApplication schema can show ratings, pricing, and OS compatibility in search results.

{
  "@context": "https://schema.org",
  "@type": "SoftwareApplication",
  "name": "Your Tool Name",
  "applicationCategory": "WebApplication",
  "operatingSystem": "Web browser",
  "offers": {
    "@type": "Offer",
    "price": "0",
    "priceCurrency": "USD"
  },
  "aggregateRating": {
    "@type": "AggregateRating",
    "ratingValue": "4.7",
    "ratingCount": "150"
  }
}

BreadcrumbList

Breadcrumb schema helps Google understand your site structure and can show breadcrumb trails in search results instead of the raw URL.

{
  "@context": "https://schema.org",
  "@type": "BreadcrumbList",
  "itemListElement": [
    {
      "@type": "ListItem",
      "position": 1,
      "name": "Home",
      "item": "https://www.example.com"
    },
    {
      "@type": "ListItem",
      "position": 2,
      "name": "Blog",
      "item": "https://www.example.com/blog"
    },
    {
      "@type": "ListItem",
      "position": 3,
      "name": "Article Title"
    }
  ]
}

How to Add Schema Markup to Your Site

Manual Implementation

Add the JSON-LD <script> block directly to your page’s HTML, typically in the <head> section or just before the closing </body> tag. Both placements work — Google processes JSON-LD regardless of its position in the HTML.

CMS Plugins

WordPress plugins like Yoast SEO, Rank Math, and Schema Pro automatically generate common schema types. They handle Article, Organization, Breadcrumb, and FAQ schema without requiring you to write JSON-LD manually.

For other CMS platforms, check for built-in schema support or available extensions. Many modern platforms include basic structured data out of the box.

Google Tag Manager

You can inject JSON-LD via Google Tag Manager if you don’t have direct access to your site’s HTML. Create a Custom HTML tag with your schema script and fire it on the relevant pages. This approach is useful for marketers who need to add schema without involving developers.

Validating Your Schema Markup

After adding schema markup, validate it using testing tools. Invalid schema — missing required fields, wrong data types, or syntax errors — won’t generate rich results and can trigger warnings in Google Search Console.

Google Rich Results Test (search.google.com/test/rich-results) shows whether your page is eligible for rich results and highlights any errors or warnings in your markup.

Schema.org Validator (validator.schema.org) checks your markup against the full schema.org specification, catching issues that Google’s tool might not flag.

Google Search Console reports structured data errors across your entire site in the Enhancements section. This is the best place to monitor ongoing issues after implementation.

Free schema markup validators like OpsKitty’s Schema Markup Validator let you quickly test any URL for structured data issues, including missing fields, invalid syntax, and warnings about best practices.

Common Mistakes to Avoid

Marking up content that isn’t visible on the page. Google requires that schema markup reflects content users can actually see. Adding FAQ schema for questions that don’t appear on the page is considered spammy and can result in a manual action.

Using incorrect types. Don’t use Article schema for a product page, or Product schema for a blog post. Mismatched types confuse search engines and won’t generate the rich results you want.

Missing required properties. Each schema type has required and recommended properties. An Article without a headline or an FAQ without answers won’t validate. Check Google’s structured data documentation for the required fields of each type.

Forgetting to update schema when content changes. If you update an article’s title, publish date, or content, update the schema markup to match. Inconsistencies between your markup and visible content can cause rich results to be removed.


Validate your schema markup with OpsKitty’s free Schema Markup Validator — check JSON-LD, Microdata, and RDFa for errors and missing fields. Test any URL instantly.