structured-data/schema-markup Schema Markup SEO Rule
Validate JSON-LD structured data for proper schema.org markup including Organization, WebSite, Article, Product, and FAQ schemas
What This Rule Checks
Parses JSON-LD script tags, validates schema type properties (Organization, WebSite, Article, Product, LocalBusiness), detects invalid JSON, checks for breadcrumb and FAQ schema opportunities, and identifies review/rating content.
Why It Matters for SEO & GEO
Structured data enables rich snippets in search results (star ratings, FAQ dropdowns, breadcrumbs). Rich results have significantly higher click-through rates than plain listings.
How to Fix
Add JSON-LD structured data with required properties for each schema type. Use valid JSON syntax. Include breadcrumb schema for navigation. Add FAQ schema for question-based content.
Examples
Bad
<script type="application/ld+json">{"name": "My Site"}</script> Good
<script type="application/ld+json">{"@context": "https://schema.org", "@type": "Organization", "name": "VibeLinter", "url": "https://vibelinter.com"}</script> How VibeLinter Checks Schema Markup
VibeLinter’s structured-data/schema-markup rule performs these checks:
- JSON-LD parsing — Finds all
<script type="application/ld+json">tags and parses the JSON content - Invalid JSON detection — Errors when JSON-LD content cannot be parsed or lacks
@type - Organization validation — Checks Organization schemas for required
nameandurlproperties - WebSite validation — Checks WebSite schemas for required
nameandurlproperties - Article validation — Checks Article schemas for
headline,author, anddatePublished - Product validation — Checks Product schemas for
nameanddescription - LocalBusiness validation — Checks LocalBusiness schemas for
name,address, andtelephone - Breadcrumb opportunity — Detects breadcrumb navigation without BreadcrumbList schema
- FAQ opportunity — Detects pages with 3+ question-like headings (containing ”?”, “faq”, or “question”) without FAQPage schema
- Review opportunity — Detects review/rating content without Review or AggregateRating schema
Configuration
// vibelinter.config.cjs
module.exports = {
rules: {
'structured-data/schema-markup': {
enabled: true,
severity: 'info'
}
}
}
SEO Impact
Structured data affects:
- Rich results — Enable star ratings, FAQ dropdowns, breadcrumbs, and other enhanced search features
- Click-through rates — Rich snippets can increase CTR by 20-30% compared to plain results
- Knowledge Graph — Organization and WebSite schemas contribute to Knowledge Graph entries
- GEO (Generative Engine Optimization) — AI models heavily rely on structured data to extract factual information; proper schema markup increases the accuracy and likelihood of your content being cited in AI-generated answers