company logo

Help center

Go to Hello Hotel
BlogPricingAboutRoadmap
All collectionsAutomationsUsing Conditions

Using Conditions

Add conditions to your automations to check guest details, tags, reservation status, room status, time of day, and more before taking action.

Conditions let you add logic to your automations. Instead of sending the same message to every guest, you can check for specific criteria and take different actions depending on the result.

Every condition has two paths: true (the condition passes) and false (it doesn't). You connect different actions to each path in the automation builder.

Conditions are one piece of the automation builder.

Some conditions require a PMS connection. Stay & Reservation, Room (Space) Status, Payment & Billing, Identity & Compliance, Booking Channel, Booking Source, and Reservation Date conditions read from your PMS in real time — they only appear in the condition menu if your account is connected to a PMS (Mews or Cloudbeds). Workflows that use them show a "Needs PMS" badge until a PMS is connected. With Cloudbeds, the editor hides what Cloudbeds can't answer — space status (use Room instead), card on file and pre-authorization, identity documents, and whether the guest checked in online. A workflow saved with one of those under Mews is flagged if the property switches to Cloudbeds, rather than silently never matching.

Guest Tags

Checks whether the guest has specific tags on their profile.

Add one or more tags to check for, then choose how they're matched:

  • Any (default) — passes if the guest has at least one of the listed tags

  • All — passes only if the guest has every tag listed

Example

Check if the guest has a "VIP" tag. If true, send a personalized welcome message. If false, send the standard message.

Guest Profile

Checks whether the guest's profile has specific information filled in. Select one or more fields to check:

  • Has Phone — guest has a phone number on file

  • Has Email — guest has an email address on file

  • Has First Name — guest has a first name on file

  • Has Last Name — guest has a last name on file

  • Has Address — guest has an address on file in your PMS

  • Is Repeat Guest — guest has more than one reservation on record

When you select multiple fields, use the Any/All toggle:

  • Any — passes if at least one selected field is true

  • All — passes only if every selected field is true

Example

Before sending an SMS, check if the guest has a phone number. Route the true path to "Send SMS" and the false path to "Send Email" (or skip the action entirely).

Stay & Reservation

Checks the current status of the guest's reservation. Options include:

  • Checked In — the guest's reservation is active (Started status)

  • Not Checked In — the guest's reservation is not active

  • Status matches — the reservation matches a specific status (Confirmed, Enquired, Started, Processed, Canceled)

Example

Trigger on "Checking in today" via a scheduled automation, then add a Stay & Reservation condition to verify the guest is still in Confirmed status before sending a pre-arrival message. This prevents sending the message to guests who were checked in early.

Guest Has Phone / Guest Has Email

Simple yes/no checks for whether the guest has a phone number or email address on file. These are standalone condition types that do the same thing as the matching fields in Guest Profile — use whichever is more convenient for your workflow.

Guest Checked In

Checks whether the guest is currently checked in — meaning they have an active stay with a check-in recorded and no check-out yet. This is a more specific check than Stay & Reservation's "Checked In" because it verifies the actual check-in event, not just the reservation status.

Payment & Billing

Checks payment and billing status tied to the guest's current reservation — not their overall account. This is pulled from your PMS in real time. Select one or more fields:

  • Has Card on File — guest has an active credit card in your PMS

  • Has Pre-Authorization — a pre-authorization hold exists for this reservation

  • Balance Is Zero — this reservation's balance is fully paid

  • Balance Is Not Zero — this reservation has an outstanding balance

Use the Any/All toggle when selecting multiple fields.

Good to know: These checks are scoped to the reservation associated with the automation's trigger — not the guest's total account across all stays. For example, "Balance Is Zero" checks whether this reservation is paid, not whether the guest has a zero balance overall.

Example

Before sending a check-in link, verify the guest has a card on file and a pre-authorization for this stay. If not, send a payment reminder instead.

Identity & Compliance

Checks guest identity and compliance data from your PMS in real time.

  • Has Uploaded Documents — guest has identity documents on file in your PMS. This checks that documents have been uploaded — it does not verify their validity or completeness.

  • Has Marketing Consent — guest has opted in to marketing communications in your PMS.

Use the Any/All toggle when selecting multiple fields.

Example

Before sending a marketing follow-up after checkout, check if the guest has given marketing consent. Only send the message on the true path.

Booking Channel

Checks the broad category the reservation came in through.

  • Direct — booked directly (phone, walk-in, your own booking engine via Mews's Distributor origin)

  • Booking Engine — booked via Mews Booking Engine

  • OTA — booked via a channel manager (Booking.com, Airbnb, Expedia, Vrbo, etc.)

Example

Send a different welcome message to OTA guests (who haven't given you their email yet) than to direct bookers (whom you can warmly thank for booking direct).

Booking Source

Checks the specific source the reservation came from. Use this when you need finer granularity than Booking Channel — for example, when "all OTAs" isn't enough and you want to target Airbnb guests specifically.

  • Known channels — a built-in catalog of the major OTAs (Booking.com, Airbnb, Expedia, Vrbo, Hotels.com, Agoda). Pick one or more.

  • Other sources — pull from a live list of source names in your reservation data, so you can target phone bookings, email bookings, or smaller channel managers by their exact source name in Mews.

Use the any/none match toggle to either require a matching source or exclude one.

Example

Send Airbnb guests an extra message reminding them to use your direct site next time, with a discount code — but exclude Booking.com guests, who have stricter OTA rules about steering.

Airbnb reservations arrive in Mews with no email address, so a Mews check-in link can’t be created for them. Put a Booking Source condition on Airbnb in your pre-arrival workflow: the Airbnb branch texts the guest their door code, everyone else gets the check-in link. See Mews Magic Links.

Reservation Date

Checks how the reservation lines up against today's date.

  • Reservation started N days ago — passes if the guest's check-in date was exactly N days ago. Useful for "follow up two days after check-in" or "mid-stay touchpoint on day 3" automations.

Example

Pair a daily Scheduled trigger with Reservation started 2 days ago to send a "how's your stay going?" message every guest gets on day 3 of their stay.

Room (Space) Status

Checks the current status of the guest's room. In Mews, rooms are called "spaces" — that's the term you'll see here. Status values come from your PMS in real time.

Common statuses include:

  • Clean — the room is ready for the next guest

  • Dirty — the room needs to be cleaned

  • Inspected — the room has passed inspection and is ready

  • Out of order — the room is not currently available

Example

For an automated check-in message, add a room status condition that only sends the door code if the space is Clean or Inspected. If the room isn't ready, route the false path to alert your team.

Room (Cloudbeds)

The Cloudbeds counterpart of Room (Space) Status. It checks the guest's assigned room against the Cloudbeds housekeeping board at the moment the condition runs:

  • Clean

  • Dirty

A room that isn't on the housekeeping board matches neither path. This condition only appears for Cloudbeds properties; Mews properties use Room (Space) Status.

Phone Number Region

Checks where the guest's phone number is from, so you can treat local and international guests differently — for example, text guests with a local number and email everyone else.

  • Inside or outside your hotel's country — "your country" is worked out from the phone line the workflow sends from, or you can pin it to a specific country in the condition. The editor shows which country it resolved to, and warns you if your lines span more than one country.

  • Inside or outside a list of countries you pick

  • Match by country or by dialing code — matching by dialing code lets a US hotel treat all of +1 as local.

A guest with no phone number, or one that can't be read, matches neither path. This condition doesn't need a PMS.

Example

Before a pre-arrival text, check Phone Number Region → inside your country. Send the SMS on the true path and an email on the false path, so international guests aren't left out.

Day of Week and Time of Day

Checks the current day or time when the automation runs. Use this to scope automations to business hours, weekdays, weekends, or specific times of day.

  • Day of week — pick one or more days (Monday through Sunday)

  • Time of day — pick a window (e.g., between 9 AM and 5 PM)

Example

For a workflow that sends automated SMS, add a time-of-day condition that only sends between 8 AM and 9 PM in the guest's local time. Texts sent at 3 AM tend to wake people up.

Tips

  • Stack conditions for precision. You can add multiple conditions in sequence — for example, first check if the guest has a phone number, then check if they're a repeat guest, and only then send a VIP SMS.

  • Use the false path. Don't just ignore it — route it to an alternative action. If a guest doesn't have a phone number, maybe send an email instead.

  • Conditions are evaluated in real time. The check happens when the automation reaches that step, not when the trigger fires. If a guest's profile is updated between the trigger and the condition, the condition uses the latest data.

Did this answer your question?
😞
😐
😁