@BoatTripLocal Business4 min readUpdated 2026-10-03

Passenger Ferry & Island Water Transit Route Schema Markup (JSON-LD)

Structured data for scheduled passenger ferry routes, island water taxis, and vehicle car ferries, encoding departure/arrival marine terminals, sailing durations, vehicle deck fees, and ticketing offers.

Target Queries:ferry route schemawater transit structured datapassenger ferry json-ldboat trip schema.orgisland ferry schedule rich snippet
Advertisement
AdSense Placeholder: Top Leaderboard Ad (728x90 / 320x50)

Displayed below main page header or above the tool container. • Zero CLS Container

Production JSON-LD Code Block

Embed this structured data block directly into your HTML <head> or framework layout template.

Ferry & Water Transit Blueprint Payload
Test in Validator →
application/ld+json (BoatTrip)
Test in Validator
{
  "@context": "https://schema.org",
  "@type": "BoatTrip",
  "@id": "https://example.com/ferry/seattle-bainbridge-route#trip",
  "name": "Seattle to Bainbridge Island Scheduled Passenger & Vehicle Ferry",
  "description": "Scenic 35-minute cross-sound public ferry transit service carrying walk-on foot passengers, bicycles, and motor vehicles with departures every 50 minutes.",
  "departureBoatTerminal": {
    "@type": "BoatTerminal",
    "name": "Colman Dock / Seattle Ferry Terminal (Pier 52)",
    "address": {
      "@type": "PostalAddress",
      "streetAddress": "801 Alaskan Way",
      "addressLocality": "Seattle",
      "addressRegion": "WA",
      "postalCode": "98104",
      "addressCountry": "US"
    }
  },
  "arrivalBoatTerminal": {
    "@type": "BoatTerminal",
    "name": "Bainbridge Island Ferry Terminal",
    "address": {
      "@type": "PostalAddress",
      "streetAddress": "Olympic Drive SE",
      "addressLocality": "Bainbridge Island",
      "addressRegion": "WA",
      "postalCode": "98110",
      "addressCountry": "US"
    }
  },
  "provider": {
    "@type": "Organization",
    "name": "Washington State Ferries",
    "telephone": "+1-206-555-0190"
  },
  "offers": {
    "@type": "Offer",
    "price": "9.85",
    "priceCurrency": "USD",
    "description": "Standard adult walk-on passenger one-way fare."
  }
}
100% Schema.org & Google Rich Results Compliant (2026)Ready for <script type="application/ld+json">

Typed Properties Specification (6 Fields)

Key Schema.org properties and sub-objects required to qualify for rich snippet treatment in Google Search.

PropertyExpected TypeStatusDescription & Example
nameTextRequired

Official sailing route title connecting departure and arrival terminals.

e.g. Seattle to Bainbridge Island Scheduled Passenger & Vehicle Ferry
departureBoatTerminalBoatTerminalRequired

Originating marine ferry terminal name and physical street address.

e.g. { "@type": "BoatTerminal", "name": "Colman Dock / Seattle Ferry Terminal..." }
arrivalBoatTerminalBoatTerminalRequired

Destination island or mainland ferry terminal and address.

e.g. { "@type": "BoatTerminal", "name": "Bainbridge Island Ferry Terminal..." }
providerOrganizationRequired

Operating maritime transit authority or private ferry company.

e.g. { "@type": "Organization", "name": "Washington State Ferries" }
offersOfferRequired

Walk-on passenger or vehicle ticket fare, currency, and concession terms.

e.g. { "@type": "Offer", "price": "9.85", "priceCurrency": "USD" }
descriptionTextRecommended

Crossing duration, departure frequency, vehicle deck restrictions, and accessibility.

e.g. Scenic 35-minute cross-sound public ferry transit service...

Google Search Console Pitfalls & Critical Warnings

Avoid these 3 common validation traps, parser errors, and algorithmic policy penalties when deploying BoatTrip schema.

errorPitfall #1

Missing Explicit Departure & Arrival BoatTerminal Nodes

Using plain string names for ferry docks without BoatTerminal structured nodes prevents Google Maps transit route integration.

GSC Impact:
Failure to integrate into Google Maps public transit route options.
Actionable Fix:

Encapsulate terminals inside typed BoatTerminal objects with postal addresses.

warningPitfall #2

Confusing Passenger Foot Fares with Vehicle Deck Fares

Failing to clarify whether ticket price is per-person or per-vehicle causes passenger fare disputes.

GSC Impact:
User drop-off during transit ticketing onboarding.
Actionable Fix:

Specify 'walk-on passenger fare' vs 'standard vehicle fare' in offer description.

warningPitfall #3

Omission of Crossing Travel Time Duration

Failing to provide crossing duration in description hurts travel planning SERP utility.

GSC Impact:
Lower snippet engagement on travel itinerary queries.
Actionable Fix:

State transit duration (e.g., '35 minutes') in description.

Recommended Implementation Scenarios

Public maritime transit schedule and route portals
Island tourist ferry ticketing pages
Commuter water taxi booking websites

Related Schema Blueprints

Explore complementary structured data blueprints across the Local Business cluster.

Advertisement
AdSense Placeholder: Top Leaderboard Ad (728x90 / 320x50)

Displayed below main page header or above the tool container. • Zero CLS Container