Blog
Wild & Free Tools

Schema Markup for Hotels, Resorts, and Travel Businesses

Last updated: April 2026 8 min read

Table of Contents

  1. Right schema type
  2. Required and recommended fields
  3. Pricing schema
  4. Amenities deep dive
  5. For vacation rentals
  6. Frequently Asked Questions

Hotels, resorts, vacation rentals, and travel businesses have specialized schema types Google uses for the travel vertical. Generic LocalBusiness works as a fallback, but Hotel, LodgingBusiness, and Resort schema unlock travel-specific rich results — including the all-important rate display, amenities, and star rating that travelers compare across booking sites. This guide covers the right schema setup for accommodation businesses.

Picking the Right Travel Schema Type

Schema.org has several specific types that inherit from LodgingBusiness:

Always use the most specific type. Resort gets different rich results than Hotel; VacationRental signals different intent than BedAndBreakfast. The specific subtypes inherit all LodgingBusiness fields plus their own.

Required and Recommended Hotel Fields

The Hotel/LodgingBusiness type requires standard local business fields (name, address, image) plus accommodation-specific ones. The full set Google uses:

The amenityFeature array is particularly important. Each amenity is its own object with a name and "value: true". Google reads this for filter-based travel searches ("hotels with pool in Austin").

Sell Custom Apparel — We Handle Printing & Free Shipping

Pricing Information for Hotel Schema

Google's travel rich results show rates from connected booking systems (mostly Google Hotel Ads and Hotel Center). Schema markup alone doesn't put your rates in those rich results — you need the connected booking data.

What schema CAN do for pricing:

For independent hotels not connected to Hotel Ads, the priceRange field is the most useful. For connected hotels, focus on getting Hotel Center set up correctly — schema is supplementary.

Amenities: The Field Most Hotels Skip

Most hotel sites either omit amenityFeature entirely or list amenities as plain text. Both approaches lose the structured data benefit. The right way:

"amenityFeature": [
  {
    "@type": "LocationFeatureSpecification",
    "name": "Free WiFi",
    "value": true
  },
  {
    "@type": "LocationFeatureSpecification",
    "name": "Outdoor Pool",
    "value": true
  },
  {
    "@type": "LocationFeatureSpecification",
    "name": "Pet Friendly",
    "value": true
  },
  {
    "@type": "LocationFeatureSpecification",
    "name": "On-site Restaurant",
    "value": true
  }
]

Each amenity is its own object Google can parse, filter on, and display. This is what makes your hotel show up in searches like "hotels in Miami with pool and pet friendly."

List every amenity that's actually present. Don't fake or exaggerate — guest review pressure will eventually catch it and tank your aggregateRating.

Vacation Rentals (Airbnb-Style)

Vacation rentals use the VacationRental subtype, which inherits from LodgingBusiness but has fields specific to short-term rentals:

For property listing sites with multiple rentals, each rental gets its own page with VacationRental schema. The schema goes on the individual property page, not the search/listing page.

For single-property vacation rental sites (you rent out one beach house), use VacationRental on the homepage with all the fields populated.

Try It Free — No Signup Required

Runs 100% in your browser. No data is collected, stored, or sent anywhere.

Open Free Schema Markup Generator

Frequently Asked Questions

Should I use Hotel or LodgingBusiness schema?

Hotel for traditional hotels. Use the more specific subtype that fits — Resort for resorts, BedAndBreakfast for B&Bs, VacationRental for vacation home rentals. LodgingBusiness is the generic fallback only when none of the specific subtypes fit.

Will hotel schema get me into Google's travel rich results?

Schema alone won't — Google's travel rich results pull rates from Hotel Center and Hotel Ads connections. Schema markup makes your hotel discoverable and well-described, which helps with organic search and AI travel assistants, but Hotel Ads is the path to rate display.

How do I mark up amenities correctly?

Use the amenityFeature array with LocationFeatureSpecification objects. Each amenity has a name (like "Free WiFi") and a value (usually true). Don't list amenities as plain text in description — use the structured field so Google can filter on them.

Can multiple room types be in one Hotel schema?

Yes, using the makesOffer field with an array of Offer objects, one per room type. Each Offer can have its own name (Standard, Deluxe, Suite), price, and description. Useful for hotels with distinct room categories.

What about Airbnb listings — do they need schema?

If you have your own vacation rental site (not just listing on Airbnb), yes. Use VacationRental schema on each property page. Sites that depend entirely on Airbnb don't need their own schema since Airbnb handles the search visibility.

Should I include star ratings if my hotel is unrated?

No. Don't fake star ratings. If your hotel has no official star rating, omit the field. Google will fall back to aggregateRating from guest reviews, which is more important anyway.

Launch Your Own Clothing Brand — No Inventory, No Risk