PublicToilet
PublicToilet is a direct CivicStructure subtype for public restrooms: municipal facilities, park facilities, transit-station restrooms, rest-area facilities. It has no unique properties, but it powers a surprisingly high-traffic consumer intent — "public toilet near me" is searched heavily in tourism, transit, and accessibility contexts.
Key patterns:
openingHoursSpecification: restroom hours (often different from surrounding building hours).isAccessibleForFree: true for public facilities; false if attendant-paid.amenityFeature: wheelchair access, baby-change facility, gender-neutral option, menstrual-product availability.containedInPlace: the park, transit station, or civic building that hosts the facility.
Full example of schema.org/PublicToilet json-ld markup
The markup is verified as valid with Rich Results Test from Google.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "PublicToilet",
"@id": "https://dunmore.gov.example/memorial-park-restroom",
"name": "Dunmore Memorial Park Public Restroom",
"description": "Year-round heated public restroom at Dunmore Memorial Park. Wheelchair accessible, baby-change facility, all-gender cubicle.",
"address": {
"@type": "PostalAddress",
"streetAddress": "400 South Blakely Street",
"addressLocality": "Dunmore",
"addressRegion": "PA",
"postalCode": "18512",
"addressCountry": "US"
},
"geo": { "@type": "GeoCoordinates", "latitude": 41.4232, "longitude": -75.6320 },
"publicAccess": true,
"isAccessibleForFree": true,
"openingHoursSpecification": [
{ "@type": "OpeningHoursSpecification", "dayOfWeek": ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"], "opens": "06:00", "closes": "22:00" }
],
"amenityFeature": [
{ "@type": "LocationFeatureSpecification", "name": "Wheelchair accessible", "value": true },
{ "@type": "LocationFeatureSpecification", "name": "Baby-change facility", "value": true },
{ "@type": "LocationFeatureSpecification", "name": "All-gender cubicle", "value": true },
{ "@type": "LocationFeatureSpecification", "name": "Heated (year-round)", "value": true }
],
"containedInPlace": { "@type": "Park", "name": "Dunmore Memorial Park" }
}
</script>Why structured PublicToilet matters
Crohn's and IBD communities, tourists in unfamiliar cities, parents with young children, and mobility-impaired travellers all use restroom-search heavily. Publishing structured PublicToilet with explicit accessibility and baby-change amenityFeature entries makes the facility findable.
Minimal valid version
The smallest markup that still produces a valid PublicToilet entity. Use it as the floor. Reach for the advanced example above when you want search engines and AI agents to understand more about your content.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "PublicToilet",
"name": "Dunmore Memorial Park Public Restroom",
"address": { "@type": "PostalAddress", "streetAddress": "400 South Blakely Street", "addressLocality": "Dunmore", "addressRegion": "PA" }
}
</script>Google rich results this unlocks
Markup matching this example makes your page eligible for the following Google Search rich results. The primary target drives the required / recommended property classification in the advanced code block above.
- Google docsLocal search / map-surface listingprimary
Common PublicToilet mistakes
Mistakes that pass validation but silently fail to earn rich results or mislead consumers walking the graph. Avoid these and your markup will be ahead of most sites in the wild.
- 01
Missing accessibility amenityFeature
WrongPublicToilet with no wheelchair-access signalRightExplicit amenityFeature for wheelchair access, baby-change, all-genderThese are the exact filters restroom-search apps (Flush, Where's the Loo, Toilet Finder) use. Without them, the facility is effectively invisible to the users who most need it.
- 02
Restroom hours conflated with park hours
WrongRe-using the park's openingHours for the restroomRightExplicit openingHoursSpecification for the restroom (often narrower than the surrounding park)Restrooms commonly close earlier than their containing park. Re-using park hours sends users to locked facilities.
Schema properties in this example
About the example data
The public restroom at Dunmore Memorial Park, a fictional park across from the Borough Hall.
Comments
Loading comments...