Schema Markup 24. April 2026

LodgingBusiness Schema Markup vertieft: Hotel, Resort und HotelRoom für Google optimieren

Das LodgingBusiness Schema bietet weit mehr als Basisinformationen. Checkin/Checkout-Zeiten, HotelRoom-Objekte, amenityFeature und Resort-spezifische Properties helfen Suchmaschinen, dein Unterkunftsangebot vollständig zu verstehen.

L
Laurenz Thümmler
Shift07 · Thümmler AI GmbH
LodgingBusiness Hotel Schema Markup vertieft für Google

Inhaltsverzeichnis

  1. LodgingBusiness-Typen und Schema-Hierarchie
  2. checkinTime und checkoutTime korrekt einbinden
  3. HotelRoom: Zimmertypen strukturiert beschreiben
  4. amenityFeature und LocationFeatureSpecification
  5. Resort: Spezifische Properties und Besonderheiten
  6. Vollständiges JSON-LD-Beispiel: Luxushotel
  7. Häufige Fehler und wie du sie vermeidest
  8. Testen und in Google Search Console überwachen

In unserem Grundlagenartikel zu Accommodation Schema Markup haben wir Hotel, Hostel und Pension als @type vorgestellt. In dieser Vertiefung gehen wir tiefer: Wie beschreibst du einzelne Zimmertypen mit HotelRoom? Wie bindest du Checkin-Zeiten korrekt ein? Und welche amenityFeature-Properties erscheinen wirklich in den Google-Suchergebnissen?

1. LodgingBusiness-Typen und Schema-Hierarchie

LodgingBusiness ist ein Subtyp von LocalBusiness (→ Organization → Thing) und dient als Basis für alle Beherbergungsbetriebe. Google kennt mehrere Spezialisierungen:

// LodgingBusiness-Hierarchie
LodgingBusiness
├── Hotel
├── Motel
├── BedAndBreakfast
├── Hostel
├── Resort
├── CampingPitch
└── Campground

Wähle immer den spezifischsten Typ — ein 5-Sterne-Resort schreibst du als @type: Resort, nicht nur als Hotel. Du kannst auch Arrays verwenden, um mehrere Typen zu kombinieren:

{
  "@context": "https://schema.org",
  "@type": ["Hotel", "Resort"],
  "name": "Grand Spa & Resort Bad Reichenhall"
}

Diese Kombination signalisiert Google: Das Haus hat die Eigenschaften eines Hotels (Zimmer, Rezeption) und eines Resorts (weitläufige Anlage, Spa, Freizeit-Infrastruktur).

Wichtig:

Alle LodgingBusiness-Untertypen erben die Properties von LocalBusiness — also name, address, telephone, openingHoursSpecification usw. Du musst diese Properties nicht doppelt definieren, kannst sie aber auf der Unterkunfts-Seite ergänzen.

2. checkinTime und checkoutTime korrekt einbinden

Diese beiden Properties sind exklusiv für LodgingBusiness — kein anderer LocalBusiness-Typ kennt sie. Google nutzt diese Daten direkt in den Hotel-Rich-Results und zeigt sie neben dem Buchungsmodul an.

{
  "@type": "Hotel",
  "name": "Stadthotel Erfurt",
  "checkinTime": "15:00",
  "checkoutTime": "11:00"
}

Das Format ist einfach: HH:MM im 24-Stunden-Format, ohne Sekunden. Wenn Check-in flexibel ist (z. B. ab 12:00 bis 22:00), nutze den frühesten möglichen Zeitpunkt:

{
  "@type": "Hotel",
  "checkinTime": "12:00",
  "checkoutTime": "12:00"
}

Manche Hotels bieten Early-Check-in und Late-Check-out gegen Aufpreis. Diese Information lässt sich nicht direkt im Schema kodieren — du kannst sie jedoch in der description oder über ein FAQPage Schema auf der Detailseite ergänzen.

Kombiniert mit OpeningHours

Check-in-Zeiten und Rezeptionsöffnungszeiten sind zwei verschiedene Dinge. Die Rezeption kann rund um die Uhr geöffnet sein (openingHoursSpecification), während der Check-in erst ab 15:00 möglich ist. Beides im gleichen Schema-Block:

{
  "@type": "Hotel",
  "name": "Boutique Hotel Weimar",
  "checkinTime": "15:00",
  "checkoutTime": "11:00",
  "openingHoursSpecification": [
    {
      "@type": "OpeningHoursSpecification",
      "dayOfWeek": [
        "Monday","Tuesday","Wednesday",
        "Thursday","Friday","Saturday","Sunday"
      ],
      "opens": "00:00",
      "closes": "23:59"
    }
  ]
}

Mehr zur OpeningHoursSpecification findest du in unserem detaillierten Artikel dazu.

