AI agent for holiday accommodation

Hotel demand forecasting with AI: watch in 3D who books your villas and why.

«IA Ocupación» is a hotel demand forecasting agent that simulates the occupancy of a complex of 12 villas on Spain’s Costa Blanca.

You pick the dates, the weather, air fares, your rate and geopolitical uncertainty. SubQ decides which markets book, Mistral explains it and you watch it in 3D.

Short answer

It is an agent called “IA Ocupación” that estimates how a fictitious complex of 12 villas would fill up under the scenario you pick. Code supplies the holidays of each source country; SubQ decides how likely each market is to book; code turns that into villas and revenue, and Mistral explains it. For your properties it would become a real forecast: it starts from your own data (booking history, rates, channels and lead times) and crosses it with public sources that update themselves, such as weather forecasts, geopolitical and travel alerts, jet fuel prices and air fares, inflation and each market’s holidays.

Guidance only: In this demo the complex is fictitious and the data are samples, so the result is a scenario estimate, not a forecast for your business. In a real project, every forecast is checked against the bookings as they come in, to measure how accurate it was and fine-tune it season after season.

Context

What is IA Ocupación and what is it for?

Revenue management means selling each night at the right price, to the right guest, at the right time. In small properties it is often done by eye, looking at the calendar and the competition.

IA Ocupación shows another way to use AI in hospitality: keep the facts, the decision and the explanation apart, and see the result on a digital twin of the complex.

The example is a fictitious complex of 12 villas on the Costa Blanca, with guests from six markets: Spain, the United Kingdom, Germany, France, the Netherlands and Scandinavia.

Drivers

What drives demand for a holiday property

Family deciding on a laptop whether to book a holiday, with icons for weather, flights, the holiday calendar, the villa and the price: the factors behind hotel demand forecasting

Each option changes a fact SubQ has in front of it when it decides. These are the five factors and where they come from:

IA Ocupación scenario factors and their source
CriterionWhat changesWhere it comes from
Dates and holidays at originPublic holidays, long weekends and school breaks in each source country on those datesPublished calendars (BOE and press for Spain; official calendars elsewhere)
Weather at the destinationSun, mixed weather or rain on the Costa BlancaScenario: 90 days ahead nobody knows the weather on a given day
Air faresNormal, +15% or +30%, because of the 2026 jet fuel crisisScenarios based on what was reported in 2026 (sources below)
Your rate−10%, usual rate or +15%: the complex’s own dynamic pricingThe property’s decision
Geopolitical uncertaintyLow or high: alerts, airspace closures or Middle East tensionScenario
The key detail: demand starts at the origin. A long weekend in Madrid can fill villas in Alicante even when it is a working day there.

Calendar

Source markets and holidays on each date

This is the table the agent gives SubQ: what happens in each source country on each of the dates you can pick.

Holidays and school breaks in each source market for the scenario dates
CriterionNovDec long weekendEasterAscensionAugust
Spain—Long weekendHolidays and school break—Summer holidays
United Kingdom——Holidays and school break—Summer holidays
Germany——Holidays and school breakLong weekendSchool break (partly)
France——HolidayLong weekendSummer holidays
Netherlands——HolidayLong weekendSummer holidays
Scandinavia——Holidays and school breakLong weekendSchool break (partly)

Ascension is the best example: in Germany, France, the Netherlands and Scandinavia it is a holiday and many take a long weekend; in Spain and the UK it is a normal week.

Architecture

How does IA Ocupación work?

Like IA BOE and IA Accesible: code does what code can do, and AI decides and explains only where it adds value.

  1. Facts

    From the dates, code gathers each market’s holidays and how it travels, plus the weather, fares, your rate and uncertainty. No AI.

  2. SubQ decides

    For each market it answers a yes/no question: would a typical household book in this scenario? It returns the probability.

  3. Simulation

    Code turns the probabilities into villas, revenue, RevPAR and a signal: demand above capacity, balanced or low occupancy.

  4. Mistral explains

    It explains why each market comes or not, only from those facts and numbers, and suggests what to test.

  5. You see it in 3D

    Travellers from each country arrive at the complex: they book, find it full or turn back. You decide.

You type nothing: you pick closed options. The same combination always gives the same result, so it is cached for a week.

If someone already simulated your scenario, you get it instantly and at no cost.

Decision

Why does SubQ decide the probabilities?

Family arriving by car at their holiday villa by the sea with suitcases, a rubber ring and their dog: the booking IA Ocupación’s 3D simulation shows

SubQ is a decision model: it does not write, it answers closed questions with a probability. Here it gets each market’s facts and answers whether a typical household would book.

It is a reasoned estimate from the facts, not a model trained on real bookings. That is why the result is a scenario estimate.

For a real property, that probability comes from its history: booking pace, lead time, cancellations and guest origin. SubQ then decides what to recommend.

The test that matters with a real client: does it forecast better than copying the same period last year? If it does not, it is no use.

Digital twin

The 3D simulation: a digital twin of the complex

IA Ocupación 3D simulation with all 12 villas of the fictitious complex booked in August: each villa lit in the colour of the country that books it and a beach full of swimmers and surfers

The scene invents nothing: it draws the same numbers you see in the panel. This is how they are worked out:

