Schema Markup for Beginners: A Practical JSON-LD Guide
Search engines are very good at reading text, but they still benefit from a little help. When a page says “4.8 stars from 312 reviews” or “Open until 9 pm,” a human understands instantly. A crawler has to guess. Schema markup removes the guessing by labelling the important facts on a page in a format machines understand.
If you’ve ever seen star ratings, recipe cooking times, product prices or event dates directly in Google results, you’ve seen structured data at work. This guide explains what schema markup is, which types matter most, how to write JSON-LD and how to test it, even if you’ve never written a line of code.
Key Takeaways
- Schema markup is a shared vocabulary, maintained at Schema.org, that describes the meaning of content to search engines.
- Google recommends JSON-LD, a script-based format that keeps structured data separate from your visible HTML.
- Structured data can make pages eligible for rich results, such as review stars, product prices, breadcrumbs and event details.
- Markup must match visible content and follow Google’s structured data guidelines, or it may be ignored or trigger a manual action.
- Test every implementation with Google’s Rich Results Test and monitor the Enhancements reports in Search Console.
What Is Schema Markup?
Schema markup is structured data that uses the Schema.org vocabulary to describe the entities on a page and their properties. Schema.org was launched in 2011 as a joint project by Google, Microsoft (Bing), Yahoo and later Yandex. Its goal was to create one shared vocabulary that every major search engine could understand.
Instead of a crawler inferring that “Jane Smith” is an author, schema states it outright: this is a Person, her name is Jane Smith, her job title is SEO Consultant and she works for this Organization. The vocabulary now includes hundreds of types, from Recipe and Event to MedicalCondition and SoftwareApplication.
Structured data vs schema markup
People use the terms interchangeably, but there’s a subtle difference. Structured data is any standardized format for providing information about a page. Schema.org is the vocabulary most commonly used for that data on the web. In practice, when SEOs say “add schema,” they mean “add structured data using the Schema.org vocabulary.”
Why Schema Markup Matters for SEO
Eligibility for rich results
Google uses structured data to generate rich results, the enhanced search listings that stand out on the page. Common examples include:
- Product snippets with price, availability and review ratings
- Review snippets with star ratings
- Recipes with images, cooking time and calories
- Events with dates and locations
- Breadcrumbs that replace the raw URL with a readable path
- Videos with thumbnails and key moments
- Job postings in Google’s job search experience
Rich results take up more space and give searchers more information before they click, which often improves click-through rate.
Clearer entity understanding
Schema is one of the strongest tools for entity SEO. Organization markup with sameAs links connects your website to your social profiles, Wikidata entry and other authoritative sources. Our guide to entity SEO explains why that connection matters for the Knowledge Graph.
Better readiness for AI search
AI-powered search features summarize information from many sources. Clean, accurate structured data makes facts like prices, opening hours, authors and dates easier to extract correctly.
The Three Structured Data Formats
| Format | How it works | Google’s view |
|---|---|---|
| JSON-LD | A separate script block containing JavaScript Object Notation | Recommended |
| Microdata | Attributes added directly to HTML elements | Supported |
| RDFa | HTML attributes based on the Resource Description Framework | Supported |
JSON-LD (JavaScript Object Notation for Linked Data) is the easiest to work with because it lives in its own script tag. You can add, edit or remove it without touching your page design, and it can be placed in the head or body of the page.

How JSON-LD Works: A Simple Example
Here’s a basic Organization snippet:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Organization",
"name": "SEOGurru",
"url": "https://seogurru.com/",
"logo": "https://seogurru.com/logo.png",
"sameAs": [
"https://www.linkedin.com/company/example",
"https://www.facebook.com/example"
]
}
</script>
Let’s break it down:
@contexttells the parser you’re using the Schema.org vocabulary.@typedeclares what kind of thing you’re describing.- The remaining lines are properties of that thing, such as its name and logo.
sameAspoints to other pages that describe the same entity.
Every schema type has its own expected properties. Google’s Search Central documentation lists the required and recommended properties for each rich result type it supports.
The Most Useful Schema Types for Most Websites
Organization or LocalBusiness
Describe your company once, usually on the homepage or site-wide. Local businesses should use LocalBusiness or a more specific subtype like Dentist, Restaurant or ProfessionalService, including address, phone number, opening hours and geo-coordinates.
WebSite
Defines your site’s name, which helps Google display the correct site name in search results.
Article or BlogPosting
Use it for news and blog content, with headline, image, datePublished, dateModified, author and publisher. Linking the author to a Person with a profile page supports E-E-A-T.
BreadcrumbList
Shows the page’s position in your site hierarchy. It’s simple to implement and widely displayed.
Product and Offer
Essential for e-commerce. Include name, image, description, brand, SKU and an Offer with price, currency and availability. Add AggregateRating only if real customer reviews appear on the page.
FAQPage
Marks up question-and-answer content. Since August 2023, Google shows FAQ rich results mainly for well-known, authoritative government and health websites, so most sites won’t see the visual enhancement. The markup is still valid and helps machines understand your Q&A content.
Event, Recipe, VideoObject and JobPosting
Use these whenever your content genuinely matches the type. They’re among the most visible rich results in Google.
How to Add Schema Markup in WordPress
You have three main options:
- SEO plugins. Yoast SEO and Rank Math automatically output a connected schema graph that includes Organization, WebSite, WebPage, Article, BreadcrumbList and Person. Configure your organization name, logo and social profiles in the plugin settings so this data is accurate.
- Schema plugins. Tools like Schema Pro or WP Schema add support for additional types through forms rather than code.
- Custom HTML blocks. For one-off pages, you can paste a JSON-LD script into a Custom HTML block in the block editor. Make sure it doesn’t duplicate what your SEO plugin already outputs.
For non-WordPress sites, you can add JSON-LD to your templates directly or deploy it through Google Tag Manager, although server-rendered markup is more reliable.

