72%

des résultats en première page Google utilisent le schema markup — contre moins de 30 % de l'ensemble des sites web. Les sites de voyage avec schema.org obtiennent un CTR organique supérieur de 35 %. (Source : Sixth City Marketing, 2026)

Le schema.org Hotel est un vocabulaire de données structurées que vous intégrez dans votre site pour décrire votre établissement en langage machine. Concrètement, c'est un bloc JSON-LD que vous placez dans le <head> ou le <body> de vos pages.

Les moteurs de recherche s'en servent pour afficher des rich snippets. Les assistants IA — ChatGPT, Perplexity, Gemini — s'en servent pour comprendre votre hôtel, le comparer à d'autres, et vous recommander dans des recherches conversationnelles précises.

Les propriétés essentielles du schema Hotel

Le type Hotel hérite de LodgingBusiness, lui-même héritant de LocalBusiness. Voici les propriétés à implémenter en priorité :

Propriétés d'identification (obligatoires)

  • @type : Hotel (ou LodgingBusiness pour un type plus générique)
  • name : nom exact de l'établissement
  • url : URL canonique du site
  • address : objet PostalAddress complet (rue, ville, code postal, pays)
  • telephone : numéro de téléphone de l'établissement (pas d'une centrale de réservation)
  • geo : coordonnées GPS précises (GeoCoordinates avec latitude et longitude)

Propriétés de qualité (très importantes pour les IA)

  • starRating : classification officielle (objet Rating avec ratingValue)
  • aggregateRating : note moyenne avec nombre d'avis (ratingValue, reviewCount)
  • priceRange : fourchette de prix (ex. "€€" ou "120-350€")
  • description : description précise et complète de l'établissement

Propriétés de services (décisives pour les recherches filtrées)

  • amenityFeature : liste des équipements (LocationFeatureSpecification) — piscine, spa, parking, wifi, restaurant, salle de sport...
  • checkinTime : heure d'arrivée (format ISO 8601, ex. 14:00)
  • checkoutTime : heure de départ (ex. 12:00)
  • petsAllowed : acceptation des animaux (true/false)
  • numberOfRooms : nombre de chambres total

Propriétés de réservation (critiques pour l'IA agentique)

  • potentialAction : action de réservation (ReserveAction) avec URL du moteur de réservation
  • hasMap : lien vers Google Maps

Exemple complet JSON-LD pour un hôtel

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Hotel",
  "@id": "https://www.votre-hotel.com/#hotel",
  "name": "Hôtel Le Grand Palais",
  "url": "https://www.votre-hotel.com",
  "description": "Hôtel 4 étoiles au cœur de Paris, à 200 m du Louvre. 85 chambres et suites, spa, restaurant gastronomique, parking souterrain.",
  "telephone": "+33-1-23-45-67-89",
  "address": {
    "@type": "PostalAddress",
    "streetAddress": "12 Rue de Rivoli",
    "addressLocality": "Paris",
    "postalCode": "75001",
    "addressCountry": "FR"
  },
  "geo": {
    "@type": "GeoCoordinates",
    "latitude": 48.8628,
    "longitude": 2.3326
  },
  "starRating": {
    "@type": "Rating",
    "ratingValue": "4"
  },
  "aggregateRating": {
    "@type": "AggregateRating",
    "ratingValue": "8.9",
    "reviewCount": "1247",
    "bestRating": "10",
    "worstRating": "1"
  },
  "priceRange": "€€€",
  "checkinTime": "15:00",
  "checkoutTime": "12:00",
  "petsAllowed": false,
  "numberOfRooms": 85,
  "amenityFeature": [
    {
      "@type": "LocationFeatureSpecification",
      "name": "Spa & bien-être",
      "value": true
    },
    {
      "@type": "LocationFeatureSpecification",
      "name": "Restaurant gastronomique",
      "value": true
    },
    {
      "@type": "LocationFeatureSpecification",
      "name": "Parking souterrain",
      "value": true
    },
    {
      "@type": "LocationFeatureSpecification",
      "name": "Wi-Fi gratuit",
      "value": true
    },
    {
      "@type": "LocationFeatureSpecification",
      "name": "Climatisation",
      "value": true
    },
    {
      "@type": "LocationFeatureSpecification",
      "name": "Salle de sport",
      "value": true
    }
  ],
  "image": [
    "https://www.votre-hotel.com/img/facade.jpg",
    "https://www.votre-hotel.com/img/chambre-deluxe.jpg",
    "https://www.votre-hotel.com/img/spa.jpg"
  ],
  "potentialAction": {
    "@type": "ReserveAction",
    "target": {
      "@type": "EntryPoint",
      "urlTemplate": "https://www.votre-hotel.com/reservation/",
      "actionPlatform": [
        "https://schema.org/DesktopWebPlatform",
        "https://schema.org/MobileWebPlatform"
      ]
    },
    "result": {
      "@type": "LodgingReservation",
      "name": "Réservation Hôtel Le Grand Palais"
    }
  }
}
</script>

