Schema Markup Generator
Generate valid JSON-LD structured data for Google Rich Results. Choose from 20+ schema types and copy the code to your WordPress site.
How to Validate Your Schema
What is Schema Markup? A Complete Guide
Structured data explained — from beginner basics to advanced SEO strategy.
Schema markup (also called structured data) is machine-readable code that you embed in your website's HTML to help search engines precisely understand your content. It uses a shared, standardized vocabulary from schema.org — a collaborative initiative founded in 2011 by Google, Microsoft, Yahoo, and Yandex.
Without schema, search engines guess at what your content means by reading text the same way a human would. With schema markup, you explicitly tell Google: "This page is about a Product. Its price is $49. It has 4.7 stars from 312 reviews. It's in stock." That precision is what enables rich results — the enhanced SERP appearances that stand out from plain blue links.
This free tool generates your structured data in JSON-LD format — wrapped inside <script type="application/ld+json"> — which Google explicitly recommends over all other formats. It sits separately from your HTML, so you never have to rewrite your page to add it.
- Rich results earn 20–30% higher click-through rates than plain results
- FAQ schema doubles your SERP real estate with expandable Q&A
- Product schema shows price, rating & availability directly in results
- Local Business schema powers Google Maps & local pack placement
- Article schema qualifies for Google Top Stories & Discover
- Better content signals improve AI Overview & featured snippet eligibility
- Recipe schema shows cook time, calories & ratings in image results
- Event schema displays date, location & tickets without clicking through
Google's Official Stance: JSON-LD is the preferred format for structured data. It does not require modifying your existing HTML — just add a script block anywhere on the page.
How to Use This Schema Markup Generator
Generate and deploy valid structured data in under 2 minutes — no coding required.
Pick from 20+ schema types in the left sidebar. Use the search box to find the right type for your content instantly.
Enter your details into the form. Required fields are marked with a red asterisk. All others are optional but boost completeness.
Hit Generate and your valid JSON-LD code appears instantly, with syntax highlighting so every field is easy to review.
Copy the JSON-LD or get WordPress-specific instructions. Paste into your page's <head> or use the Custom HTML block.
Test with Google's Rich Results Test, then track your structured data performance in Google Search Console → Enhancements.
Pro tip: Always test your generated code in Google's Rich Results Test before publishing. It shows exactly which rich result types your page qualifies for and flags any errors or warnings that might prevent eligibility.
All 20+ Schema Types — What They Do & When to Use Them
Every schema type supported by this generator, with the rich result it unlocks in Google Search.
| Schema Type | Best For | Rich Result Unlocked in Google | SEO Priority |
|---|---|---|---|
| LocalBusiness | Shops, clinics, restaurants, service businesses | Local Pack, Maps, Knowledge Panel, Opening Hours | HIGH |
| FAQPage | Any page with questions and answers | Expandable FAQ accordion directly in Google Search | HIGH |
| Product | E-commerce product pages and listings | Price, availability, star ratings in Shopping results | HIGH |
| Article / BlogPosting | Blog posts, guides, editorial content | Top Stories Carousel, Article rich result, Google Discover | HIGH |
| NewsArticle | News publishers and journalists | Top Stories, Google News, AMP eligibility | HIGH |
| Recipe | Food blogs and cooking websites | Recipe card with image, cook time, ratings, serving size | HIGH |
| Event | Conferences, concerts, webinars, meetups | Event rich result with date, venue, and ticket links | HIGH |
| Review / AggregateRating | Review pages, products with multiple ratings | Gold star ratings displayed beneath search result links | HIGH |
| HowTo | Step-by-step guides and tutorials | How-To steps with images in Google Search | MED |
| BreadcrumbList | All websites with a page hierarchy | Breadcrumb path shown instead of raw URL in SERPs | HIGH |
| VideoObject | Pages featuring videos or YouTube embeds | Video carousel in Google Search and Google Video tab | MED |
| WebSite | Homepage of any website | Sitelinks Search Box in Google Knowledge Panel | MED |
| Course | Online learning platforms and course pages | Course rich result with provider, price, availability | MED |
| SoftwareApplication | Web apps, mobile apps, SaaS tools | App rich result with ratings, OS info, price | MED |
| Person | Author pages, speaker bios, personal brands | Person Knowledge Panel, Author attribution in Google | MED |
| Organization | Company websites, nonprofits, brands | Knowledge Panel, Sitelinks, brand identity signals | MED |
| Restaurant | Food service businesses, cafes, bars | Local rich result with menu, hours, cuisine type | HIGH |
| ImageObject | Photography sites, galleries, image-heavy pages | Google Images licensing info, image rich results | MED |
| MedicalCondition | Health information websites | Medical Knowledge Panel, Health info rich results | MED |
| Offer | Deals, promotions, subscription listings | Shopping panel with price, availability, seller info | MED |
JSON-LD vs Microdata vs RDFa: Which Format Should You Use?
All three are Google-supported — but they differ hugely in ease of use and flexibility.
- Added in a separate <script> tag — zero HTML edits needed
- Easiest to write, read, debug, and update
- Works perfectly with WordPress, Shopify, Webflow
- Can be dynamically injected via JavaScript
- Supported by Google, Bing, Yahoo, Yandex
- Our generator outputs this format
- Requires attributes added to existing HTML tags
- Hard to maintain — markup tied to HTML structure
- Difficult to update without touching the page layout
- Content and schema always in sync by design
- No extra script tags required
- Most complex and verbose of the three formats
- Primarily used in academic / semantic web contexts
- Steep learning curve for non-developers
- Works in HTML5, XML, and SVG documents
- Highly expressive for complex data relationships
Bottom line: Use JSON-LD for every new implementation. It's simpler to implement, easier to debug, entirely decoupled from your page HTML, and explicitly recommended in Google's official structured data documentation.
How to Add Schema Markup to WordPress (4 Methods)
Choose the method that fits your technical skill level — all four work perfectly.
Best for adding schema to individual pages or posts.
- Open your page in the Gutenberg editor
- Click + to add a new block
- Search for and insert a Custom HTML block
- Paste your full
<script type="application/ld+json">tag - Click Update / Publish
Best for adding schema site-wide or to specific templates.
- Install the free "Insert Headers and Footers" plugin
- Go to Settings → Insert Headers and Footers
- Paste your JSON-LD into the Header section
- Save — code is injected on every page automatically
- Use WPCode for conditional logic (specific pages only)
Best if you already use an SEO plugin — they have built-in schema editors.
- Install Rank Math SEO (free) or Yoast SEO
- Edit the page → go to the Schema tab in the SEO meta box
- Click Add Custom Schema and paste your JSON-LD
- Rank Math also auto-generates many types; combine both
- Save and publish your page
Best for programmatic, conditional schema injection via PHP.
function mytheme_schema() {
if ( is_singular('post') ) {
$schema = array(
'@context' => 'https://schema.org',
'@type' => 'Article',
'name' => get_the_title(),
);
echo '<script type="application/ld+json">';
echo wp_json_encode( $schema );
echo '</script>';
}
}
add_action( 'wp_head', 'mytheme_schema' );
7 Common Schema Markup Mistakes to Avoid
These errors will prevent Google from showing rich results — and how to fix each one.
Google requires schema data to reflect content actually visible to users. Never add product prices, ratings, or review counts in schema that don't match what's on the page. This is considered spammy structured data and can result in a manual action penalty.
Marking a blog post as a Product or a contact page as a LocalBusiness confuses Google and wastes your structured data. Always match the schema type precisely to your page content.
Each schema type has required fields for rich result eligibility. For example, Product requires at minimum a name and either a Review or AggregateRating or Offer to qualify. Check Google's docs for required vs recommended properties per type.
A single missing comma, unclosed bracket, or stray quotation mark will break your entire schema block. Always validate with Google's Rich Results Test or a JSON linter before deploying. Our generator outputs valid JSON-LD automatically.
Putting "ratingValue": "5" and "reviewCount": "10000" when you have no real reviews is spam. Google cross-references this with actual page content and third-party signals. Use real numbers only.
If you have priceValidUntil or event dates in your schema that have passed, Google may demote or remove your rich results. Update your structured data whenever page content changes.
Many issues only appear after going live — theme conflicts, plugin overwrites, or CMS rendering issues can corrupt your JSON-LD. After publishing, always check the live URL in Google's Rich Results Test and monitor Search Console for errors.
Quick fix: Use this generator to produce clean, valid JSON-LD, then immediately test the output at search.google.com/test/rich-results before adding it to your site.
Frequently Asked Questions About Schema Markup
The most-searched questions about structured data, JSON-LD, and rich results — fully answered.
Official Resources & Related Tools
Everything you need to validate, monitor, and master structured data.