Step-by-Step: Writing Your First Schema Markup
- Choose the right type. Look at the main purpose of the page. A recipe page needs
Recipe; a service page might needServicewithin anOrganization. - Check Google’s documentation. Find the feature guide in Google Search Central and note required and recommended properties.
- Write the JSON-LD. Start from the documentation’s example and replace values with your real content.
- Validate it. Paste the code or URL into Google’s Rich Results Test. Fix any errors and review warnings.
- Publish and request indexing. Use the URL Inspection tool in Search Console to ask Google to recrawl the page.
- Monitor results. Search Console’s Enhancements reports show valid items, warnings and errors for each structured data type.
Schema Markup Rules You Must Follow
Google’s structured data guidelines are strict, and breaking them can cost you rich results:
- Mark up visible content only. If the reviews, prices or FAQs aren’t on the page, don’t put them in the markup.
- Be accurate and current. Update prices, availability and event dates when they change.
- Don’t self-serve reviews. Review snippets for your own business on your own site are not eligible for stars in most cases.
- Use the most specific type.
Restaurantis better thanLocalBusinessfor a restaurant. - Avoid duplicates and conflicts. Two plugins outputting different Organization data confuses search engines.
Common Schema Mistakes
- Copying a template and forgetting to replace placeholder values
- Using the wrong date format; Schema.org expects ISO 8601, such as
2026-10-15 - Marking up every page as a
ProductorFAQPageregardless of content - Leaving broken image URLs in required properties
- Adding ratings with no actual reviews on the page
Measuring the Impact of Schema
Schema rarely produces an instant ranking jump, so measure the right things. In Google Search Console, the Performance report lets you filter by search appearance to compare rich result impressions and clicks. Track click-through rate for marked-up pages before and after implementation, and watch the Enhancements reports for new errors after site updates.
Connecting Schema Into a Graph
Modern SEO plugins don’t output isolated snippets. They build a connected graph in which each item has an @id and references the others. The WebPage is isPartOf the WebSite; the Article has an author pointing to a Person and a publisher pointing to the Organization; the BreadcrumbList belongs to the WebPage. This structure mirrors how the Knowledge Graph stores relationships, so it’s much easier for search engines to understand how your content, your authors and your brand fit together.
When you add custom markup, reuse the same @id values your plugin already uses instead of creating a second, disconnected Organization. View your page source, search for ld+json and note the IDs before adding anything new.
Schema for Local Businesses: A Quick Checklist
If you serve customers in a specific area, LocalBusiness markup is one of the highest-value additions you can make. Include:
- The most specific business type available, such as
Plumber,DentistorAccountingService - Legal or trading name exactly as it appears on your Google Business Profile
- Full postal address using
PostalAddress - Phone number in international format
openingHoursSpecificationfor each day, including special hours where relevantgeocoordinates and anareaServedproperty for service-area businessessameAslinks to your Google Business Profile, Facebook page and major directoriespriceRangeand accepted payment methods if they help customers decide
Keep these details identical to your website footer, contact page and listings. Consistency between structured data and other sources is what builds trust in the entity.
Where Schema Is Heading
Schema.org continues to evolve, and Google adds or retires rich result features over time. In recent years Google has reduced how often FAQ and HowTo results appear while expanding support for features like product variants, merchant return policies, shipping details and discussion forums. The safest strategy is to focus on markup that describes your core entities accurately, rather than chasing every new visual feature. Accurate structured data stays useful even when the way results are displayed changes.
Final Thoughts
Schema markup is one of the few SEO tasks where you speak to search engines directly in their own language. Start with the essentials, Organization, WebSite, Article and BreadcrumbList, then add specialized types where your content earns them. Keep it accurate, keep it visible and test everything.
Need help building a structured data strategy that supports rich results and entity understanding? Book a free SEO audit and we’ll review your current markup.
Frequently Asked Questions
Quick answers to the questions we hear most about schema markup.
Does schema markup improve rankings?
Schema markup is not a direct ranking factor. It helps search engines understand your content and can make pages eligible for rich results, which can increase click-through rates. Better understanding and better clicks can support SEO indirectly.
Which schema format should I use?
Google supports JSON-LD, Microdata and RDFa, but recommends JSON-LD because it is easier to add, read and maintain. It sits in a script tag and does not require changing your visible HTML.
Can I add schema markup in WordPress without coding?
Yes. SEO plugins such as Yoast SEO and Rank Math automatically add core schema like Organization, WebSite, Article and BreadcrumbList. Dedicated schema plugins or custom HTML blocks can add FAQ, HowTo, Product or LocalBusiness markup.
Why are my rich results not showing?
Valid markup only makes a page eligible. Google decides whether to show rich results based on the query, the device, the quality of the page and its own policies. Some types, such as FAQ and HowTo rich results, are now shown far less often than before.
Can schema markup hurt my site?
Accurate markup will not hurt you. Misleading markup, such as fake reviews, invisible content or schema that does not match the page, can be ignored or lead to a manual action for spammy structured data.
How do I test my structured data?
Use Google’s Rich Results Test to check eligibility for Google features and the Schema Markup Validator at validator.schema.org to check general Schema.org syntax. After publishing, monitor the Enhancements section in Google Search Console.
