Skip to main content
All CollectionsMessages
[New Settings] Using advanced data variables
[New Settings] Using advanced data variables

Learn about advanced data variables to customize your message templates.

Lindsey Gagnon avatar
Written by Lindsey Gagnon
Updated this week

Personalizing your messages with variables in Waitwhile allows you to create dynamic, tailored communication that enhances the customer experience. By using variables, you can insert relevant customer data—such as names, appointment times, or waitlist positions—into messages automatically, making each message feel personal and relevant without manual effort.

In this article, we’ll explain our more advanced placeholders and how to configure them within Waitwhile.

Advanced variable options:

Variable options in Waitwhile are organized into several categories. Choose a category below to jump directly to the relevant variables:

Customer and visit data

Placeholder variables for Input Field values that have been enable from your default Customer details.

Data Variable

Description & Rules

Example Value

{{ name }}

Name

Customer's first name or full name. It depends on the "Separate first and last name" setting in Settings > Waitlist > Customer info > Name
Additional rules:
* if it has space, only the first word is inserted ("John Doe" -> "John")
* for SMSes, if the length is still more than 9 characters the first character is inserted ("Constantine" -> "C")

Jane
Jane Doe
C

{{ firstName }}

First Name

Jane

{{ lastName }}

Last Name

Doe

{{ id }}

Customer ID

WW123

{{ phone }}

Phone

(555) 555-5555

{{ email }}

Email

{{ partySize }}

Party Size

5

{{ notes }}

Notes

Also interested in a color consultation.

Custom data fields

To use variables for custom data fields, you need to know the custom field ID (dataFieldId) which is used as part of the variable.

The data field Id can be found by clicking on the custom field and opening the summary details of the created field.

Custom data field variables:

Data Variable

Description & Rules

Example Value

{{ fields.dataFieldId.id }}

Example:

{fields.DFxlYIdtBNJoqQ2Kcxr1.id}

Custom Field ID (dataFieldId)

DFxlYIdtBNJoqQ2Kcxr1

{{ fields.dataFieldId.name }}

Custom Field name

Age

{{ fields.dataFieldId.displayName }}

Custom Field display name

Your age

{{ fields.dataFieldId.description }}

Custom Field description

It helps us with preparing the right choice of hairstyles for you

{{ fields.dataFieldId.value }}

Custom Field value or values (for multiple selected options it will be comma-separated)

20 (for "Age")
undercut, low taper, high razor (for "Preferred styles")

{{ dataField }}

Comma-separated display names or names (if display name is unavailable) and values of all custom fields assigned to the visit

Age: 20, Hair color: brown, Preferred styles: undercut, low taper, high razor

Resources

To use variables for an individual Resource, you need to know the Resource ID (resourceID) which is used as part of the variable. The resourceId can be found within the summary view for each Resource.

Resource variables:

Data Variable

Description & Rules

Example Value

{{ resource }}

Comma-separated display names or names (if display name is unavailable) of all resources assigned to the visit. If a category is assigned the name is "first available"

Adam, Monica

{{ resources.resourceId.id }}

Resource ID

OpMm9pOf7OTWhuiKYpH6

{{ resources.resourceId.name }}

Resource name

Monica

{{ resources.resourceId.displayName }}

Resource display name

Monica Roberts

{{ resources.resourceId.firstName }}

First word of display name or name (if display name is unavailable)

Monica

{{ resources.resourceId.lastName }}

Second word of display name or name (if display name is unavailable)

Roberts

{{ resources.resourceId.description }}

Resource description

Our best barber

{{ resources.resourceId.phone }}

Resource phone

+15417543010

{{ resources.resourceId.email }}

Resource email.
Note that these email addresses can only be added to Email templates. External, non-Waitwhile emails can be added to the SMS templates only on the Enterprise plan.

{{ resources.resourceId.url }}

Resource URL (eg. zoom meeting link, link to a profile, etc.) Note that these links can only be added to Email templates. External, non-Waitwhile links can be added to the SMS templates only on the Enterprise plan.

{{ resources.resourceId.location }}

Resource location, where the resource is located

Counter A

Services

To use variables for an individual Service, you need to know the Service ID (serviceID) which is used as part of the variable. The serviceId can be found within the summary view for each service

Service variables:

Data Variable

Description & Rules

Example Value

{{ service }}

Comma-separated display names or names (if display name is unavailable) of all services assigned to the visit. If a category is assigned the name is "first available"

Beard styling, Head shave

{{ services.serviceId.id }}

Service ID

XvuPoO3hWvSk9KRMenBV

{{ services.serviceId.name }}

Service name