3. HotelRoom: Zimmertypen strukturiert beschreiben

HotelRoom ist ein Subtyp von Accommodation und ermöglicht es, einzelne Zimmertypen mit ihren Eigenschaften zu beschreiben. Google kann diese Daten nutzen, um bei Hotel-Suchanfragen Zimmerkategorien anzuzeigen.

Du bindest HotelRoom-Objekte über die Property containsPlace in dein Hotel-Schema ein:

{
  "@context": "https://schema.org",
  "@type": "Hotel",
  "name": "Hotel Residenz München",
  "containsPlace": [
    {
      "@type": "HotelRoom",
      "name": "Standard-Einzelzimmer",
      "description": "Gemütliches Einzelzimmer mit Stadtblick, Flat-TV und kostenlosem WLAN.",
      "bed": {
        "@type": "BedDetails",
        "typeOfBed": "SingleBed",
        "numberOfBeds": 1
      },
      "occupancy": {
        "@type": "QuantitativeValue",
        "minValue": 1,
        "maxValue": 1
      },
      "floorLevel": "2-5",
      "amenityFeature": [
        {
          "@type": "LocationFeatureSpecification",
          "name": "Klimaanlage",
          "value": true
        },
        {
          "@type": "LocationFeatureSpecification",
          "name": "Kostenfreies WLAN",
          "value": true
        }
      ]
    },
    {
      "@type": "HotelRoom",
      "name": "Deluxe-Doppelzimmer",
      "description": "Großzügiges Doppelzimmer mit Parkettboden, Badewanne und Minibar.",
      "bed": [
        {
          "@type": "BedDetails",
          "typeOfBed": "DoubleBed",
          "numberOfBeds": 1
        }
      ],
      "occupancy": {
        "@type": "QuantitativeValue",
        "minValue": 1,
        "maxValue": 2
      },
      "amenityFeature": [
        {
          "@type": "LocationFeatureSpecification",
          "name": "Minibar",
          "value": true
        },
        {
          "@type": "LocationFeatureSpecification",
          "name": "Badewanne",
          "value": true
        },
        {
          "@type": "LocationFeatureSpecification",
          "name": "Klimaanlage",
          "value": true
        }
      ]
    }
  ]
}

BedDetails: Betttypen korrekt angeben

Das Schema.org-Vokabular kennt folgende Betttypen für typeOfBed:

typeOfBed-Wert Deutsch
SingleBed Einzelbett
DoubleBed Doppelbett (für 2 Personen)
TwinBed Zwei getrennte Einzelbetten
KingBed Kingsize-Bett
QueenBed Queensize-Bett
SofaBed Schlafsofa
CoachBed Liege/Ausklappbett
BunkBed Stockbett/Etagenbett

4. amenityFeature und LocationFeatureSpecification

amenityFeature ist die wichtigste Property für Hotelausstattungsmerkmale. Sie akzeptiert LocationFeatureSpecification-Objekte — ein Subtyp von PropertyValue. Der strukturierte Ansatz ist wertvoller als ein Freitext, da Google die Werte maschinell auswerten kann.

{
  "@type": "Hotel",
  "name": "Wellness Hotel Schwarzwald",
  "amenityFeature": [
    {
      "@type": "LocationFeatureSpecification",
      "name": "Schwimmbad",
      "value": true
    },
    {
      "@type": "LocationFeatureSpecification",
      "name": "Sauna",
      "value": true
    },
    {
      "@type": "LocationFeatureSpecification",
      "name": "Haustiere erlaubt",
      "value": false
    },
    {
      "@type": "LocationFeatureSpecification",
      "name": "Parkplatz",
      "value": true
    },
    {
      "@type": "LocationFeatureSpecification",
      "name": "Kostenfreies WLAN",
      "value": true
    },
    {
      "@type": "LocationFeatureSpecification",
      "name": "Restaurant",
      "value": true
    },
    {
      "@type": "LocationFeatureSpecification",
      "name": "Bar",
      "value": true
    },
    {
      "@type": "LocationFeatureSpecification",
      "name": "Barrierefreiheit",
      "value": true
    }
  ]
}

Der value-Wert ist in der Regel true (Feature vorhanden) oder false (nicht vorhanden). Du kannst auch Textwerte verwenden, wenn das Feature eine Spezifikation hat:

{
  "@type": "LocationFeatureSpecification",
  "name": "Parkplatz",
  "value": "kostenlos, 50 Plätze"
},
{
  "@type": "LocationFeatureSpecification",
  "name": "Frühstück",
  "value": "inklusive, 07:00–10:30 Uhr"
}
Tipp:

Nutze amenityFeature sowohl auf der Hotel-Ebene (Gemeinschaftseinrichtungen) als auch auf der HotelRoom-Ebene (Zimmerausstattung). Google unterscheidet zwischen beiden Ebenen.

