Skip to Content

What is Structured Data (Schema)?

image

Definition

Structured Data or Schema Markup is code that displays webpage content in a standardized format so that search engines can better understand it. While regular HTML is meant for human readers, structured data is meant for machines (search engines) to understand precisely. For example, when there's text "James Bond," structured data adds metadata so search engines can clearly know whether it's a movie title or a person's name.

Structured data primarily uses Schema.org vocabulary and is implemented in formats like JSON-LD, Microdata, and RDFa. Among these, JSON-LD (JavaScript Object Notation for Linked Data) is most widely used and recommended by Google. JSON-LD is separated from HTML making it easy to manage, and is written in JSON format within script tags, so you don't need to modify existing HTML structure.

When structured data is implemented correctly, you can get enhanced search results like Rich Snippets, Rich Cards, and Knowledge Graphs. For example, adding structured data to a recipe page can display cooking time, calories, and ratings directly in search results, significantly increasing click-through rates.

Features

  • Enhanced Search Results: Using structured data can display ratings, prices, stock status, event dates, etc. directly in search results, significantly improving click-through rates (CTR).
  • Voice Search Optimization: Voice assistants like Google Assistant, Siri, and Alexa can better understand webpage information and use it for voice responses.
  • Knowledge Panel Exposure: Proper structured data can get you featured in Google's Knowledge Panel or card format at the top of search results.
  • Support for Various Content Types: Schemas exist for a wide variety of content types including products, recipes, events, articles, reviews, videos, FAQs, and job postings.
  • Improved Search Engine Understanding: Clearly conveys page context and relationships, helping search engines classify content more accurately and match it to relevant search queries.

How to Use

Here's how to effectively implement and manage structured data.

Step 1: Identify Content Type First, determine what type of content your webpage has. Choose an appropriate schema from the hundreds available at Schema.org. Commonly used types include Article, Product, Recipe, Event, Organization, Person, LocalBusiness, and Review.

Step 2: Write JSON-LD Code Write structured data in JSON-LD format according to your chosen schema type. Include required and recommended properties by referring to Schema.org documentation. Google's Structured Data Markup Helper makes this easier.

Step 3: Insert into HTML Insert the written JSON-LD code wrapped in <script type="application/ld+json"> tags inside the <head> or <body> tags of your webpage. Placing it in the <head> section is generally recommended.

Step 4: Test and Validate Use Google's Rich Results Test or Schema Markup Validator to verify that structured data is implemented correctly. Fix any errors or warnings immediately.

Step 5: Monitor with Google Search Console Monitor structured data status in the 'Enhancements' section of Google Search Console. You'll receive alerts when errors are found and can see which pages have issues.

Step 6: Continuous Updates Update structured data whenever content changes. Information that changes frequently, like prices, stock status, or event dates, must be kept accurate. Using automation tools or CMS plugins makes management easier.

Examples

Example 1: Blog Article Schema

<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Article",
"headline": "What is Backlink? Complete Guide for SEO Beginners",
"image": [
"https://zero-coke.com/img/backlink-guide.jpg"
],
"datePublished": "2024-03-23T09:00:00+09:00",
"dateModified": "2024-03-23T14:30:00+09:00",
"author": {
"@type": "Person",
"name": "John Smith",
"url": "https://zero-coke.com/author/john"
},
"publisher": {
"@type": "Organization",
"name": "Zero-Coke",
"logo": {
"@type": "ImageObject",
"url": "https://zero-coke.com/logo.png"
}
},
"description": "Explains backlink definition, features, and usage in an easy-to-understand way for beginners.",
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "https://zero-coke.com/blog/what-is-backlink"
}
}
</script>

Example 2: Product Schema

<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Product",
"name": "Wireless Bluetooth Earphones XYZ-2000",
"image": [
"https://example.com/photos/earphone-front.jpg",
"https://example.com/photos/earphone-side.jpg"
],
"description": "Premium wireless earphones with noise cancellation",
"brand": {
"@type": "Brand",
"name": "TechSound"
},
"sku": "XYZ2000-BLK",
"mpn": "925872",
"offers": {
"@type": "Offer",
"url": "https://example.com/product/xyz2000",
"priceCurrency": "USD",
"price": "129.00",
"priceValidUntil": "2024-12-31",
"availability": "https://schema.org/InStock",
"itemCondition": "https://schema.org/NewCondition"
},
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.7",
"reviewCount": "342"
}
}
</script>

Example 3: Recipe Schema