Beard

{{ services.serviceId.displayName }}

Service display name

Beard styling

{{ services.serviceId.description }}

Service description

This option is for everyone looking to achieve an even beard and sharp look

{{ services.serviceId.currency }}

Service currency

USD

{{ services.serviceId.price }}

Service price

$20.00

Other Data Variables

Data Variable

Description & Rules

Example Value

{{ fullName }}

Customer's first name + Last name or name. It depends on the "Separate first and last name" setting in Settings > Waitlist > Customer info > Name

Jane Doe

{{ business }}

Location business name (Settings > Business info > Business name)

Bobby's Barber Shop

{{ waitlist }}

Location name (Settings > Waitlist > Location name)

Barber Shop

{{ currency }}

Location currency (Settings > Localization > Currency)

USD

{{ locale }}

Visit or location locale Settings > Localization > Language & Region > Select language/Select region

en-US

{{ timezone }}

Location timezone (Settings > Localization > Timezone)

America/Los_Angeles

{{ link }}

Unique Waitwhile link to the visit

app.waitwhile.com/l/barbershop/eiyM19

{{ quote }}

Quoted wait duration (in seconds)

900

{{ date }}

Booking date or visit creation date in the location timezone ("MMM Do" format)

Mar 13th

{{ calendar }}

Booking date or visit creation date in the location timezone (Calendar time format)

Last Friday at 2:00 PM

{{ dateTime }}

Booking date or visit creation date in the location timezone ("L LT" format)

03/13/2020 2:00 PM

{{ time }}

Booking date or visit creation date in the location timezone ("LT" format)

2:00 PM

{{ hour }}

Booking date or visit creation date in the location timezone ("LT" format)

2:00 PM

{{ eta }}

Estimated wait duration (humanized)

15 minutes

{{ placeInLine }}

Position in the line

2

{{ order }}

Same as placeInLine

2

{{ location }}

Entire location object including, but not limited to, fields listed in the API docs.

102 Street Avenue (location.address.street)
https://test.com/test (location.website)
FejxZ0WWpXTjzIScVEq0 (location.id)
+16005551234 (location.phone)

{{ locationsLink }}

All locations public waitlist URL. The recipient's phone or email is pre-filled (depending on the message channel)

app.waitwhile.com/lists/barbercenter?email=john%40doe.com
app.waitwhile.com/lists/barbercenter?phone=%2B12025550117

{{ locationsCheckInLink }}

All locations public check-in URL. The recipient's phone or email is pre-filled (depending on the message channel)

app.waitwhile.com/lists/barbercenter/join?email=john%40doe.com
app.waitwhile.com/lists/barbercenter/join?phone=%2B12025550117

{{ checkInLink }}

Public check-in URL. The recipient's phone or email is pre-filled (depending on the message channel)

app.waitwhile.com/checkin/barbershop?email=john%40doe.com
app.waitwhile.com/checkin/barbershop?phone=%2B12025550117

{{ schedulingLink }}

Public scheduling URL. The recipient's phone or email is pre-filled (depending on the message channel)

app.waitwhile.com/book/barbershop?email=john%40doe.com
app.waitwhile.com/book/barbershop?phone=%2B12025550117

{{ emailUrl }}

The recipient's email (URI-encoded)

john%40doe.com

{{ phoneUrl }}

The recipient's phone (URI-encoded)

%2B12025550117

{{ account.id }}

Account ID

AKCEACuvPvR1SaTdnrjP

Note: Placeholders cannot be used within localization fields or HTML areas for Public Pages (with a couple exceptions below).

Using Placeholders in HTML Areas for Public Pages

Only two placeholders are currently supported within HTML areas which can be used on Public Pages, such as your Welcome Page.

Data Variable

Description & Rules

Example Value

{business}

Location's business name (Settings > Business info > Business name)

Outdoor Equipment Store

{location}

Location/waitlist name (Settings > Waitlist > Location Name)

Shoe Department

Setting fallback text

In case certain fields (e.g name) are empty, configure fallback text to avoid blank spaces. Variables that are eligible for fallback text are identified in yellow.

To set fallback text, click on the yellow variable text and type in the fallback text you want to use

Example:

"Hi {{ name | default: "Valued Customer" }}! Thank you for registering for the waitlist at {business}. Your current estimated wait time is {eta}."

Using variables in Waitwhile helps you create personalized and professional communication at scale. Whether you’re confirming an appointment or sending a waitlist status update, dynamic variables save you time and make every message feel tailored to each customer.


Have additional questions or need assistance? Reach out to us via chat or at support@waitwhile.com.

Did this answer your question?