5. Resort: Spezifische Properties und Besonderheiten

Ein Resort unterscheidet sich von einem einfachen Hotel durch seine weitläufige Anlage und das integrierte Freizeit- und Wellness-Angebot. Schema.org hat dafür den Typ Resort, der alle Hotel-Properties erbt, aber speziell für Anlagen mit eigenem Sportangebot, Spa, Golfplatz oder Strand konzipiert ist.

Zusätzliche Properties, die für Resorts besonders relevant sind:

Property Verwendung beim Resort
amenityFeature Golfplatz, Tennisplatz, Reiten, Spa, Beachbar
containsPlace HotelRoom + SportsActivityLocation + Restaurant
geo GeoCoordinates für exakte Lage (wichtig bei Resort-Anlagen)
hasMap Link zu Lageplan der Resort-Anlage
numberOfRooms Gesamtzahl Zimmer/Bungalows
petsAllowed Boolean — Haustiere erlaubt?
starRating Offizielle DEHOGA-Klassifizierung (1-5 Sterne)

Ein Resort kann außerdem mit einem SportsActivityLocation Schema kombiniert werden, wenn der Sportbereich ein eigenständiges Angebot hat.

6. Vollständiges JSON-LD-Beispiel: Luxushotel mit Spa

Hier ist ein praxisnahes, vollständiges Beispiel für ein 4-Sterne-Stadthotel mit Spa-Bereich und drei Zimmertypen:

{
  "@context": "https://schema.org",
  "@type": "Hotel",
  "name": "Hotel Vier Jahreszeiten Potsdam",
  "description": "4-Sterne-Hotel in zentraler Lage Potsdams mit Spa, Rooftop-Bar und hauseigenem Restaurant.",
  "url": "https://www.hotel-vier-jahreszeiten-potsdam.de",
  "telephone": "+49 331 9876543",
  "email": "info@hotel-vier-jahreszeiten-potsdam.de",
  "checkinTime": "15:00",
  "checkoutTime": "11:00",
  "numberOfRooms": 84,
  "petsAllowed": false,
  "starRating": {
    "@type": "Rating",
    "ratingValue": "4",
    "bestRating": "5",
    "worstRating": "1"
  },
  "aggregateRating": {
    "@type": "AggregateRating",
    "ratingValue": "4.6",
    "reviewCount": 312,
    "bestRating": "5",
    "worstRating": "1"
  },
  "address": {
    "@type": "PostalAddress",
    "streetAddress": "Brandenburger Straße 55",
    "addressLocality": "Potsdam",
    "postalCode": "14467",
    "addressRegion": "Brandenburg",
    "addressCountry": "DE"
  },
  "geo": {
    "@type": "GeoCoordinates",
    "latitude": 52.3952,
    "longitude": 13.0598
  },
  "image": [
    "https://www.hotel-vier-jahreszeiten-potsdam.de/images/exterior.jpg",
    "https://www.hotel-vier-jahreszeiten-potsdam.de/images/lobby.jpg",
    "https://www.hotel-vier-jahreszeiten-potsdam.de/images/spa.jpg"
  ],
  "openingHoursSpecification": [
    {
      "@type": "OpeningHoursSpecification",
      "dayOfWeek": [
        "Monday","Tuesday","Wednesday",
        "Thursday","Friday","Saturday","Sunday"
      ],
      "opens": "00:00",
      "closes": "23:59"
    }
  ],
  "amenityFeature": [
    {"@type": "LocationFeatureSpecification", "name": "Spa & Wellness", "value": true},
    {"@type": "LocationFeatureSpecification", "name": "Kostenfreies WLAN", "value": true},
    {"@type": "LocationFeatureSpecification", "name": "Restaurant", "value": true},
    {"@type": "LocationFeatureSpecification", "name": "Rooftop-Bar", "value": true},
    {"@type": "LocationFeatureSpecification", "name": "Fitness-Center", "value": true},
    {"@type": "LocationFeatureSpecification", "name": "Parkplatz", "value": "kostenpflichtig, Tiefgarage"},
    {"@type": "LocationFeatureSpecification", "name": "E-Ladestation", "value": true},
    {"@type": "LocationFeatureSpecification", "name": "Barrierefreiheit", "value": true},
    {"@type": "LocationFeatureSpecification", "name": "24h-Rezeption", "value": true},
    {"@type": "LocationFeatureSpecification", "name": "Concierge", "value": true}
  ],
  "containsPlace": [
    {
      "@type": "HotelRoom",
      "name": "Classic-Zimmer",
      "description": "Komfortables Zimmer (22–25 m²) mit Stadtblick und Regendusche.",
      "bed": {
        "@type": "BedDetails",
        "typeOfBed": "DoubleBed",
        "numberOfBeds": 1
      },
      "occupancy": {
        "@type": "QuantitativeValue",
        "minValue": 1,
        "maxValue": 2
      },
      "amenityFeature": [
        {"@type": "LocationFeatureSpecification", "name": "Klimaanlage", "value": true},
        {"@type": "LocationFeatureSpecification", "name": "Smart-TV", "value": true},
        {"@type": "LocationFeatureSpecification", "name": "Schreibtisch", "value": true},
        {"@type": "LocationFeatureSpecification", "name": "Safe", "value": true}
      ]
    },
    {
      "@type": "HotelRoom",
      "name": "Superior-Zimmer mit Parkblick",
      "description": "Geräumiges Zimmer (28–32 m²) mit direktem Blick auf den Stadtpark.",
      "bed": {
        "@type": "BedDetails",
        "typeOfBed": "KingBed",
        "numberOfBeds": 1
      },
      "occupancy": {
        "@type": "QuantitativeValue",
        "minValue": 1,
        "maxValue": 2
      },
      "amenityFeature": [
        {"@type": "LocationFeatureSpecification", "name": "Klimaanlage", "value": true},
        {"@type": "LocationFeatureSpecification", "name": "Smart-TV", "value": true},
        {"@type": "LocationFeatureSpecification", "name": "Minibar", "value": true},
        {"@type": "LocationFeatureSpecification", "name": "Bademantel & Hausschuhe", "value": true}
      ]
    },
    {
      "@type": "HotelRoom",
      "name": "Junior-Suite",
      "description": "Großzügige Suite (45 m²) mit getrenntem Wohnbereich und freistehender Badewanne.",
      "bed": {
        "@type": "BedDetails",
        "typeOfBed": "KingBed",
        "numberOfBeds": 1
      },
      "occupancy": {
        "@type": "QuantitativeValue",
        "minValue": 1,
        "maxValue": 3
      },
      "amenityFeature": [
        {"@type": "LocationFeatureSpecification", "name": "Freistehende Badewanne", "value": true},
        {"@type": "LocationFeatureSpecification", "name": "Spa-Zuggang inklusive", "value": true},
        {"@type": "LocationFeatureSpecification", "name": "Nespresso-Maschine", "value": true},
        {"@type": "LocationFeatureSpecification", "name": "Butler-Service", "value": true}
      ]
    }
  ]
}

