Skip to main content

กำลังโหลด...

Southern Whale
Free SEO Audit

Schema Markup: How to Get Rich Snippets (with JSON-LD Examples)

May 16, 2026
Southern Whale
Schema Markup Guide 2026

Schema Markup is the single thing that puts your Rich Result in Google ahead of competitors — stars, prices, images, expanded FAQs in the SERP. Adding the right Schema type lifts CTR 20-40%.

This article covers:

  • What Schema is
  • 8 types that actually matter
  • JSON-LD examples ready to copy

Schema Markup — Short Definition

Schema.org is a shared vocabulary that Google, Bing, and Yandex use to describe what’s on a web page.

Example: a page on your site is an article. Schema tells Google:

  • Who wrote it
  • When it was published
  • Which image is the featured image
  • What topic it covers

Google uses that to show Rich Results in the SERP.

Which Format to Use

Three formats exist:

  1. JSON-LD — recommended by Google (loaded as a <script> in <head>)
  2. Microdata — embedded in HTML (harder to maintain)
  3. RDFa — embedded in HTML

Always use JSON-LD — simpler and Google prefers it.

8 Schema Types You’ll Actually Use

1. Organization (every site needs this)

Add via BaseLayout so it appears on every page.

{
  "@context": "https://schema.org",
  "@type": "Organization",
  "name": "Southern Whale",
  "url": "https://southernwhale.com",
  "logo": "https://southernwhale.com/images/logo.webp",
  "contactPoint": {
    "@type": "ContactPoint",
    "telephone": "+66-93-574-9544",
    "contactType": "customer service",
    "availableLanguage": ["Thai", "English"]
  },
  "sameAs": [
    "https://line.me/ti/p/7rYm89C06d",
    "https://www.facebook.com/southernwhale"
  ]
}

2. LocalBusiness (for any business with a physical location)

{
  "@context": "https://schema.org",
  "@type": "ProfessionalService",
  "name": "Southern Whale Phuket",
  "address": {
    "@type": "PostalAddress",
    "streetAddress": "...",
    "addressLocality": "Mueang Phuket",
    "addressRegion": "Phuket",
    "postalCode": "83000",
    "addressCountry": "TH"
  },
  "geo": {
    "@type": "GeoCoordinates",
    "latitude": 7.8804,
    "longitude": 98.3923
  },
  "telephone": "+66-93-574-9544",
  "openingHoursSpecification": {
    "@type": "OpeningHoursSpecification",
    "dayOfWeek": ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"],
    "opens": "09:00",
    "closes": "18:00"
  },
  "priceRange": "$$$",
  "aggregateRating": {
    "@type": "AggregateRating",
    "ratingValue": "4.9",
    "reviewCount": "50"
  }
}

3. Article / BlogPosting (for articles)

{
  "@context": "https://schema.org",
  "@type": "BlogPosting",
  "headline": "Schema Markup Guide with Rich Snippet Examples",
  "image": "https://southernwhale.com/images/blog/schema-markup-guide-2026.jpg",
  "datePublished": "2026-05-16",
  "dateModified": "2026-05-16",
  "author": {
    "@type": "Organization",
    "name": "Southern Whale"
  },
  "publisher": {
    "@type": "Organization",
    "name": "Southern Whale",
    "logo": {
      "@type": "ImageObject",
      "url": "https://southernwhale.com/images/logo.webp"
    }
  }
}

4. BreadcrumbList

{
  "@context": "https://schema.org",
  "@type": "BreadcrumbList",
  "itemListElement": [
    { "@type": "ListItem", "position": 1, "name": "Home", "item": "https://southernwhale.com/" },
    { "@type": "ListItem", "position": 2, "name": "Blog", "item": "https://southernwhale.com/blog/" },
    { "@type": "ListItem", "position": 3, "name": "What Is Schema Markup" }
  ]
}

5. FAQPage (for FAQ pages or FAQ sections in articles)

{
  "@context": "https://schema.org",
  "@type": "FAQPage",
  "mainEntity": [
    {
      "@type": "Question",
      "name": "What is Schema Markup?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Schema is the vocabulary Google uses to understand your page..."
      }
    }
  ]
}

6. Product + Review + AggregateRating (for e-commerce)

{
  "@context": "https://schema.org",
  "@type": "Product",
  "name": "...",
  "image": [...],
  "description": "...",
  "brand": { "@type": "Brand", "name": "..." },
  "offers": {
    "@type": "Offer",
    "price": "1500",
    "priceCurrency": "THB",
    "availability": "https://schema.org/InStock"
  },
  "aggregateRating": {
    "@type": "AggregateRating",
    "ratingValue": "4.8",
    "reviewCount": "120"
  }
}

7. Hotel + Offer (for hotel sites)

{
  "@context": "https://schema.org",
  "@type": "Hotel",
  "name": "Pool Villa Karon",
  "starRating": { "@type": "Rating", "ratingValue": "4" },
  "amenityFeature": [
    { "@type": "LocationFeatureSpecification", "name": "Free WiFi" },
    { "@type": "LocationFeatureSpecification", "name": "Pool" }
  ],
  "priceRange": "฿8000-฿20000",
  "containsPlace": [
    {
      "@type": "Room",
      "name": "Pool Suite",
      "occupancy": { "@type": "QuantitativeValue", "maxValue": 2 }
    }
  ]
}

8. Service (for service pages)

{
  "@context": "https://schema.org",
  "@type": "Service",
  "name": "SEO Services",
  "provider": {
    "@type": "Organization",
    "name": "Southern Whale"
  },
  "areaServed": [
    { "@type": "City", "name": "Phuket" },
    { "@type": "City", "name": "Krabi" }
  ],
  "offers": {
    "@type": "AggregateOffer",
    "lowPrice": "40000",
    "highPrice": "300000",
    "priceCurrency": "THB"
  }
}

How to Verify Schema Works

1. Schema.org Validator

https://validator.schema.org/ Enter URL or paste code → see errors and warnings.

2. Google Rich Results Test

https://search.google.com/test/rich-results Tests whether Google recognizes your Schema and will display a Rich Result.

3. Google Search Console

1-2 weeks after submitting Schema, check the Enhancements tab in GSC to see which Schemas Google captured.

Common Mistakes

  • Schema that doesn’t match content — Google penalizes.
  • Fake reviews — Google detects this and penalizes hard.
  • Multiple conflicting Schemas — e.g., Organization + LocalBusiness with mismatched NAP.
  • Schema on auto-generated pages Google won’t index — wasted effort.
  • Mixing Microdata + JSON-LD — pick one.

How to Roll Out Schema on Your Site

Priority order:

  1. Organization / LocalBusiness (sitewide)
  2. BreadcrumbList (every detail page)
  3. Article (every blog post)
  4. FAQPage (every page with FAQs)
  5. Product / Service (depending on business type)
  6. Specific types: Hotel / Restaurant / Event / Course / Recipe

First implementation takes 2-4 hours. After that, you have a template to reuse.

Request Schema Implementation

Our SEO Audit service includes a Schema implementation plan for your site every time, and our dev team can implement it for you.

For new sites — we build with Astro/Next.js with Schema.org included from Day 1. See Web Development.