location
location · Not mentioned by Google (checked against Organization docs)
Appears in
What is it?
The physical address, virtual venue, or geographic place associated with an entity. For events, this is where the event takes place: a conference center, concert hall, stadium, or virtual platform. For organizations, this is where the business operates. The field accepts multiple types: Place for physical locations, VirtualLocation for online venues, PostalAddress for street addresses, or plain Text.
Why this matters for AEO
When a user asks "where is [event]" or "events near [city]," AI answer engines use location to provide the venue name, address, and geographic context. Without structured location data, the AI must extract place names from unstructured text, which frequently fails for venues that share names with other entities or addresses embedded in paragraphs.
What the specs say
Schema.org: Place, PostalAddress, Text, VirtualLocation. The location of, for example, where an event is happening, where an organization is located, or where an action takes place. schema.org/location
Google: Not listed in Google's structured data documentation for Organization. For Event structured data, Google lists location as a required property with nested Place and PostalAddress properties. Google Organization docs · Google Event docs
How to find your value
- Physical venue — Venue name, street address, city, state/region, postal code, country
- Virtual event — Platform URL (Zoom link, livestream page, virtual event platform)
- Hybrid event — Both a Place and a VirtualLocation
For physical venues, always include the full postal address. A venue name alone is ambiguous (multiple cities may have a "Convention Center").
Format and code
Physical location with Place and PostalAddress:
{
"@type": "Event",
"name": "Webflow Conf 2024",
"location": {
"@type": "Place",
"name": "Palace of Fine Arts",
"address": {
"@type": "PostalAddress",
"streetAddress": "3601 Lyon St",
"addressLocality": "San Francisco",
"addressRegion": "CA",
"postalCode": "94123",
"addressCountry": "US"
}
}
}
Virtual location:
{
"@type": "Event",
"name": "Next.js Conf 2024",
"eventAttendanceMode": "https://schema.org/OnlineEventAttendanceMode",
"location": {
"@type": "VirtualLocation",
"url": "https://nextjs.org/conf"
}
}
Hybrid event (both physical and virtual):
{
"@type": "Event",
"name": "Figma Config 2024",
"eventAttendanceMode": "https://schema.org/MixedEventAttendanceMode",
"location": [
{
"@type": "Place",
"name": "Moscone Center",
"address": {
"@type": "PostalAddress",
"streetAddress": "747 Howard St",
"addressLocality": "San Francisco",
"addressRegion": "CA",
"postalCode": "94103",
"addressCountry": "US"
}
},
{
"@type": "VirtualLocation",
"url": "https://config.figma.com"
}
]
}
Organization location:
{
"@type": "Organization",
"name": "Stripe",
"location": {
"@type": "Place",
"address": {
"@type": "PostalAddress",
"streetAddress": "354 Oyster Point Blvd",
"addressLocality": "South San Francisco",
"addressRegion": "CA",
"postalCode": "94080",
"addressCountry": "US"
}
}
}
With geographic coordinates:
{
"@type": "Place",
"name": "Madison Square Garden",
"address": {
"@type": "PostalAddress",
"streetAddress": "4 Pennsylvania Plaza",
"addressLocality": "New York",
"addressRegion": "NY",
"postalCode": "10001",
"addressCountry": "US"
},
"geo": {
"@type": "GeoCoordinates",
"latitude": "40.7505",
"longitude": "-73.9934"
}
}
Adding geo coordinates helps AI engines answer proximity queries ("events near me") with precision.
Webflow implementation
Static pages
Add the location object to the Event or Organization JSON-LD in Page Settings > Custom Code (Before ):
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Event",
"name": "Design Systems London",
"startDate": "2024-11-14T09:00:00",
"location": {
"@type": "Place",
"name": "Barbican Centre",
"address": {
"@type": "PostalAddress",
"streetAddress": "Silk St",
"addressLocality": "London",
"postalCode": "EC2Y 8DS",
"addressCountry": "GB"
}
}
}
</script>
CMS template pages
Create CMS fields for venue name, street address, city, region, postal code, and country. Reference each in the JSON-LD embed to build the nested Place > PostalAddress structure. For virtual events, use a URL field for the livestream link.
In Schema HQ
The location field assembles full location object from your CMS fields. It nests Place, PostalAddress, and optionally VirtualLocation based on the event's attendance mode.
Related fields
- eventAttendanceMode — determines whether location is physical, virtual, or both
- startDate — when the event at this location begins
- organizer — who hosts the event at this location
- eventStatus — whether the event at this location is still happening
FAQ
Should I use Place or PostalAddress for location?
Use Place as the outer type, with PostalAddress nested inside its address property. Place allows you to include both the venue name and the address. Using PostalAddress directly omits the venue name, which is less informative.
How do I mark a hybrid event location?
Use an array with both a Place object (for the physical venue) and a VirtualLocation object (for the online stream). Set eventAttendanceMode to MixedEventAttendanceMode to match.
Does location affect local search rankings?
For events, a structured location with full address helps Google display the event in location-based search results and Maps. For organizations, Google's Organization structured data docs do not list location as a property, but the address data in Place feeds into local entity signals that AI engines use for geographic queries.