Schema markup is structured data that tells Google and AI engines exactly what a page is — a trip, a bookable tour, a set of answers. For tour operators, four types matter: TouristTrip for itineraries and sailings, Product with Offer and AggregateRating for bookable tours with price and reviews, FAQPage, and BreadcrumbList. Done right it earns rich results and citations. Done wrong it gets you a manual penalty.
Two tour pages can carry the exact same words and rank in the same spot, yet one pulls twice the clicks. The difference is what the search result looks like: a plain blue link and a grey line of text, versus a result with a star rating, a price, a breadcrumb trail and an FAQ dropdown. That richer result is not luck. It is structured data telling the engine precisely what the page is.
What structured data actually does
Schema markup is a small block of code — almost always JSON-LD — that labels your content in a vocabulary search engines understand. It does not change what the visitor sees on the page. It changes what the machine understands: this is a trip, this is its price, these are real reviews, this is the answer to that question.
Schema earns eligibility, not a guarantee. Valid markup is the price of entry, never a promise.
That understanding buys two things. First, eligibility for rich results — the stars, prices and breadcrumbs that make a listing bigger and more clickable. Second, and increasingly, the ability to be quoted. When an AI engine answers “best 4-day Nile cruise Luxor to Aswan,” clean structured data is part of how it decides what your page is and whether it can cite you with confidence.
TouristTrip: itineraries & sailings
Use TouristTrip for the journey itself — a Nile sailing, a multi-day Cairo-and-Luxor itinerary, a desert crossing. It is the type that describes a route, its stops, its duration and its departure. Populate name, description, itinerary (as an ordered list of places), touristType and the departure details. This is what lets an engine understand that your page is a specific journey, not a generic article about Egypt.
TouristTrip on its own does not usually produce visible stars or price. Its job is comprehension — giving the engine an unambiguous model of the trip — which is exactly what AI answers lean on. Pair it with the commercial markup below on any page a traveller can actually book.
Product, Offer & reviews
A bookable tour is, to Google, a product. Mark it up as Product with a nested Offer carrying price, priceCurrency and availability, and an AggregateRating built from genuine reviews. This is the combination that unlocks the star rating and price you see on the best-performing tour listings. Here is a compact, valid-looking shape for one departure:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Product",
"name": "4-Day Nile Cruise: Luxor to Aswan",
"image": "https://example.com/nile-cruise.jpg",
"description": "Guided 4-day Dahabiya sailing with an Egyptologist.",
"brand": { "@type": "Brand", "name": "Your Operator" },
"offers": {
"@type": "Offer",
"price": "640.00",
"priceCurrency": "USD",
"availability": "https://schema.org/InStock",
"url": "https://example.com/nile-cruise-4-day"
},
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.8",
"reviewCount": "212"
}
}
</script>
Every value in there must match what is on the page and be true. The price must be the price a visitor sees; the rating must come from reviews that actually exist and are shown. Miss a required field — a price with no currency, an offer with no availability — and Google simply drops the rich result without telling you.
FAQPage & BreadcrumbList
FAQPage marks up a genuine set of question-and-answer pairs on the page — “Is a Nile cruise worth it in August?”, “What is included?” It can win an expandable dropdown under your listing and, just as usefully, feeds the exact answers AI engines like to quote. The rule is strict: the questions and answers must be visibly present on the page for every visitor, not hidden and served only to the crawler.
BreadcrumbList marks up your navigation path — Home › Nile Cruises › 4-Day Luxor to Aswan — and replaces the raw URL in the result with a clean, clickable trail. It is small, low-risk, and one of the easiest wins to template across an entire destination architecture.
The mistakes that get you penalised
Structured data is one of the few SEO areas with a real downside. Get it wrong and you do not just miss the rich result — you can earn a manual action.
- Marking up invisible content. Schema must describe what is on the page. FAQs or reviews that exist only in the code, never shown to the user, are a spam signal.
- Fake or borrowed reviews. AggregateRating stitched from invented numbers, or ratings for the whole company slapped onto a single tour, is the fastest route to a penalty.
- Missing required fields. An Offer with no price, a Product with no name — incomplete markup is silently ignored, so you think it is working when it is not.
- Set-and-forget. Prices change, tours sell out, reviews accumulate. Stale schema that contradicts the live page is worse than none.
The figure below shows the whole payoff in one picture — the same page, same rank, before and after clean markup.
Structured data is not where a ranking is won — that is architecture and authority. But once you rank, it decides how much of the click you capture, and increasingly whether an AI answer can quote you at all. For a tour operator it is one of the highest-return technical jobs on the site, provided every value you mark up is visible, complete and true.
Our free audit covers search visibility, AI-answer presence, booking flow and what your OTA channel is costing you. Written, and yours whether you hire us or not.