How to set up automated guest messages

All help ressources
>
How to set up automated guest messages

Why automate your guest messages?

Sending the right message at the right time is key to a great guest experience β€” but doing it manually for every booking takes a lot of time. With Nowistay's automated guest messages, you can set up messages that send automatically when a booking is confirmed, before check-in, or at check-out.

You can generate templates with AI in seconds, personalize them with dynamic variables (guest name, check-in time, welcome guide link, deposit link, identity check link, WhatsApp link, smart lock code, and more), choose how the message is sent (OTA inbox, email, WhatsApp, a combination, or by email to a team member), add conditions to target the right bookings, preview exactly what your guest will receive, and monitor every message from a single dashboard.

Even better, you can create multilingual versions of each template so your guests receive the message in their own language β€” with automatic fallback to the default language when needed.

This guide walks you through everything, step by step.

Before you start

To use automated guest messages, you'll need:

  • At least one property connected via the Nowistay PMS
  • An active AI Channel Manager subscription on that property

If you haven't connected your property yet, check our guide on how to create your first property. To also send WhatsApp messages, see WhatsApp messaging with travelers.

Step 1: Open the Automations page

  1. From your dashboard, click Automations in the left sidebar (under Logistics)
  2. You'll see the list of all available automation types. Find the "Guest Messages" row

You can also go directly to app.nowistay.com/hub/automations.

Nowistay Automations page showing three automation types: Cleaning Automation, AI Team Coordination, and Guest Messages
The Automations page β€” the Guest Messages row is where you manage automated messages

Step 2: Select which properties use automated messages

On the Guest Messages row, you'll see a property selector. Click it to choose which properties should have automated messages enabled.

  • Click "Select properties" to open the dropdown
  • Use the search field to find a property by name
  • Check the properties you want, or use "Select all"
  • Click the confirm button to save

Only properties connected through the Nowistay PMS method appear in this list. If a property is missing, make sure it's synced via the PMS integration.

Step 3: Open the templates panel

On the Guest Messages row, click the message icon (the speech bubble icon). This opens the "Guest Message Templates" panel where you create and manage all your templates.

If this is your first time, you'll see a message: "No message templates yet β€” Add templates to automatically send messages to your guests at key moments."

Guest Message Templates panel showing four templates grouped by trigger event with Add message and Generate with AI buttons at the bottom
The templates panel β€” create, edit, reorder, and manage your templates

Step 4: Create your first templates

You have two options to get started:

Option A: Generate with AI (fastest)

If you haven't created any templates yet, click the "Generate with AI" button. The AI will create a complete set of templates covering your three key moments:

  • Booking Confirmed β€” sent when a new booking is created
  • Check-in β€” sent around the guest's arrival date
  • Check-out β€” sent around the guest's departure date

The generated templates are personalized based on your property details, your welcome guide content, and your communication style. Generation usually takes a few seconds.

Once generated, you can edit, reorder, or delete any template. If you want to start fresh, delete all existing templates and the "Generate with AI" button becomes available again.

Option B: Create manually

Click "+ Add message" to open the template editor and build a template from scratch. This is explained in detail in the next step.

Step 5: Edit a template

Whether you're editing an AI-generated template or creating a new one, the template editor lets you configure everything about your automated message. Here's each field explained:

Properties

Choose which properties this template applies to:

  • All properties (default) β€” the message sends for bookings across all your connected properties
  • Specific properties β€” select one or more properties from the dropdown. Useful when a property has specific instructions (a different check-in process, special address details, etc.)

Trigger event

This is when the message should be triggered. Pick one:

  • Booking Confirmed β€” triggers when a new booking is created on any connected platform
  • Check-in β€” triggers around the guest's arrival date
  • Check-out β€” triggers around the guest's departure date
  • Manual β€” the template is never sent automatically. You send it yourself, one booking at a time, from the preview dialog.

Manual templates. Pick "Manual" when you want a ready-made message you can send on demand instead of on a fixed event. The editor shows the helper text "Manual templates are only sent from the preview drawer." The Timing (hours) field is disabled (the message is never scheduled), and conditions are not applied automatically since you pick the booking yourself. Typical use cases: damage report follow-ups, custom check-in instructions for a specific booking, ad-hoc payment reminders, or any other message you compose often but with case-by-case tweaks.

