Kosakata
Schema Markup
Schema markup adalah kode structured data yang bantu Google paham konten website, bisa bikin rich results di SERP.
Definisi
Schema markup adalah kode structured data (biasanya JSON-LD) yang ditambahkan ke halaman web, memberi tahu Google apa isi halaman itu dalam format yang machine-readable.
Contoh: artikel resep yang pakai Recipe schema bisa muncul di Google dengan foto, rating, waktu masak, kalori langsung di hasil pencarian.
Kenapa Penting?
- Rich snippets → CTR lebih tinggi
- Google lebih paham konten → better ranking
- Voice search — Alexa / Google Assistant pakai structured data
- Knowledge Graph — brand-mu bisa muncul di knowledge panel
Format Schema
Google support 3 format, JSON-LD direkomendasikan:
JSON-LD (best practice)
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Article",
"headline": "SEO untuk Pemula",
"author": { "@type": "Person", "name": "Vito Atmo" },
"datePublished": "2026-04-17"
}
</script>
Microdata & RDFa (legacy)
Sudah jarang dipakai.
Tipe Schema Populer
| Tipe | Use case |
|---|---|
Article / BlogPosting | Artikel blog |
Course | Kursus online |
Product | Produk e-commerce |
Recipe | Resep masakan |
Event | Acara / webinar |
FAQPage | Halaman FAQ (tampil accordion di SERP) |
HowTo | Tutorial step-by-step |
Review | Review / rating |
LocalBusiness | Bisnis lokal |
Organization | Brand / perusahaan |
WebSite | Website (untuk sitelinks searchbox) |
BreadcrumbList | Breadcrumb navigasi |
Rich Results yang Mungkin Muncul
- Product: harga, rating, stok → langsung di SERP
- Recipe: foto, waktu masak, rating, kalori
- FAQ: accordion Q&A langsung di hasil
- How-to: step-by-step langsung tampil
- Event: tanggal, venue, buy ticket button
Tools Validasi
- Google Rich Results Test — test per URL
- Schema.org Validator — syntax check
- Google Search Console → Enhancements → cek error
Implementasi di Next.js
export default function Page() {
const schema = {
"@context": "https://schema.org",
"@type": "Course",
name: "SEO 101: Fundamental",
provider: {
"@type": "Organization",
name: "atmo.co.id",
},
};
return (
<>
<script
type="application/ld+json"
dangerouslySetInnerHTML={{ __html: JSON.stringify(schema) }}
/>
{/* konten halaman */}
</>
);
}
Tips Closing
- Mulai dari yang high-impact: Article, Product, FAQ, BreadcrumbList
- Test di Google Rich Results Test sebelum deploy
- Monitor di GSC — kalau ada error, fix cepat
- Jangan markup hal yang tidak ada di page — Google anggap spam