Contexte
Le Belvédère est un hôtel indépendant de 24 chambres à Annecy, géré par Thomas Favre depuis 11 ans. L'établissement a une excellente réputation (4,6/5 Google, 8,7/10 Booking) et un taux d'occupation solide à 74%. Le problème n'est pas le remplissage : c'est le prix moyen. Thomas ajuste ses tarifs manuellement une à deux fois par semaine — insuffisant face aux hôtels de chaîne qui actualisent leurs prix toutes les heures en fonction des événements, de la météo et de la demande en temps réel.
Sur une analyse de 14 mois, un outil de revenue management externe avait estimé que Le Belvédère laissait 22% de RevPAR sur la table : trop bas les week-ends événements (Marathon du Mont-Blanc, Festival d'animation) et trop élevé en basse saison quand il restait des chambres vides à J-3. À 130 € de tarif moyen et 24 chambres, chaque nuit mal tarifée coûte 200 à 800 €.
Chambres : 24 (RevPAR moyen avant agent : 96 €) Fréquence d'ajustement tarifs (avant agent) : 1 à 2 fois/semaine Perte RevPAR estimée par tarification statique : 22%
Agent déployé
L'agent tourne toutes les 4 heures. Il scrape les tarifs de 8 concurrents directs identifiés (via Playwright headless sur leurs pages Booking), interroge Open-Meteo pour les prévisions météo 10 jours, et consulte les APIs Eventbrite et Ticketmaster pour détecter les événements locaux générateurs de demande (concerts, compétitions sportives, festivals).
Il croise ces 3 sources avec le taux d'occupation actuel par type de chambre et les données historiques de la même période les années précédentes. Sur la base de ce modèle, il calcule le prix optimal pour chaque type de chambre sur les 14 prochains jours et pousse les ajustements via l'API du channel manager (SiteMinder ou Cloudbeds) — qui propage automatiquement vers Booking.com, Expedia et le moteur de réservation du site.
Des guardrails sont définis dès le départ avec Thomas : prix plancher par type de chambre (jamais en dessous), prix plafond, amplitude maximale d'ajustement en une session (+15% max sans validation humaine), et alerte Slack systématique pour chaque ajustement de plus de 20 €.
Résultats
Sur les 12 premiers mois de déploiement, le RevPAR de l'hôtel est passé de 96 € à 118 €, soit +22,9%. Sur 24 chambres et 365 nuits, l'augmentation représente 54 000 € de chiffre d'affaires supplémentaire. Le taux d'occupation n'a pas baissé — il a légèrement progressé de 74% à 77%, car l'agent détecte les périodes de faible demande et baisse les tarifs assez tôt pour remplir plutôt que de laisser des chambres vides.
Le gain le plus spectaculaire : les week-ends événements, où le Belvédère était systématiquement sous-tarifé de 40 à 80 € par rapport au marché. L'agent a récupéré cet écart en détectant les événements 10 à 14 jours à l'avance.
RevPAR mensuel (avant/après) : 96 € → 118 € Gain RevPAR annuel : +54 000 € (24 chambres × 365 nuits) Taux d'occupation (avant/après) : 74% → 77%
Stack technique
- Playwright : scraping tarifs concurrents toutes les 4 heures (8 hôtels)
- Open-Meteo API : prévisions météo 10 jours (conditions impactant la demande)
- Eventbrite + Ticketmaster API : événements locaux générateurs de demande
- Claude API : modèle de pricing + recommandation par type de chambre
- SiteMinder / Cloudbeds API : propagation tarifs vers OTAs (Booking, Expedia, site)
- Slack webhook : alertes ajustements > 20 € pour validation humaine
Pourquoi cette démo est cliquable
La démo simule un ajustement de tarif en temps réel : on entre une date et le type de chambre, et l'agent affiche les tarifs de 4 concurrents scrappés, la météo, les événements détectés dans la zone, et le tarif recommandé avec le raisonnement. Un directeur d'hôtel peut tester sur son propre calendrier et voir immédiatement si l'agent aurait tarifé différemment — et comment.
Données et résultats fictifs à des fins de démonstration.