docs
Place Schema
Add Place structured data to your Sanity documents to describe physical locations and venues for Google Maps and local search.
About Place Schema
Place schema describes physical locations and venues with address, geo, and related location details. It helps search engines understand location-based entities and can support local discovery when paired with accurate visible content, LocalBusiness data, and up-to-date external profiles.
Fields
| Field | Type | Required | Description |
|---|---|---|---|
name | string | ✓ | The name of the place or venue. |
address.addressLocality | string | — | The city or locality where the place is located. |
address.addressCountry | string | — | The country where the place is located (ISO 3166-1 alpha-2 code). |
Plugin Registration
sanity.config.ts
import { defineConfig } from "sanity";
import { seoFields } from "sanity-plugin-seofields";
import { schemaOrgPlacePlugin } from "sanity-plugin-seofields/schema";
export default defineConfig({
// ...your sanity config
plugins: [
seoFields(),
schemaOrgPlacePlugin(),
],
});Schema Usage
Add the schemaOrgPlace field to any document schema:
schemas/page.ts
import { defineField, defineType } from 'sanity'
export default defineType({
name: 'page',
title: 'Page',
type: 'document',
fields: [
// ... your other fields
defineField({
name: 'schemaOrgPlace',
title: 'Place Schema',
type: 'schemaOrgPlace',
}),
],
})GROQ Query
GROQ query
*[_type == "yourDocumentType"][0]{
...,
schemaOrgPlace
}Next.js Component
app/page.tsx
import { PlaceSchema } from "sanity-plugin-seofields/schema/next";
export default function Page({ data }) {
return (
<>
<PlaceSchema data={data.schemaOrgPlace} />
{/* Your page content */}
</>
);
}JSON-LD Output
Generated JSON-LD
{
"@context": "https://schema.org",
"@type": "Place",
"name": "Central Park",
"address": {
"@type": "PostalAddress",
"addressLocality": "New York",
"addressCountry": "US"
}
}Last updated: May 27, 2026. Tested with: Sanity Studio v3, v4, and v5.
Was this page helpful?