<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Recipe",
"name": "Simple Kimchi Stew Recipe",
"image": "https://example.com/photos/kimchi-jjigae.jpg",
"author": {
"@type": "Person",
"name": "Chef Park Young-hee"
},
"datePublished": "2024-03-20",
"description": "Delicious kimchi stew ready in 20 minutes",
"prepTime": "PT10M",
"cookTime": "PT10M",
"totalTime": "PT20M",
"recipeYield": "4 servings",
"recipeCategory": "Main dish",
"recipeCuisine": "Korean",
"keywords": "kimchi stew, Korean food, simple recipe",
"nutrition": {
"@type": "NutritionInformation",
"calories": "250 calories"
},
"recipeIngredient": [
"300g aged kimchi",
"200g pork",
"1/2 block tofu",
"1 green onion",
"1 tablespoon red pepper powder"
],
"recipeInstructions": [
{
"@type": "HowToStep",
"text": "Cut kimchi and pork into bite-sized pieces."
},
{
"@type": "HowToStep",
"text": "Stir-fry kimchi and meat in a pot."
},
{
"@type": "HowToStep",
"text": "Add water and bring to boil, then add tofu and green onion."
}
],
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.8",
"ratingCount": "127"
}
}
</script>

Example 4: FAQ Schema

<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "How many backlinks are effective?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Quality is much more important than quantity. One backlink from an authoritative site can be more valuable than 100 backlinks from low-quality sites."
}
},
{
"@type": "Question",
"name": "What about buying backlinks?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Buying backlinks clearly violates Google's guidelines. If caught, you can receive severe penalties, and in the worst case, you could be completely removed from search results."
}
}
]
}
</script>

Example 5: Event Schema

<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Event",
"name": "2024 Web Development Conference",
"description": "Annual conference to learn latest web development trends and technologies",
"image": "https://example.com/conference-2024.jpg",
"startDate": "2024-09-15T09:00:00+09:00",
"endDate": "2024-09-15T18:00:00+09:00",
"eventStatus": "https://schema.org/EventScheduled",
"eventAttendanceMode": "https://schema.org/OfflineEventAttendanceMode",
"location": {
"@type": "Place",
"name": "Seoul COEX Convention Center",
"address": {
"@type": "PostalAddress",
"streetAddress": "513 Yeongdong-daero",
"addressLocality": "Seoul",
"addressRegion": "Gangnam-gu",
"postalCode": "06164",
"addressCountry": "KR"
}
},
"organizer": {
"@type": "Organization",
"name": "Korea Web Developers Association",
"url": "https://example.com"
},
"offers": {
"@type": "Offer",
"url": "https://example.com/tickets",
"price": "50000",
"priceCurrency": "KRW",
"availability": "https://schema.org/InStock",
"validFrom": "2024-06-01T00:00:00+09:00"
}
}
</script>

Pros and Cons

Pros

  • Improved Search Visibility: Structured data displays as more prominent rich snippets in search results, significantly increasing click-through rates. Studies show search results with rich snippets have over 30% higher CTR on average.

  • Increased Search Engine Understanding: Clearly conveying page content and context helps search engines provide more accurate results. This can also indirectly contribute to improved rankings.

  • Voice Search and AI Optimization: Structured data makes it easy for voice assistants and AI-based search engines to extract and utilize information, preparing for future search trends.

Cons

  • Implementation Complexity: Writing correct structured data requires understanding Schema.org's extensive documentation and accurately writing JSON-LD format. Complex pages may require nesting or combining multiple schema types.

  • Maintenance Burden: Structured data must be updated whenever content changes. For sites where prices or inventory change frequently, like e-commerce sites, automation is needed to prevent data inconsistency.

  • No Guarantee of Immediate Effect: Adding structured data doesn't guarantee rich snippets will appear. Google ultimately decides whether to display rich results, considering page quality and relevance. Some schema types only appear as rich results when certain conditions are met.

FAQ

Q: Does structured data directly improve search rankings? A: No, structured data itself is not a direct ranking factor. Google has officially confirmed this. However, higher click-through rates from rich snippets can indirectly help improve rankings. Also, search engines can better understand pages to match more accurately with relevant queries.

Q: Should I add structured data to all pages? A: Not required for all pages, but it's good to add to pages with specific content types like product pages, blog articles, event pages, and FAQ pages. It's common to add Organization schema to the homepage and Article schema to blog posts. Prioritize and start with important pages.

Q: Which should I use: JSON-LD, Microdata, or RDFa? A: JSON-LD is most recommended. Google officially prefers JSON-LD, and it's separated from HTML making it easier to manage with lower error possibility. Microdata and RDFa add attributes directly to HTML tags, making them more complex and harder to maintain. Choose JSON-LD unless you have a specific reason otherwise.

Q: Will I get penalized for implementing structured data incorrectly? A: General errors don't incur penalties, but intentionally providing false information or using spammy markup can result in Manual Actions. For example, adding 5-star reviews to structured data that don't actually exist, or marking up content invisible to users, violates guidelines. Fix immediately if you receive warnings in Google Search Console.