AI voice agents for room upgrade upsell make one upgrade offer before arrival, using only the rooms and prices the hotel's system returns, and record the guest's yes or no as stated. Outbound offer calls go only to guests with prior express written consent on file. Otherwise the offer waits for a call the guest started.
Key Takeaways
- Make one offer from live inventory, and let a no end it.
- An outbound upgrade call generally needs prior express written consent.
- On the guest's own call, answer their question before any offer.
This post is part of our guide to AI voice agents for hotels and hospitality. The guide's section on changing the stay treats an upgrade offer as a sales moment that follows the rules for marketing calls. Here is how that call works in Dograh, an open-source, self-hostable voice agent platform, in both directions: on a call the guest started, and on an outbound call to guests who agreed in writing to hear offers.
Guests rarely ask for a better room
Upgrade requests are rare, so a hotel that wants to sell upgrades has to make the offer itself. Runnr.ai, which sells guest messaging software to hotels, looked at more than 10,000 guest conversation summaries from over 1,000 European properties between March 2025 and February 2026. Room upgrades drew only 86 requests in that set, almost all of them at hotels. In the same vendor data, pre-arrival offers of all kinds sent 24 to 48 hours before check-in converted best, although Runnr published no conversion rate.
That gives the call a narrow job. It happens before arrival and carries a single offer, and the guest's answer closes the topic.
The offer also stays off the booking confirmation call. A confirmation call with no offer is generally informational, and adding an upgrade turns it into a marketing call with stricter consent rules. AI voice agents for booking confirmations in hotels keeps that call free of offers, so the upgrade has a call of its own.
Making the offer on a call the guest started
The easiest place for an upgrade offer is a call the guest placed, once their own question is answered. A guest calls to ask about parking or a late arrival. The agent greets them, and says it is an automated assistant if the hotel chooses to or local law requires it. Before it names any detail of the stay, it asks for the confirmation number and the surname on the booking. A phone number can find the reservation, but it does not prove who is calling.
After the guest's question is dealt with, the agent checks for an offer. An HTTP API tool asks the property management system (PMS), or the hotel's upsell system, which upgrades are open for those dates and what each costs over the booked rate. If nothing comes back, there is no offer. If something does, the agent makes one offer in plain words: the room type and the extra cost per night. It reads the price exactly as the system returned it and never adds a discount or an extra of its own.
The answer is recorded as the guest stated it. On a yes, the agent reads the change back, and a second HTTP API tool writes the new room type to the booking. Add a Preset Parameter named workflow_run_id with the value {{initial_context.workflow_run_id}} to that tool, so the PMS can ignore a duplicate if the request is sent twice.
Payment follows the hotel's own policy. The difference is added to the booking and settled at the desk, or an HTTP API tool asks the hotel's own system to send a secure payment link by text or email. No card number is taken on the call. On a no, the agent writes the decline to the booking and moves on. It makes no second offer and does not repeat the first one in other words.
Open Source Alternative to Vapi / Retell
Self-hosted voice agent platform — no per-minute fees
dograh-hq/dograh
Star on GitHub
Outbound upgrade calls need written consent first
An outbound call that offers an upgrade is generally telemarketing, so the guest's prior express written consent has to be on file before the hotel dials. This is general information, not legal advice.
The Telephone Consumer Protection Act (TCPA) covers calls made with an artificial or prerecorded voice. In its February 2024 declaratory ruling, FCC 24-17, the Federal Communications Commission (FCC) wrote: "we confirm that the TCPA's restrictions on the use of 'artificial or prerecorded voice' encompass current AI technologies that generate human voices."
The rule text at 47 CFR 64.1200 sets the consent. Paragraph (a)(2) covers "any telephone call that includes or introduces an advertisement or constitutes telemarketing" made to a mobile number with an artificial or prerecorded voice, "other than a call made with the prior express written consent of the called party". Paragraph (f)(9) defines that consent as "an agreement, in writing, bearing the signature of the person called" that authorizes the seller to deliver such calls to a named number. The agreement must also tell the guest that they are "not required to sign the agreement (directly or indirectly), or agree to enter into such an agreement as a condition of purchasing any property, goods, or services."
Read together, a booking is generally not consent to sales calls, and neither is a phone number typed into the booking form. The consent is a separate, optional agreement, and electronic signatures can count. Its record lives in the hotel's system, never in the agent. The hotel exports only guests with consent on file, and that list is what the API Trigger or a Campaigns upload calls. A guest without consent hears an offer only on a call they started.
France has its own consent rule for sales calls to consumers, which French AI voice agents for hotels covers. The same consent-first logic runs through AI Voice Agents for Logistics and Delivery (US): Consent Before the Call. Confirm your own position with counsel before the first campaign.
The first lines of an outbound offer call
The opening of an outbound offer call carries legal duties, so it should be fixed text. Paragraph (b)(1) asks every artificial or prerecorded voice message to "state clearly the identity of the business, individual, or other entity that is responsible for initiating the call" at the beginning. For telemarketing, paragraph (b)(3) adds "an automated, interactive voice- and/or key press-activated opt-out mechanism", with brief instructions, "within two (2) seconds" of that identification.