Les 8 erreurs fréquentes qui invalident votre schema

Une étude SEOClarity révèle que 27 % des implémentations de schema markup contiennent des erreurs de syntaxe, et que 43 % des rich results ne s'affichent pas à cause de propriétés obligatoires manquantes. Voici les pièges les plus courants :

  1. Erreur de syntaxe JSON : une virgule manquante ou un crochet non fermé invalide l'intégralité du bloc. Utilisez un validateur avant de déployer.
  2. Propriétés obligatoires absentes : sans name et address, le schema ne sera pas reconnu.
  3. Format de date incorrect : les heures doivent être en format ISO 8601 ("15:00", pas "3pm").
  4. Données dupliquées ou inexactes : une note de 4,5/5 dans le schema mais 8,9/10 sur la page visible génère un avertissement Google.
  5. Schema qui contredit le contenu visible : les données structurées doivent refléter ce que l'utilisateur voit sur la page.
  6. Types de schema obsolètes : utilisez le type Hotel (pas l'ancien Accommodation seul).
  7. Amenities trop vagues : "parking disponible" vs "LocationFeatureSpecification : Parking souterrain sécurisé". La précision est clé pour les recherches filtrées.
  8. Absence de potentialAction : à l'ère des agents IA capables de réserver directement, ne pas exposer votre URL de réservation est une occasion manquée.

Comment valider votre schema

Deux outils officiels pour vérifier votre implémentation :

  • Google Rich Results Test (search.google.com/test/rich-results) — l'outil officiel de Google. Saisissez votre URL ou collez votre code pour voir les erreurs et avertissements.
  • Schema.org Validator (validator.schema.org) — validation contre le standard officiel Schema.org.

Conseil : Validez votre schema avant chaque déploiement. Un bloc JSON-LD avec une seule erreur de syntaxe est ignoré en totalité — pas partiellement. Intégrez la validation dans votre processus de mise à jour du site.

Schema.org vs OTA : l'asymétrie que les hôtels ignorent

Booking.com et Expedia gèrent leurs données schema via des flux XML centralisés avec validation automatique. Leur implémentation est quasi-parfaite, mise à jour en temps réel, et entièrement ouverte aux robots IA.

Les hôtels indépendants, eux, s'appuient souvent sur leur CMS (WordPress, Drupal...) avec des extensions schema qui génèrent des données incomplètes — ou pas de schema du tout.

C'est là l'asymétrie fondamentale : les OTA parlent couramment le langage des IA. La plupart des hôtels indépendants ne le parlent pas. Implémenter un schema Hotel complet et validé est l'une des actions les plus impactantes pour réduire cet écart.

Vérifiez votre schema en 30 secondes

L'outil AIscore analyse votre schema, détecte les propriétés manquantes et vous donne un score de visibilité IA complet — gratuitement.

Scanner mon hôtel →
← Retour au blog   |   Read in English →