Local Business JSON-LD is the machine-readable bridge between your physical service area and map pack results. Without GeoCoordinates, areaServed arrays, and consistent @id entity linking, you are relying on Google to guess your relevance — and Google guesses wrong in densely populated industrial corridors.
LocalBusiness Schema Components
Every location and service page must inject LocalBusiness or Service schema with: name, url, telephone, address (PostalAddress), geo (GeoCoordinates), areaServed, and parent Organization @id reference. This creates an unambiguous entity graph crawlers resolve to specific map queries.
{
"@type": "LocalBusiness",
"geo": {
"@type": "GeoCoordinates",
"latitude": -26.2678,
"longitude": 28.1225
},
"areaServed": ["Alrode", "Wadeville", "Germiston"]
}Advanced Schema SEO Patterns
- FAQPage schema on service pages with real procurement questions
- Service schema with priceRange and provider linkage
- BreadcrumbList for crawl path clarity
- Review schema only for verified, legally compliant testimonials
Implementation in Next.js
Use secureJsonLD() with HTML tag sanitization (substituting < with \u003c) in Server Components. Type schema objects with TypeScript for compile-time validation. Never inject schema client-side — it must be in initial HTML for crawler visibility.