How IA Ocupación turns probabilities into villas and revenue
CriterionCalculation
Interested householdsThose of each date (from 14 in November to 40 in August), split by market according to its weight in the complex
Want to bookHouseholds × SubQ’s probability, rounded
VillasIf more than 12 want one, villas are shared in proportion and the rest find it full
RevenueVillas × nights of the stay × nightly rate (ADR)
RevPARRevenue ÷ (12 villas × nights): what each available villa earns

In 3D each traveller has its country’s colour. Those who book park by their villa, the family gets out and the villa lights up as they go in; late arrivals find it full; those who decide not to come turn back.

The more villas fill up, the more people head to the beach: sunbathers, swimmers, surfers and kids at the shoreline. When it rains, the beach empties.

Cars are markets that arrive by road (Spain, sometimes France) and planes are those that depend on air fares.

Reliability

Verification: SubQ checks the explanation

After the explanation, SubQ comes back to check Mistral with these questions:

Does it make anything up?

Each market’s «why» is checked against its facts and probability: holidays, figures or reasons that are not there count as a failure.

Does it sound certain?

The conclusion cannot present the estimate as a certain forecast or as a real business’s.

If it fails, another round

If any failure probability goes above 70%, Mistral Medium rewrites it and SubQ checks again. If it still fails, it is flagged.

Numbers are off limits

Villas, revenue and the signal are computed by code. Mistral only explains them.

Privacy

Security and data

The same defences as the other agents, reviewed against the OWASP Top 10 for LLM applications.

You type nothing

You only pick closed options. No text of yours reaches a model, so there is no data to leak and no instructions to inject.

Its own keys

IA Ocupación uses its own SubQ and Mistral keys, so its spend and usage are measured separately.

Against abuse

Its own ALTCHA proof of work, per-visitor and global limits, a daily cap on new queries and a one-week cache.

No tracking

The IP is only used in memory for the limits. Usage leaves an anonymous log with the options chosen and the cost.

Honesty

Status and limits

What the agent does today and what it does not, plainly.

What it does today

  • It really calls SubQ and Mistral for every new scenario, and shows you the cost.
  • It uses the holidays of six markets on five dates, with sources cited.
  • It draws in 3D exactly the numbers the code computes.

What it does not do

  • The complex is fictitious: the market mix, rates and interested households are assumptions.
  • It is not trained on real bookings: it is a scenario estimate, not a forecast.
  • It does not look at competitors’ prices or real availability on any channel.
  • Weather is a scenario: 90 days ahead nobody can forecast a given day.

For a real business, a CSV of past bookings and the list of units would be enough to start.

Key points

  • Facts: From the dates, code gathers each market’s holidays and how it travels, plus the weather, fares, your rate and uncertainty. No AI.
  • SubQ decides: For each market it answers a yes/no question: would a typical household book in this scenario? It returns the probability.
  • Simulation: Code turns the probabilities into villas, revenue, RevPAR and a signal: demand above capacity, balanced or low occupancy.
  • Mistral explains: It explains why each market comes or not, only from those facts and numbers, and suggests what to test.
  • You see it in 3D: Travellers from each country arrive at the complex: they book, find it full or turn back. You decide.

FAQ

Frequently asked questions

How do you forecast hotel occupancy?

Start from bookings on the books and the booking pace compared with the same lead time in past seasons, then add what changes demand: holidays at origin, events, weather, prices. Always check the forecast beats last year’s figures.

Does IA Ocupación forecast my property’s occupancy?

No. It simulates a fictitious complex to show the method. With your data, the agent would be trained on your booking history and compared with last year before use.

What does SubQ do and what does Mistral do?

SubQ decides: it gives the probability that each market books and then checks the explanation. Mistral writes the explanation in plain language, only from the facts and the computed numbers.

Why do other countries’ holidays matter?

Because demand starts where the guest lives. Ascension Day, for example, is a holiday in Germany, France, the Netherlands and Scandinavia, but not in Spain.

How does the jet fuel price rise affect it?

It makes air fares dearer. In the scenario it weighs more on markets that can only fly, like the UK or Scandinavia, than on Spain, which arrives by car or train.

How do you deploy AI agents in hospitality management?

Start with one decision and your own data, keep the rules in code, let the model decide or explain only where it adds value, check its output and measure it against a simple baseline before trusting it.

Does it store any of my data?

You type nothing, you only pick options. An anonymous log of the options and the cost of each query is kept, with no IP or personal data.

Custom AI agents

Want an agent like this with your property’s data?

We design it with your booking history, your markets and your rules, and compare it with last year before using it.

This article was created with the help of AI and reviewed by José Galán. I take great care over every post and every translation, but the odd mistake can still slip through. If you find one, write to me: you will be helping me improve.

Reviewed by

Agent-as-a-Service Designer at AllHub and Search & AI Visibility consultant. I design internal AI agents and help companies show up in Google and AI engines, with reproducible measurement.

LinkedInBackground

Shall we talk?

Get recommended by AI and/or put an agent to work for you.

Tell me what you want to achieve: fill in the form or email me at info@josegalan.dev.

We go through your AI visibility snapshot (or the process you want to automate) and I tell you, with data, what I would change first. No commitment.

What are you interested in?
Company size (optional)
When would you like to start? (optional)

Basic data protection information. Controller: José Galán. Purpose: to reply to your enquiry. Legal basis: your consent, which you can withdraw at any time. Recipients: no data is shared with third parties unless required by law; Google (hosting and form delivery) acts as data processor. Your rights: access, rectification, erasure, objection, restriction and portability. More information in the privacy policy.