TaxiService
TaxiService is a direct Service subtype for taxi and ride-for-hire services: traditional taxi fleets, app-based ride-hire, accessible-vehicle services, airport shuttles operating on a demand basis. It is the canonical type and supersedes the older Taxi type — use TaxiService for new implementations.
The key inherited Service properties do the heavy lifting:
provider(Organization or Person): the taxi company or operator.providerMobility(Text):"dynamic"for mobile services like taxis (indicates the provider moves to the customer).areaServed(GeoShape, AdministrativeArea, or Place): the service area.hoursAvailable(OpeningHoursSpecification): when the service operates.offers(Offer): fare structures, base fare, minimum fare, cancellation fee.potentialAction: a ReserveAction for app or phone booking.
Full example of schema.org/TaxiService 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": "TaxiService",
"@id": "https://dunmoretaxi.example/#service",
"name": "Dunmore Taxi Co-op",
"url": "https://dunmoretaxi.example",
"description": "Worker-owned taxi cooperative serving Lackawanna County. Standard cars, wheelchair-accessible vans, 24/7 service by app or phone.",
"provider": { "@type": "Organization", "name": "Dunmore Taxi Co-op, LLC", "telephone": "+1-570-555-8294" },
"providerMobility": "dynamic",
"areaServed": { "@type": "AdministrativeArea", "name": "Lackawanna County, Pennsylvania" },
"hoursAvailable": { "@type": "OpeningHoursSpecification", "dayOfWeek": ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"], "opens": "00:00", "closes": "23:59" },
"offers": {
"@type": "Offer",
"priceSpecification": {
"@type": "CompoundPriceSpecification",
"price": "varies",
"priceCurrency": "USD",
"priceComponent": [
{ "@type": "UnitPriceSpecification", "priceComponentType": "https://schema.org/BasePrice", "price": 3.50, "priceCurrency": "USD", "description": "Flag drop" },
{ "@type": "UnitPriceSpecification", "price": 2.80, "priceCurrency": "USD", "unitCode": "SMI", "description": "Per mile" },
{ "@type": "UnitPriceSpecification", "price": 0.35, "priceCurrency": "USD", "unitCode": "MIN", "description": "Per waiting minute" }
]
}
},
"hasOfferCatalog": {
"@type": "OfferCatalog",
"name": "Vehicle classes",
"itemListElement": [
{ "@type": "Offer", "itemOffered": { "@type": "Service", "name": "Standard sedan (up to 4 passengers)" } },
{ "@type": "Offer", "itemOffered": { "@type": "Service", "name": "Wheelchair-accessible van (ramp + tie-downs)" } },
{ "@type": "Offer", "itemOffered": { "@type": "Service", "name": "Airport shuttle (Scranton / Wilkes-Barre International)" } }
]
},
"potentialAction": {
"@type": "ReserveAction",
"name": "Book a ride",
"target": {
"@type": "EntryPoint",
"urlTemplate": "https://dunmoretaxi.example/book",
"actionPlatform": ["https://schema.org/DesktopWebPlatform", "https://schema.org/MobileWebPlatform", "https://schema.org/IOSPlatform", "https://schema.org/AndroidPlatform"]
},
"result": { "@type": "TaxiReservation", "name": "Taxi booking" }
}
}
</script>Fleet vehicles and fare structure
List fares as typed Offer entries or via a CompoundPriceSpecification for the base-fare + per-mile + per-minute breakdown. For wheelchair-accessible or luxury vehicles, model the fleet via hasOfferCatalog entries describing each vehicle class.
Minimal valid version
The smallest markup that still produces a valid TaxiService 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": "TaxiService",
"name": "Dunmore Taxi Co-op",
"provider": { "@type": "Organization", "name": "Dunmore Taxi Co-op, LLC" },
"areaServed": { "@type": "AdministrativeArea", "name": "Lackawanna County, Pennsylvania" }
}
</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 business / service listing; booking actionsprimary
Common TaxiService 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
Using Taxi for new implementations
Wrong"@type": "Taxi"Right"@type": "TaxiService"Schema.org supersedes Taxi with TaxiService. Older content can stay; new content should use TaxiService.
- 02
providerMobility omitted
WrongTaxiService with no providerMobilityRight"providerMobility": "dynamic"'dynamic' tells knowledge-graph consumers the provider moves to the customer, which matters for discovery vs a fixed-location service.
- 03
areaServed as free text
Wrong"areaServed": "Scranton area"RightTyped AdministrativeArea, GeoShape, or Place nodeStructured area is what powers taxi-availability mapping; free text is parsed loosely and rarely matched.
- 04
Single price with no breakdown
Wrong"price": "15.00" for a taxi rideRightCompoundPriceSpecification with flag-drop + per-mile + per-minute componentsTaxi fares are compound; publishing the components lets estimators compute accurate quotes.
Schema properties in this example
Also mentioned in 2 other examples
TaxiService also appears in GeoShape, and Taxi. See the full TaxiService schema page for every reference.
About the example data
Dunmore Taxi Co-op, a fictional worker-owned taxi fleet serving Lackawanna County with wheelchair-accessible and standard vehicles.
Comments
Loading comments...