7. Häufige Fehler und wie du sie vermeidest

Fehler 1: starRating mit aggregateRating verwechseln

starRating = offizielle Klassifizierung (DEHOGA, HotelStars Union) — vergibt eine externe Institution.
aggregateRating = Durchschnitt aller Kundenbewertungen — kommt aus Gästefeedback.
Beide können und sollen gleichzeitig vorhanden sein, aber niemals vermischen.

Fehler 2: checkinTime als ISO 8601 DateTime

Falsch: "checkinTime": "2026-04-24T15:00:00"
Richtig: "checkinTime": "15:00"
Das Feld erwartet eine einfache Zeit-Zeichenkette, keine vollständige DateTime.

Fehler 3: amenityFeature als einfacher String

Falsch: "amenityFeature": "WLAN, Pool, Restaurant"
Richtig: Array von LocationFeatureSpecification-Objekten.
Google kann einfache Strings nicht maschinell auswerten.

Fehler 4: HotelRoom ohne containsPlace

HotelRoom-Objekte müssen über containsPlace mit dem Hotel verknüpft sein. Ein isoliertes HotelRoom-Schema auf einer separaten Zimmerseite ohne Eltern-Hotel-Referenz verliert den Kontext.

8. Testen und in Google Search Console überwachen

Bevor du das Schema live schaltest, teste es mit dem JSON-LD Structured Data Validator. Das Tool zeigt Fehler und Warnungen direkt an.

Nach dem Go-Live überwachst du dein Hotel-Schema in der Google Search Console unter Suchergebnisse → Hotelliste. Google zeigt dort:

Checkliste: LodgingBusiness Schema Markup

  • Spezifischster @type gewählt (Hotel, Resort, BedAndBreakfast...)
  • checkinTime und checkoutTime als HH:MM formatiert
  • amenityFeature als Array von LocationFeatureSpecification
  • HotelRoom-Objekte über containsPlace verknüpft
  • starRating und aggregateRating klar getrennt
  • geo-Koordinaten für präzise Kartendarstellung
  • Mindestens 3 image-URLs in der richtigen Auflösung
  • Validierung mit JSON-LD Validator durchgeführt

Hotel-Website kostenlos analysieren

Unser kostenloser SEO-Checker erkennt, ob dein LodgingBusiness Schema korrekt implementiert ist und welche Properties fehlen.

Jetzt kostenlos prüfen →