ATIA AI Take-Home Kit › Pain 2 · Second-guessing

Advanced rung · Tool 2.c

Post-booking retention engine

A nightly job scores open bookings with rules you can read, drafts one approved message for the most exposed ones, and holds back a random group so you can see whether it worked. Nothing sends without a person.

AI drafts. You approve. The pilot writes every draft as DRAFT - PENDING OWNER REVIEW into a spreadsheet, and a person sends approved messages from the booking platform. The examples use Bay Light Day Cruises, Seward, a fictional teaching business. What you type on this page stays in this browser.

The pain it fixes

For the traveler

78%keep planning after they book. Only 18% stop.

4 in 10have changed a booked stay after seeing a better option, and 41% watch the price of a booking they already hold.

The booking never feels final. Doubt keeps working after the payment.

For your business (my read)

Doubt shows up after the booking as changes and cancellations inside the free-cancellation window. A seat freed two days out is hard to resell. Chasing every flexible booking with discounts costs more than it saves.

The fix is not a price cut. It is a booking that feels safe to keep.

What would raise confidence

Asked what would make them more comfortable with AI-assisted booking, travelers chose:

So: confidence first, discount last. The same three wishes make a good post-booking message (my read). Message A, the confidence note, says what to expect and how to review or change the booking, gives one checkable proof point, and names a person who can step in. A discount comes last, if at all, and only on terms the owner writes.

Source: Skift Research + McKinsey, Winning Hearts in an Age of Infinite Travel Choices, Sept 2026 · survey of 1,015 US travelers, data as of June 2026 · US travelers, not Alaska visitors. Confidence factors: Exhibit 9. "4 in 10" is the report's page 26 figure; its summary says "half", so treat it as 4 in 10 to half. Figures last verified 2026-10-10.

Is it for you?

Built for: operators with about 1,500 or more bookings a season on a booking platform with an API (FareHarbor, Peek, Checkfront, Cloudbeds or similar), plus a developer or vendor. A multi-day tour company or a 20-room lodge fits. You also need 2.a (the honest picture) and 2.b (approved facts) done first, because message A is built from them.

Smaller? The post-booking calendar from the session (five messages, one job each) gets most of the benefit with no code. The demo below still teaches the method.

Bookings per season
Your booking platform
Developer help

Answer the three questions to see where to start.

Post-booking message rules

Write these down before the first draft. The reference code builds them in.

How it works

  1. Pull. Each night, export open bookings. The adapter keeps an allow-list of columns, drops everything else and logs the dropped column names, never their values.
  2. Score. A rule set you can read and change. Higher score means more likely to change or cancel inside the free-cancellation window. The top 10% are eligible.
  3. Assign. Eligible bookings go at random to treatment or holdout, 50/50 for a pilot. The draw is seeded, stored once and never redone.
  4. Draft. For treatment bookings only: message A, then at most one follow-up. Templates only (dry run), or a model API improves the wording. Local checks flag new numbers, banned phrases, promises and personal data.
  5. Approve and send. A person fills each [FILL], edits, approves, and sends from the booking platform.
  6. Report. Monthly in season: in-window changes and cancellations, treatment versus holdout, flexible and non-refundable separately, with 95% intervals and a "directional" label when the sample is small.

The starting score

RulePointsWhy
Booked more than 60 days before the trip+2More time to find something else
Flexible (free-cancellation) rate+2Leaving costs nothing
Booked through an online travel agency+1One tap from other options
No add-ons on the booking+1Less invested in the day
Price-alert flag (only if your platform has one)+1Off by default

A starting guess to test, not a prediction model. The weights live in rules.json; change them, note who changed what and when Policy choice

Three messages, and nothing else

A · Confidence note

What to expect, the weather plan, how to review or change the booking, one checkable proof point and a named person. Goes to every treatment booking, on any channel.

See the fictional draft
DRAFT - PENDING OWNER REVIEW
Subject: Your 4-hour wildlife and glacier cruise on Tuesday, July 14, 2026: what to expect

Hello,

Thank you for booking the 4-hour wildlife and glacier cruise on Tuesday, July 14, 2026 at 9:00. Here is what to expect, so there are no surprises.

What to expect
- Heated enclosed cabin and two restrooms on board.
- Hot drinks are included. Lunch is not included.
- Meeting point: the small-boat harbor, a 12-minute walk from the cruise ship dock.
- Weather: The cruise runs in rain. It cancels only for a marine warning, with a full refund.

If your plans change
- Free cancellation until 48 hours before departure. Inside 48 hours, no refund.
- To review or change your booking, reply to this message or call [FILL: contact person] at [FILL: contact phone]. A person on our team will help you.

Our track record
- [FILL: track record]

See you at the harbor,
The Bay Light Day Cruises team

B · One add-on

One option from your approved list that fits the day, clearly optional. Partners approve their own lines. Direct bookings only by default.

See the fictional draft
DRAFT - PENDING OWNER REVIEW
Subject: One idea for your day in Seward on Tuesday, July 14, 2026

Hello,

You are booked on the 4-hour wildlife and glacier cruise on Tuesday, July 14, 2026 at 9:00. Guests often ask what else fits the same day, so here is one option we know well.

Mile 12 Kennel summer sled-dog cart ride (partner)
- 90 minutes, 15 minutes by car from the harbor, ages 2 and up, runs in rain.
- Prices and times come from Mile 12 Kennel directly.
- Book with Mile 12 Kennel and mention referral code BAYLIGHT-K.

It is optional, and your cruise booking stays the same either way. Please check the age limits for your group.

Questions? Reply to this message or call [FILL: contact person] at [FILL: contact phone].

The Bay Light Day Cruises team
[FILL: postal address and opt out]

C · Lock-in offer