In Dograh, the Greeting Text in the Start Call node plays word for word, so the opening lives there. It names the hotel under its registered name, as paragraph (b)(1) requires, then tells the guest they can say "stop" at any time to end these calls. If you want to tell guests they're speaking with an automated assistant, or your location requires it by law, add that to the same text. Dograh has no keypad tool, so the opt-out works by voice. When a guest says stop, the agent writes a do-not-call request to the hotel's system through an HTTP API tool and ends the call. That generally fits the voice option the rule allows; confirm it with counsel.
The agent then verifies the guest with the confirmation number and surname before it names the booking or makes the offer.
Voicemail needs care. Under (b)(3), a message left on voicemail must also give a toll-free number that reaches the opt-out, so the simplest choice is to leave no sales message: in the agent's Settings, turn on "Enable voicemail and screening handling" and set "When voicemail is detected" to "Disconnect the call", the default. Campaigns has no per-guest call cap, so the hotel's export allows one upgrade call per stay and retries stay at zero. Calling hours are set by weekday in the campaign. The rest of a strong opening is in The First 15 Seconds Decide Everything in AI Outbound Calls.
Join the Dograh Community
Dograh is an OSS alternative to Vapi. Join our Slack community for queries, releases, best practices & community interactions.
Checking the offer calls after launch
Quality assurance (QA) shows whether the agent kept to one offer. Add a QA node and set its Sample Rate below 100, so it reviews a random share of calls. QA scores each node separately, with its own tags, a 1 to 10 score and a summary. Write the QA prompt to flag a second offer, or a price that differs from what the tool returned, then read those transcripts and fix the prompt. Automated QA for Voice Agents covers the setup in more depth.
Self-hosted Dograh has no per-minute platform fee (servers, model keys and phone minutes still cost); Dograh Cloud has a 1¢-a-minute platform fee.
Start with the offer on inbound calls, since it needs no new consent. Add outbound calls once signed consent is recorded in your PMS.
Glossary
- Prior express written consent
- Under the TCPA, a signed written agreement in which a person authorizes a business to deliver advertisements or telemarketing calls with an artificial or prerecorded voice to a named number. It can never be a condition of a purchase, such as a booking.
- Telemarketing
- A call made to encourage someone to buy or rent property, goods or services. An upgrade offer generally makes a hotel call telemarketing, which brings in the stricter consent rules.
- Do-not-call request
- A guest's request to stop receiving sales calls. On an AI voice call it is made by voice, written to the hotel's system at once, and the call ends.
- Property management system (PMS)
- The hotel's core system for rooms, rates and bookings. The voice agent reads open upgrades and prices from it during the call and writes the guest's answer back to it.

