> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kaireonai.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Travel & Hospitality

> Personalize offers across the whole trip lifecycle — from booking to on-property — with the right upgrade or perk at the right moment, never a barrage.

## The problem in this industry

Travel is a lifecycle, not a transaction. A guest researches, books, anticipates, arrives, stays, and returns — and each stage is a different opportunity: a room upgrade at booking, a lounge pass before departure, a spa credit on arrival, a loyalty-tier fast-track after checkout. The revenue upside in ancillaries and upgrades is enormous, but the same lifecycle makes over-messaging painfully easy. A guest who gets an upgrade email, an upsell SMS, and an app push for the same suite in one afternoon feels hounded, not courted.

The other challenge is timing relative to the trip, not the calendar. A late-checkout offer is worthless a week before arrival and perfect the morning of departure. A destination-activity package lands best a few days pre-trip when anticipation peaks. Getting the *moment* right matters as much as getting the offer right, and it has to be coordinated across the app, email, SMS, the booking site, and on-property touchpoints so the guest experiences one voice.

KaireonAI decides per guest, per trip-stage. It knows their loyalty tier and trip context, respects a cross-channel contact budget, and — because so much of hospitality is location-driven — can trigger an on-property offer when a known guest is physically there.

## What you build in KaireonAI

You express your upgrades, ancillaries, loyalty perks, and trip-stage timing as a small set of platform building blocks. Here is how a typical hotel, airline, or resort setup maps on:

| Platform concept                                  | How you use it in travel / hospitality                                                                                                                                                                                                                                                                                                        |
| ------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Offers**                                        | Room/cabin upgrade, loyalty-points bonus, ancillary (bag, seat, lounge), destination-activity package, late checkout, spa/dining credit, rebooking offer, tier fast-track                                                                                                                                                                     |
| **Channels**                                      | Mobile app, email, SMS, on-site website, in-app messaging, on-property kiosk                                                                                                                                                                                                                                                                  |
| **Decisioning gates** (Eligibility → Fit → Match) | *Eligibility*: `attribute_condition` on `loyalty_tier` and `has_upcoming_trip == true`; suppress an ancillary already purchased (`offer_attribute`). *Fit*: availability and trip-type fit for a package. *Match*: boost offers aligned to the guest's past preferences                                                                       |
| **Contact policies**                              | `frequency_cap` per channel; `cross_channel_cap` so a suite upgrade isn't pushed on app + email + SMS at once; `time_window` to respect quiet hours in the guest's timezone; `cooldown` on a declined upgrade; `do_not_contact` for opt-outs                                                                                                  |
| **Scoring approach**                              | A [`gradient_boosted`](/ai-ml/algorithms/gradient-boosted) model captures how tier, trip length, lead time, and history interact; [`neural_cf`](/ai-ml/algorithms/neural-cf) learns "guests like this one bought activity Y"; and a [`thompson_bandit`](/ai-ml/algorithms/thompson-bandit) learns fast which ancillary wins for which segment |

Model the trip as a [journey](/studio/journeys) so each stage fires the appropriate decision in sequence, use [triggers](/studio/triggers) to key offers off trip milestones, and lean on [geofencing](/studio/geofencing) for on-property moments like an arrival-day spa credit.

## A worked example

**Elena** is a Gold-tier loyalty member with a 4-night resort stay starting in three days. She has bought a room but no ancillaries, her history shows spa and dining spend, and she received a suite-upgrade push yesterday. It's mid-afternoon in her timezone.

<Steps>
  <Step title="Inventory: 8 offers in play">
    Suite upgrade, points bonus, lounge/ancillary, destination-activity package, late checkout, spa/dining credit, rebooking, tier fast-track.
  </Step>

  <Step title="Eligibility & fit gates → 5 remain">
    Late checkout drops (relevant on departure day, not pre-arrival — trip-stage fit). Rebooking drops (her trip is confirmed). The tier fast-track drops (already Gold with no near-threshold signal). Five survive.
  </Step>

  <Step title="Contact policies suppress → 4 remain">
    A `cooldown` on the suite upgrade suppresses it — she saw it yesterday and didn't act, so re-pushing it would fatigue rather than persuade.
  </Step>

  <Step title="Scoring + preference-aware ranking">
    The gradient-boosted model scores the survivors; ranking blends [PRIE](/decisioning/prie-formula-design). The **spa & dining credit** ranks first — high relevance (it matches her spend history), strong impact (ancillaries lift trip value and satisfaction), and the three-day pre-trip window gives it timely emphasis.
  </Step>

  <Step title="Delivered: spa & dining credit, via app">
    Elena gets one anticipation-building offer matched to what she loves — not a repeat of yesterday's upgrade push. On arrival day, geofencing can surface a complementary on-property perk.
  </Step>
</Steps>

**The same guest gets a different offer as the trip moves.** Run the flow on Elena's departure morning and the trip-stage fit rules flip: late checkout becomes eligible and timely, while the pre-trip activity package drops away. The offer set tracks where each guest is in the journey, so a single configuration stays relevant from booking through checkout.

## Measuring success

* **[Business Dashboard](/operations-reporting/dashboards#business-dashboard)** — ancillary attach rate and revenue per offer across the trip lifecycle.
* **[Attribution Dashboard](/operations-reporting/dashboards#attribution-dashboard)** — which channel and which trip-stage actually drive the purchase, so you invest in the moments that close.
* **Uplift and holdout** — an [experiment](/ai-ml/uplift-modeling) with a control group proves the ancillary program drives incremental spend rather than purchases guests would have made anyway.
* **Suppression rate** — confirms your cross-channel caps and quiet-hours windows are keeping the guest experience coordinated.

## Where the agentic layer helps

[Decisioning Autopilot](/ai-ml/autopilot) keeps ancillary and upgrade models tuned as booking patterns shift seasonally — proposing a retrain when a live model drifts, or promoting a challenger offer that wins its experiment, either as a suggestion to review or auto-applied through the audited path.

[Decision Sentinel](/ai-ml/sentinel) catches the config accident that silently kills ancillary revenue — a `time_window` policy that accidentally suppresses a whole timezone, or a frequency cap set too tight during a peak-booking push. It watches the decision stream for empty-decision and suppression spikes and alerts (with optional auto-pause) before a booking window closes empty. The [governed AI assistant](/ai-ml/ai-assistant) lets a revenue manager adjust offers or caps in plain language, routed through approvals.

## Try it

<CardGroup cols={2}>
  <Card title="Cross-Sell Tutorial" icon="arrows-turn-right" href="/tutorials/cross-sell">
    The ancillary-attach pattern is a cross-sell — build one end to end.
  </Card>

  <Card title="Journeys" icon="route" href="/studio/journeys">
    Orchestrate the booking → pre-trip → on-property → post-stay sequence.
  </Card>

  <Card title="Geofencing" icon="location-dot" href="/studio/geofencing">
    Trigger on-property offers when a known guest is physically present.
  </Card>

  <Card title="Open the Playground" icon="play" href="https://playground.kaireonai.com">
    Register and build a travel decision flow end to end.
  </Card>
</CardGroup>