An option to switch to non-refundable, only on terms the owner writes. Never a competitor price match. Off until you write the terms.

See the fictional draft
DRAFT - PENDING OWNER REVIEW
Subject: An option for your Tuesday, July 14, 2026 cruise

Hello,

You are booked on a flexible rate for the 4-hour wildlife and glacier cruise on Tuesday, July 14, 2026 at 9:00. Nothing changes unless you choose to.

If you would like to lock in your booking now, here is our offer:
FICTIONAL EXAMPLE TERMS: switch to our non-refundable rate at least 30 days before your trip and we add a printed wildlife guide for each guest. (The owner writes the real terms.)

If you do nothing, your current booking stays as it is. Free cancellation until 48 hours before departure. Inside 48 hours, no refund.

Questions? Reply to this message or call [FILL: contact person] at [FILL: contact phone]. A person on our team will help you decide.

The Bay Light Day Cruises team
[FILL: postal address and opt out]

Each [FILL] is a fact the fictional owner has not supplied yet. The pilot never guesses it.

What the demo shows: in the fictional data, the most exposed bookings came through an online travel agency. So the pilot drafted only message A for them, and held B and C back for contractual reasons. For many operators, the confidence note is the whole lever.

Build brief

Give this to a developer, a vendor, or a coding agent (Claude Code, OpenAI Codex or Gemini CLI). It is the Prompt Kit brief with three updates: a 50/50 holdout for the pilot, Wilson intervals in the report, and checks on every draft.

No guest names, emails, phone numbers or payment details in these boxes.

Your build brief


    

The original brief, as printed in the Prompt Kit

Kept for reference. It holds back 20 percent; for a pilot, use 50/50 (see the sample size below).

Design and build a post-booking retention pilot on [BOOKING PLATFORM].

Nightly: pull open bookings through the platform API (booking id, lead time, rate type, channel, party size, add-ons, price-alert flag if available). No guest names, emails or payment data leave the platform.

Score exposure with a transparent rule set I can read and change, for example: +2 lead time over 60 days, +2 flexible rate, +1 OTA channel, +1 no add-ons. For the top 10 percent by score, call a model API to draft one of three approved messages and nothing else: (A) a confidence note stating what to expect and the weather plan B, (B) one relevant add-on from the approved list, (C) a lock-in offer to convert to non-refundable on terms I supply. The model must use only the approved facts file.

Write drafts to an approval queue (a Google Sheet or email drafts). Nothing sends without a person. Randomly assign 20 percent of eligible bookings to a holdout that receives nothing, and store the assignment. Report monthly: in-window changes and cancellations, treatment versus holdout, as counts and rates, with flexible and non-refundable bookings shown separately. Do not match competitor prices and do not chase every cancellable booking.

Sample size: how many bookings a clear answer needs

Before you build, check whether your season is big enough to prove anything. This is the same calculation as python pilot.py power: a two-proportion test, alpha 0.05 (two-sided), power 0.8.

"Rate" = in-window changes and cancellations divided by bookings (Number 4). Counts only, no guest details.

Your season (optional)

2,036bookings in the holdout
2,036bookings in treatment
4,072eligible bookings in total
Bookings needed by split, treatment/holdout
Split treatment/​holdoutHoldoutTreatmentTotalvs 50/50
50/50yours2,0362,0364,0721.00x

Your season: 150 eligible bookings a season.

What the numbers say

Method: normal approximation for two proportions, pooled rate under "no effect", rounded up to whole bookings. The 15% baseline is an example, not a measured Alaska figure: use your own last season. Estimates only.

Read a result

At the end of a month, type the counts from your report. The page shows each rate with a Wilson 95% interval and says how far to trust it.

Counts only. No guest names or booking details.

Type four counts to see the rates.

The demo result comes from the fictional, simulated season in the download. It looks like a big gap, but with 14 and 13 bookings it is most likely noise. Use the sample size above for "confirmatory": below it, the read is directional.

Download the reference pilot

A small Python program that runs the whole method on 300 fictional bookings, with no keys and no internet. It scores, assigns, drafts A, B and C into an approval queue, reports with Wilson intervals, and runs the sample size. It has no sending code.

Download retention-pilot.zip about 78 KB · Python 3.10 or newer, standard library only

Unzip it, open a terminal in the folder, and type:

python pilot.py demo

On a Mac, type python3 instead of python. The README walks a non-developer through every step, including your own data and optional model drafts.

Look inside first

Platform connections (FareHarbor, Peek, Checkfront, Cloudbeds) are empty stubs: their APIs are not verified here. Optional model drafting works with Claude; the OpenAI and Gemini options are not tested against a live API. Effort and cost are estimates.

How you will know it worked

Number 4 · In-window changes and cancellations, against the holdout

Bookings changed or cancelled inside the free-cancellation window, divided by bookings, counted monthly in season. Show flexible and non-refundable bookings separately. Compare treatment with holdout by assigned group, whether or not each draft was sent. Leave operator cancellations (a marine warning) out.

Revenue kept: the value of in-window cancellations in each group, per booking. Cost: staff minutes per approved draft, plus API fees. Guardrails: complaints and opt-outs.

Start counting before the pilot so you have a baseline. Most single operators will get a directional read, not proof Recommendation

Before this rung

2.c is the top rung of Pain 2. Message A is only as good as the facts behind it: 2.a The honest picture gives you the "what to expect" lines, and 2.b Grounded answer assistant gives you approved facts that cite their source.

Before you use it

AI drafts. A person approves. Every draft is marked DRAFT - PENDING OWNER REVIEW and waits in a queue. A person who knows the operation checks every fact, fills every [FILL] and sends approved messages from the booking platform. Local checks and AI self-review are not verification.

This page keeps what you type in this browser only. Nothing is sent anywhere.

Facts and figures last verified 2026-10-10.