AI for Demand Forecasting in Canary Islands Hospitality: A Real Case
Back to the blog
AI Machine Learning Hospitality Canary Islands

AI for Demand Forecasting in Canary Islands Hospitality: A Real Case

May 2026 Meular Team 10 min read

Hospitality in the Canary Islands faces a particular challenge that is not felt with the same intensity anywhere else in Spain: seasonality is pronounced, variable and shaped by very local factors. A group with three hotels — two in the south of Gran Canaria and one on Lanzarote — came to us with a specific problem: its food & beverage (F&B) purchasing relied on the purchasing manager's instinct and an Excel spreadsheet updated every Monday morning. The result: product waste in high season and stock-outs in unexpectedly busy weeks.

-23%
Reduction in food waste (estimated)
€47K
Estimated annual saving on unnecessary purchases
+18%
Dish availability at peak times (estimated)

The challenge: when Excel is no longer enough

The hotel group handled between 1,200 and 2,800 room nights a week depending on the season, with a food offering that included buffet, à la carte and event catering. The purchasing manager had twelve years in the industry and sound judgement, but complexity had grown: new customer segments (Nordic travellers, Spanish families, corporate incentive groups), an expanded menu and higher quality expectations.

The problem was not just Excel. It was the absence of a systematic model bringing together every relevant variable: forecast occupancy, guest mix by origin, local events, weather and historical consumption by category. The spreadsheet captured forecast occupancy from the PMS (Property Management System) and nothing else.

In high season, waste of fresh produce (vegetables, fish, dairy) accounted for 8–12% of the weekly purchasing bill. In weeks with unexpected events (the Las Palmas Carnival, Tenerife's Semana Grande), the kitchen ran short of key ingredients, which hit guest ratings directly and drove up the cost of emergency purchases at higher prices.

Buy what will be used: forecasting cuts waste and stock-outs.
Buy what will be used: forecasting cuts waste and stock-outs.

The solution: forecasting with Prophet + XGBoost

We proposed a two-layer solution. The first was a time-series model built with Prophet (developed by Meta) to capture the business's overall seasonality: the annual trend, weekly patterns and public holiday effects. Prophet is particularly good with data that has multiple seasonalities and irregular events, which is exactly the case for Canary Islands hospitality.

The second layer was an XGBoost model trained on Prophet's residuals and enriched with exogenous variables: historical weather data (temperature and rainfall in Las Palmas and Arrecife, drawn from the AEMET API), occupancy rates from the Protel PMS by room type, guest origin (main source market), and a hand-built calendar of the 23 key local dates identified for the Canary Islands.

Model input variables

  • Forecast occupancy for the next 14 days (pulled from Protel via its API)
  • Source-market mix (% Nordic, UK, mainland Spain, domestic)
  • Forecast maximum and minimum temperature (correlated with consumption of cold drinks and hot dishes)
  • Local events (Carnival, Easter, the Fuerteventura surf season, Christmas, New Year)
  • Day of the week and week of the year
  • Historical consumption by product category (last 104 weeks)
  • Latest purchase price by category (to adjust quantities to market prices)

Implementation: from raw data to a model in production

Phase 1: Data extraction and cleansing (weeks 1–3)

The first step was to extract historical consumption from the client's purchasing system, which held records going back to 2019. The data was in Excel with an inconsistent structure: different units of measure for the same product over time, supplier changes that altered product reference names, and weeks with no data owing to temporary closures (COVID, refurbishments).

We carried out an intensive cleansing and normalisation process: standardising units (kg, litres, units), reconciling product references, imputing missing weeks and detecting outliers using Isolation Forest. The result was a clean 260-week time series per product category, ready for training.

Phase 2: Feature engineering and training (weeks 4–6)

We built the exogenous variables, connected the AEMET API to obtain historical temperature data and created the Canary Islands events calendar. We trained Prophet with seasonality parameters tuned to the domain (strong weekly seasonality, and annual seasonality with two peaks: summer and Christmas–New Year).

For XGBoost, we used season-based cross-validation (walk-forward validation), with 2019–2023 data for training and 2024 for testing. The final MAE (mean absolute error) was 6.2% for high-volume categories (meat, vegetables, drinks) and 11.4% for more volatile ones (fresh fish, seafood).

Phase 3: Deployment and dashboard (weeks 7–8)

We deployed the model on AWS Lambda, running automatically every Sunday at 22:00 and producing a consumption forecast by category for the following 14 days. Results are written to a PostgreSQL database and displayed in a Power BI dashboard available to the purchasing manager and operations management.

The dashboard includes forecast consumption vs current stock (with stock-out alerts), forecast vs actual for the last four weeks, and a calendar view of upcoming events that affect the forecast.

Results measured after six months

After six months in operation, we measured the results against the same period the previous year, controlling for occupancy (both periods had similar occupancy levels):

  • A 23% reduction in food waste: the biggest impact was on fresh fish and leafy vegetables, the most volatile categories with the shortest shelf life.
  • Annual savings of €47,000 on unnecessary purchases: calculated on the cost of unused product plus the cost of food waste disposal.
  • An 18% improvement in dish availability at peak times: measured as the reduction in the number of menu items marked "unavailable" during weekend lunch service.
  • Fewer emergency purchases: from an average of 3.2 urgent orders a week to 0.7, with the resulting savings on prices and logistics.

Lessons learned: Canary Islands seasonality is different

Working in the Canary Islands means understanding nuances that generic models miss. Easter in the Canaries is shorter than on the mainland, and its effect on tourist demand is more muted than at mainland beach destinations. The Las Palmas de Gran Canaria Carnival (the third largest in the world) creates a very specific spike in demand on Gran Canaria but has virtually no effect on Lanzarote. The surf season in the north of Fuerteventura attracts a guest segment whose consumption patterns differ from those of traditional family tourism.

Another key lesson concerned PMS data quality. Protel is a mature system, but data consistency depends heavily on each hotel's internal procedures. We found misclassified bookings, guest segments that were inconsistent across the three properties, and historical occupancy figures distorted by duplicate entries. Before the model could be trained, we had to build a PMS data validation pipeline running in parallel.

Finally, quarterly retraining is essential. The model is not static: consumption patterns evolve with the guest profile, the food offering and market conditions. We set up an automatic retraining process every three months, with the purchasing manager manually validating the results before each new version goes into production.

Run a hospitality business in the Canary Islands?

If you want to improve your F&B purchasing with AI and cut food waste, we can help you design a solution tailored to your PMS and your data.

Get in touch

Related articles

Let's talk

Ready to put AI to work in your business?

Tell us about your project and we will propose the most suitable solution, with no obligation.