How to send a manual template. Open the preview dialog (eye icon on the template card), pick a booking, and click "Preview". Nowistay resolves every variable as usual with the booking's real data β€” guest name, dates, smart lock code, and so on. Because the template is manual, the Subject and Message body fields become editable directly in the preview: tweak them with case-specific details (an exact arrival hour, an internal reference, an apology) and click "Send now" to deliver. See Step 6 below for the full preview workflow.

Timing (hours)

This controls how many hours before or after the trigger event the message is sent. The field is disabled when the trigger event is "Manual", since manual templates are not scheduled.

  • Enter a number of hours in the field
  • Click "Before the event" or "After the event" to set the direction
  • Set to 0 to send at the exact time of the event

The editor shows a live example below the field. For instance: "Example: Check-in on 15/03/26 3:00 PM, message sent on 14/03/26 3:00 PM" (for 24 hours before check-in).

Edit Message dialog showing properties selector, trigger event dropdown, timing with Before and After buttons, Send via selector, subject line, and message body with Insert Variable button
The template editor β€” configure the trigger event, timing, sending channel, subject, and message body

Send via

The "Send via" dropdown controls who receives the message and on which channel. There are three options:

  • Auto (default) β€” Nowistay picks the best channel based on where the booking came from:
    • Airbnb, Booking.com, Expedia β†’ the message is delivered through the OTA inbox, so the guest receives it inside their booking platform's messages.
    • Vrbo and Direct bookings β†’ the message is delivered by email to the guest's address.
  • WhatsApp β€” the message is delivered via WhatsApp when the guest has a phone number. Nowistay also sends a copy by email as a fallback (except for Booking.com relay emails, which can't be used). It is not posted in the OTA inbox in this mode.
  • Team member β€” the message is sent by email to a specific team member you choose, not to the guest. Use this when you want to alert someone on your team about a booking instead of communicating with the traveler. WhatsApp and the OTA inbox are disabled in this mode (email-only delivery to the team member you select).

The helper text under the field reminds you: "Auto sends via OTA when available, otherwise email. WhatsApp mode sends email when valid and also sends WhatsApp. Use the switch below to add WhatsApp in Auto mode."

Sending to a team member. When you pick "Team member" in the Send via dropdown, a second field appears just below: "Team member". Open it and select the person who should receive this message. Only active team members with a valid email show up in the list. If you've restricted the template to specific properties at the top of the form, only team members assigned to those properties are eligible. You can personalize the message with team-specific variables ({{team_member_first_name}}, {{team_member_last_name}}, {{team_member_full_name}}) alongside the usual booking variables (guest name, dates, property, smart lock code, and so on).

Example: alert your check-in team member of an upcoming arrival. A typical use case is to notify the person handling check-ins a few hours before a guest arrives, so they have everything ready. Here's the configuration:

  1. Properties: pick the properties this team member covers (or leave on "All properties" if they handle everything).
  2. Trigger event: Check-in.
  3. Timing: select Before the event and enter the number of hours of notice you want, for example 3 hours before check-in.
  4. Send via: Team member.
  5. Team member: select the person in charge of check-ins.
  6. Subject: something like "Check-in today: {{guest_full_name}} at {{check_in_time}} ({{property_name}})".
  7. Message body: include the details your team needs to prepare, for example: "Hi {{team_member_first_name}}, {{guest_full_name}} ({{guest_count}} guests) is arriving today at {{check_in_time}} at {{property_name}}, {{property_address}}. Reservation {{reservation_number}}, {{number_of_nights}} nights. Smart lock code: {{smartlock_code}}."
  8. Save the template. From now on, every time a guest is due to check in at one of those properties, your team member receives an email 3 hours before with everything they need.

You can build the same kind of internal alert for any moment in the booking: a cleanup notification for the housekeeping team by switching the trigger event to Check-out, or a "new booking received" briefing with Booking Confirmed.

Add WhatsApp on top of Auto. Inside the message body area, switch to the "WhatsApp" tab. There you'll find a toggle: "Also send on WhatsApp". Turn it on and Nowistay will deliver the message through BOTH channels β€” the standard channel chosen by Auto (OTA inbox or email) and WhatsApp. The helper text reads: "Enable this to also send the short WhatsApp version. In WhatsApp mode, it is always on."

WhatsApp message body. The WhatsApp tab has its own short message body, separate from the standard one. WhatsApp messages have a character limit, so keep it concise. You can write it yourself or click "Generate WhatsApp" to have the AI produce a short WhatsApp version from your standard message. All your variables are preserved.

What WhatsApp needs: the property must be connected through Nowistay PMS, your AI Channel Manager subscription must be active, and the WhatsApp integration must be connected. If the guest has no phone number, the WhatsApp send is skipped (the email or OTA delivery still goes through).

Subject

The subject line your guest will see when the message is delivered by email or in an OTA inbox. You can type plain text or include variables like {{guest_first_name}} or {{property_name}} to personalize it.

Example: "Welcome to {{property_name}}, {{guest_first_name}}!"

The subject is not used on WhatsApp (WhatsApp messages don't have a subject line).

Message body

The main content of your message. Write your message and use the "Insert variable" button (the { } icon above the text area) to add dynamic placeholders. When the message is sent, each variable is replaced with the real data from the booking.

Above the body, two tabs let you switch between the Standard body (used for OTA and email) and the WhatsApp body. Both versions share the same trigger, timing, conditions and variables β€” only the text content differs.

Available variables

Variables are dynamic placeholders that get replaced with real booking data when the message is sent. Click the { } Insert variable button to browse them, or type them directly using the {{variable_name}} format. You can search by name using the search field at the top of the variable selector.

Guest

  • {{guest_first_name}} β€” Guest's first name (e.g., "John")
  • {{guest_last_name}} β€” Guest's last name (e.g., "Doe")
  • {{guest_full_name}} β€” Guest's full name (e.g., "John Doe")
  • {{guest_count}} β€” Number of guests / adults (e.g., "2")
  • {{guest_phone_number}} β€” Guest's full phone number (e.g., "+33612345678")
  • {{guest_phone_last_4}} β€” Last 4 digits of the guest's phone number (e.g., "7890")
  • {{guest_phone_last_6}} β€” Last 6 digits of the guest's phone number (e.g., "567890")

Host

  • {{host_first_name}} β€” Your first name (e.g., "Marie")
  • {{host_full_name}} β€” Your full name (e.g., "Marie Dupont")

Team

These variables are resolved with the team member selected on the template, and are most useful when Send via = Team member.

  • {{team_member_first_name}} β€” Team member's first name (e.g., "Sophie")
  • {{team_member_last_name}} β€” Team member's last name (e.g., "Martin")
  • {{team_member_full_name}} β€” Team member's full name (e.g., "Sophie Martin")

Dates

  • {{arrival_date}} β€” Check-in date in DD/MM/YYYY format (e.g., "15/03/2026")
  • {{departure_date}} β€” Check-out date (e.g., "20/03/2026")
  • {{number_of_nights}} β€” Number of nights (e.g., "5")
  • {{arrival_day_name}} β€” Day of the week of arrival (e.g., "Monday")
  • {{arrival_month_name}} β€” Month of arrival (e.g., "March")

Times

  • {{check_in_time}} β€” Check-in time in HH:MM format (e.g., "15:00")
  • {{check_out_time}} β€” Check-out time (e.g., "10:00")

Property

  • {{property_name}} β€” Property name (e.g., "Sunny Apartment")
  • {{property_address}} β€” Full address (e.g., "123 Rue de la Paix, Paris")
  • {{welcome_guide_url}} β€” Direct link to the property's welcome guide
  • {{smartlock_code}} β€” Guest's smart lock keypad code (when a smart lock is configured)
  • {{nuki_code}} β€” Same as above, kept as an alias for compatibility

Booking

  • {{booking_channel}} β€” Booking platform (e.g., "Airbnb")
  • {{reservation_number}} β€” Booking reference number
  • {{booking_amount}} β€” Total amount (e.g., "450.00")
  • {{currency}} β€” Currency code (e.g., "EUR")
  • {{identity_check_link}} β€” Personal link the guest opens to complete identity verification
  • {{deposit_payment_link}} β€” Personal link the guest opens to authorize the security deposit (pre-authorization, no immediate charge)
  • {{whatsapp_link}} β€” One-click WhatsApp link that opens the guest's dedicated conversation with you on WhatsApp. Useful to drop in OTA or email messages so the guest can move the conversation to WhatsApp in one tap.

Sending channels: where does each message actually go?

Understanding where each message ends up β€” and where the guest can reply β€” helps you pick the right combination of channels for each template.

OTA inbox (Airbnb, Booking.com, Expedia)

When Send via = Auto and the booking comes from an OTA, the message is delivered straight to the guest's inbox inside that booking platform. The guest receives it the same way they'd receive a manual message from you on Airbnb or Booking.com.

Visible in the Messages thread: yes. The message appears in the unified conversation thread in Nowistay's Messages section, alongside any other messages exchanged on that booking.

Email (Direct bookings, Vrbo, and as a WhatsApp fallback)

When the booking is a direct booking, a Vrbo booking, or when Send via = WhatsApp, Nowistay delivers the message by email to the guest's address. The sender name is your host name, and if the guest replies to the email, it will be routed to guest conversation and the AI will reply.

Visible in the Messages thread: yes

This means that if the guest hits "Reply" on the email, their reply lands directly in messages conversation thread of the guest along with all other channel messages (all is unified). The AI will answer automatically and you receive an email notifcation. You can also manually send a message byemail to the guest from the messages thread in the app.

WhatsApp

WhatsApp delivery happens when Send via = WhatsApp, or when Send via = Auto and the "Also send on WhatsApp" toggle is enabled. The short WhatsApp version of the message is sent to the guest's phone number.

Visible in the Messages thread: yes.

WhatsApp messages appear in the same unified conversation as OTA messages, with a small WhatsApp icon so you can tell them apart. From there you can keep chatting with the guest on WhatsApp directly from the Nowistay Messages section.

Team member email

When Send via = Team member, the message bypasses the guest entirely and is sent by email to the team member you selected on the template. The OTA inbox and WhatsApp are not used in this mode. This is the right channel for internal alerts and team coordination tied to a booking event (upcoming check-in, check-out, new booking received), not for traveler-facing communication.

Visible in the Messages thread: no. Team-member emails do not appear in the guest conversation thread (they are not sent to the guest). To confirm a team-member message was sent, open the clock icon (see "Monitor sent and scheduled messages" below): each scheduled message shows the recipient name and email, so you can tell guest messages apart from team-member ones.

Quick recap

  • Auto + Airbnb / Booking.com / Expedia booking β†’ OTA inbox. Shown in thread.
  • Auto + Direct booking or Vrbo β†’ Email (Reply-To = host email). Not shown in thread.
  • Auto + "Also send on WhatsApp" toggle ON β†’ OTA / email and WhatsApp. OTA and WhatsApp shown in thread; email not shown.
  • WhatsApp mode β†’ WhatsApp + email fallback. WhatsApp shown in thread; email not shown.
  • Team member mode β†’ email sent to the selected team member only (no OTA, no WhatsApp, no guest delivery). Not shown in thread.

Conditions: control when messages are sent

Below the message body, you'll find the Conditions section. Conditions let you fine-tune exactly which bookings trigger this message. Here's each condition explained:

Source platforms

Filter by the platform the booking came from.

  • All platforms (default) β€” sends for all bookings regardless of platform
  • Airbnb β€” only Airbnb bookings
  • Booking.com β€” only Booking.com bookings
  • Vrbo β€” only Vrbo bookings
  • Expedia β€” only Expedia bookings
  • Direct booking β€” only direct / manual bookings
  • Other β€” bookings from any other source

You can select multiple platforms. For example, select both "Airbnb" and "Booking.com" to cover OTA bookings but exclude direct ones.

When to use it: If you send different check-in instructions depending on the platform (for instance, Airbnb guests get a slightly different message than Booking.com guests), create two separate templates with different source platform filters.

Minimum stay (nights)

Only send the message if the guest is staying at least this many nights.

When to use it: You might want to send a special welcome message with extra tips for long stays (e.g., only for guests staying 7+ nights), or skip a detailed check-in reminder for one-night stays where it would arrive too late.

Booking status

Only send the message if the booking has this status. Options:

  • Confirmed (default) β€” only confirmed bookings
  • Pending β€” only pending bookings
  • Cancelled β€” only cancelled bookings
  • Unavailable β€” only when the dates are blocked

When to use it: In most cases, keep this set to "Confirmed" so you only message guests with firm reservations. You could create a specific template for cancelled bookings to send a follow-up or ask for feedback.

Max send window (hours)

If the message is running late (for example, because the booking was imported after the trigger time already passed), this setting controls how late is too late. If the message would be sent more than this many hours after the intended time, it's skipped entirely.

  • Default: 24 hours
  • Range: 1 to 72 hours

When to use it: If you import a batch of past bookings and don't want guests to receive a "check-in reminder" for a stay that already started 3 days ago, a 24-hour window prevents that from happening.

A real example with last-minute bookings: The default 24-hour window can work against you if you accept reservations late on the arrival day. Say your check-in time is 5:00 PM and your check-in instructions are set to send 24 hours before arrival. A guest books at 11:00 PM on the day of arrival, six hours after your check-in time. The intended send time for that message (24 hours before a 5:00 PM check-in) was 5:00 PM the previous day, so by the time the booking lands it is already 30 hours late. With the window left at its 24-hour default, the message is treated as too old and skipped, and that guest never receives their check-in instructions. It is an easy one to miss: you set the timing to "24 hours before" once and forget that the same window also caps how late a message can still go out.

How to fix it: Set the window wide enough to cover your latest possible booking. For a 5:00 PM check-in where you take reservations up to around 11:00 PM the same day, raise the max send window to 30 or 31 hours instead of 24. A last-minute guest then still gets the message right after booking, while genuinely old imported bookings are still filtered out. A simple way to size it: take the hours your message sends before check-in (24 here), add the gap between your check-in time and the latest time you accept bookings (about 6 hours), then add an hour of margin.

Conditions section of the template editor showing source platforms, minimum stay, booking status, max send window, and booking info conditions
The Conditions section β€” filter messages by platform, minimum stay, booking status, max send window, and custom booking info conditions

Booking info conditions (advanced)

These let you add custom rules based on specific booking information. Click "Add condition" to create one. Each condition has three parts:

1. Info type β€” what data to check:

  • Lock code β€” checks whether a smart lock keypad code has been generated for this guest
  • Check-in detected β€” checks whether the guest's physical arrival has been detected (via smart lock usage)
  • Identity Verification β€” checks the guest's identity verification status
  • Security deposit β€” checks the guest's security deposit authorization status
  • Booking ID β€” checks the booking's unique identifier. Useful to exclude a specific booking from an automatic message (for instance, after an incident on that reservation).
  • Guest full name β€” checks the guest's full name. Case-insensitive comparison, so capitalization in the value you enter doesn't matter.

2. Operator β€” how to check it:

  • Exists β€” the data is present (e.g., the guest has a lock code)
  • Does not exist β€” the data is absent (e.g., the guest doesn't have a lock code yet)
  • Equals β€” the data matches a specific value you enter
  • Does not equal β€” the data doesn't match a specific value
  • Contains β€” the data includes the value you enter as a substring (available for Guest full name only, case-insensitive)
  • Does not contain β€” the data does not include the value as a substring (available for Guest full name only, case-insensitive)

3. Value (required for "Equals", "Does not equal", "Contains", and "Does not contain") β€” the value to compare against. For Guest full name, the comparison ignores case (so "smith" matches "Smith"). For Booking ID, paste the exact booking ID β€” you can find it in the booking detail panel or in the URL of a booking page.

If no conditions are set, you'll see: "No conditions β€” message will always be sent."

Practical examples:

  • "Lock code" + "Exists" β€” Send this message only if the guest has been assigned a keypad code. Perfect for a template containing {{smartlock_code}} so you don't send a message with an empty code.
  • "Lock code" + "Does not exist" β€” Send only if there's no code yet. Useful for an alternative template giving different access instructions (e.g., lockbox location).
  • "Check-in detected" + "Exists" β€” Send only after the guest's physical arrival is detected by the smart lock. Great for a "welcome, you've arrived!" message.
  • "Identity Verification" + "Does not exist" β€” Send a friendly reminder containing {{identity_check_link}} only if the guest hasn't completed identity verification yet.
  • "Security deposit" + "Does not exist" β€” Send a reminder containing {{deposit_payment_link}} only if the guest hasn't authorized the deposit yet.
  • "Booking ID" + "Does not equal" + specific booking ID β€” Skip the standard thank-you note for one specific booking. Useful after an incident: you don't want the automatic "thanks for staying with us, please leave a review" message to go out, but you also don't want to disable the template for every other guest.
  • "Guest full name" + "Contains" + "VIP" β€” Send only when the guest's full name contains the substring "VIP" (case-insensitive). Pair it with a separate, more personal template for those bookings.
  • "Guest full name" + "Does not contain" + "test" β€” Exclude internal test bookings whose guest name contains "test" from your real guest messages.

You can add multiple conditions β€” all must be met for the message to send. Remove a condition by clicking the X button next to it.

Active toggle

At the bottom of the editor, the Active switch lets you enable or disable a template. When turned off, the template won't trigger for new bookings but is kept so you can reactivate it later.

Multilingual templates: send messages in your guest's language

One of the most powerful features of Nowistay's automated messages is built-in multilingual support. Instead of creating separate templates for each language, you can add language variations directly within a single template. When the message is sent, Nowistay automatically detects the guest's language from their booking profile and sends the matching version.

How it works

Each template has a default language β€” this is the main version you write first (typically the language most of your guests speak). You can then add translations for up to 15 supported languages including English, French, Spanish, German, Italian, Portuguese, Dutch, Japanese, Korean, Chinese, Arabic, Hindi, Bengali, Turkish, and Russian.

When a message is scheduled for a guest:

  1. Nowistay checks the guest's language from their booking profile (detected from the platform they booked on)
  2. If a translation exists in that language, the guest receives the localized version
  3. If no translation exists for their language, the guest receives the default language version

This means you don't need to worry about every language β€” just add translations for the ones that matter most to your guests, and the default version covers everyone else.

Adding a language variation

To add a new language to a template:

  1. Open the template in the editor
  2. You'll see a language tab at the top showing your default language (e.g., "EN")
  3. Click the "+" button next to the language tabs to add a new language
  4. Select the language you want from the dropdown (e.g., French, Spanish, German)
  5. A new tab appears β€” click on it to switch to that language
  6. Write the subject and message body in the selected language
  7. Click Save

You can switch between language tabs at any time to edit each version independently. Each language variation has its own subject and message body (and its own WhatsApp version), but shares the same trigger event, timing, conditions, and properties.

Generate translations with AI

Don't want to translate manually? Nowistay can translate your template using AI. When editing a language variation:

  1. Switch to the language tab you want to translate into
  2. Click the "Translate from default" button
  3. The AI translates your default language content into the selected language, preserving all {{variables}} exactly as they are
  4. Review the translation and make any adjustments you'd like

The AI translation is smart enough to produce natural, contextually appropriate messages β€” not word-for-word literal translations. It also handles all dynamic variables correctly, so {{guest_first_name}} or {{property_address}} will still be replaced with the right values when the message is sent.

Removing a language

To remove a language variation you no longer need, switch to that language tab and click the remove button. The default language cannot be removed.

Tips for multilingual templates

  • Start with your default language β€” write the most complete version first, then translate from there
  • Use AI translation as a starting point β€” generate the translation, then refine the tone and phrasing to match your style
  • Focus on your top languages β€” check your booking history to see which languages your guests speak most, and prioritize those
  • Keep variables consistent β€” all language versions use the same {{variables}}, so they work identically regardless of language
  • The default is your safety net β€” any guest whose language isn't covered will receive the default version, so make sure it's well-written and universally understandable

Step 6: Preview and test your messages

Before going live, you can preview exactly what your guest will see and even send a real test message.

  1. In the templates panel, find the template you want to test
  2. Click the eye icon (Preview) on the right side of the template card
  3. The "Message Preview" dialog opens
  4. Select a recent booking from the "Select a booking" dropdown β€” it shows bookings from the last 7 days with the guest name, arrival date, and status
  5. Click "Preview" to see the resolved message

Manual templates: editable preview. If the template's trigger event is "Manual", the Subject and Message body fields are editable directly in the preview. The standard resolution still runs (every variable is replaced with the booking's real data), so you start from a fully filled-in message and only tweak the parts you want to change for this specific booking. The WhatsApp body is also editable when the template uses WhatsApp delivery. For all other trigger events, the preview is read-only.

The preview shows:

  • Subject β€” with all variables replaced by real data (e.g., "Welcome to Villa Sunset, John!")
  • Message β€” the full standard body with actual values
  • WhatsApp message β€” the resolved WhatsApp version, when WhatsApp delivery applies
  • "Ready to send via..." β€” a small banner listing the exact channels that will be used for this booking (e.g., "Ready to send via Airbnb and WhatsApp")

Check eligibility

The system also checks whether this message would actually be sent for the selected booking. If it wouldn't, you'll see a reason explaining why, including:

  • "This message template is disabled" β€” the template's Active switch is turned off
  • "This booking's platform does not match the template's allowed platforms" β€” the booking is from a platform not included in the Source platforms condition
  • "This booking's stay is shorter than the minimum required by the template" β€” the stay is too short for the minimum stay condition
  • "This booking's status does not match the template's required status" β€” the booking status doesn't match
  • "This booking does not meet the template's conditions" β€” one or more advanced conditions are not met (identity verification, deposit, lock code, check-in detected)
  • "No available delivery channel for this booking" β€” neither OTA, email, nor WhatsApp can be used (for instance, a Vrbo booking with no usable guest email)

This makes it easy to debug why a particular guest didn't receive a message.

Send a test message

If the message is eligible, you'll see a "Send now" button with a warning: "This will send a real message to the guest through their booking platform."

Click "Send now" and confirm to send the message immediately for that booking. The button changes to "Message sent!" once delivered. This is useful for testing, or for manually sending a one-off message to a specific guest.

Message Preview dialog showing a real booking preview with resolved subject line, full message content, and Send now button
The Preview dialog β€” select a booking, preview the resolved message, and optionally send it immediately

Manage your templates

Back in the templates panel, you have several ways to organize your templates:

Reorder templates

Templates are grouped by trigger event (Booking Confirmed in green, Check-in in blue, Check-out in orange). Within each group, drag the handle on the left side of any template to reorder. If multiple templates match a booking, they send in this order.

Toggle on/off

Each template card has an on/off switch on the right side. Inactive templates appear with a dashed border and muted background so you can easily spot them. Turning a template off keeps it saved β€” you won't lose your work.

Filter by property

Use the "Filter by property" dropdown at the top of the panel to see only templates that apply to a specific property, or choose "All templates" to see everything.

Duplicate a template

Click the duplicate icon on a template card to create a copy you can adjust β€” useful when you want one template per OTA, or per property, with small variations.

Delete a template

Click the trash icon on any template card. You'll be asked to confirm: "Are you sure you want to delete this message template?"

Monitor sent and scheduled messages (the clock icon)

Click the clock icon at the bottom-right of the templates panel to open the "Scheduled Messages" view. This is your full history per guest, including emails that don't appear in the in-app Messages thread.

  1. Select a property from the dropdown
  2. Filter by status:
    • Pending β€” scheduled messages, sorted by closest send date
    • Sent β€” already delivered messages, sorted by most recent

Each entry shows:

  • The message subject
  • A color-coded tag by event (green for Booking Confirmed, blue for Check-in, orange for Check-out)
  • The guest's name
  • The scheduled send time in the property's timezone

The list loads 20 messages at a time and loads more as you scroll down.

Tip: if you want to verify that an automated email was actually delivered to a Direct or Vrbo guest (since email messages don't show up in the Messages thread), the Scheduled Messages view is where you'll see it.

Scheduled Messages view showing pending messages with color-coded trigger tags, guest names, and scheduled send times
The Scheduled Messages view β€” monitor all pending and sent messages for each property

Tips for great automated messages

  • Keep it personal β€” Use variables like {{guest_first_name}} and {{property_name}} to make the message feel warm, not robotic
  • Time it right β€” A reminder 24 hours before check-in gives guests time to prepare. A thank-you at check-out leaves a lasting impression
  • Include your welcome guide β€” Use {{welcome_guide_url}} so your guests have everything they need in one link
  • Drop a WhatsApp link in your OTA message β€” Use {{whatsapp_link}} so the guest can move the conversation to WhatsApp in one tap. It opens their dedicated conversation with you on WhatsApp.
  • Pair conditions with payment / identity links β€” Use {{identity_check_link}} with the "Identity Verification β€” Does not exist" condition, and {{deposit_payment_link}} with the "Security deposit β€” Does not exist" condition, so the reminders only go out when there's actually something to do.
  • Use conditions smartly with smart locks β€” Create one template with the "Lock code β€” Exists" condition that includes {{smartlock_code}}, and a separate template with "Lock code β€” Does not exist" that gives alternative access instructions
  • Go multilingual β€” Add translations for the languages your guests speak most. Even just adding French and Spanish covers a huge portion of international travelers
  • Add WhatsApp on top of Auto β€” Turn on "Also send on WhatsApp" so important messages (check-in instructions, smart lock code) reach your guest on WhatsApp in addition to their OTA inbox
  • Start with AI, then refine β€” Let the AI generate your first templates and translations, then tweak the tone and details to match your style
  • Check the preview β€” Always preview a template with a real booking before going live to verify variables are replaced correctly and the right channels are listed in "Ready to send via..."

Ready to Put Your Rental on Autopilot?

Join 300+ property managers who save hours every week with AI-powered guest communication.