Prerequisites
This guide assumes you have already connected a Twilio account to Waitlist App Premium. If you haven't, start with the Twilio setup guide first — the SMS Alerts panel has no effect until Twilio is connected.
The Three Lifecycle Events
Every waitlist entry moves through up to three states, and each has a corresponding SMS event you can auto-fire.
1. Added — “You're on the list”
Fires the instant a customer is added to the queue (either from the dashboard or via the MCP add_entry tool). The most valuable use is sending a tracking link: the placeholder {{'{{ tracking_url }}'}} renders to a page where the customer can see their live position and estimated wait time without having to stand at the host stand.
Default template:
You've been added to {{'{{ business_name }}'}}. Track your place: {{'{{ tracking_url }}'}}Recommended upgrades:
- “Hi {{'{{ name }}'}}, you're #{{'{{ position }}'}} in line at {{'{{ business_name }}'}} (party of {{'{{ party_size }}'}}). We'll text you when your table is ready. Track: {{'{{ tracking_url }}'}}”
- “{{'{{ business_name }}'}}: you're on the list! We'll text when ready. See your spot: {{'{{ tracking_url }}'}}”
2. Notified — “Your turn”
Fires when you mark the entry as notified. This is the single highest-value SMS in the lifecycle — it's the difference between a customer standing in a crowded lobby for 40 minutes and walking next door for coffee while they wait.
Default template:
Your table is ready at {{'{{ business_name }}'}}! Please return within 10 minutes.Best practices:
- State the deadline explicitly. “Please return within 10 minutes” beats “please return soon” every time.
- Include the name. “Hi {{'{{ name }}'}}, your table at {{'{{ business_name }}'}}…” reduces confusion in families where one number covers multiple diners.
- Include reply-STOP language if required. Some carriers require it; Twilio auto-appends by default.
3. Seated — “Thanks”
Fires when you mark the entry as seated. This is the “goodbye” text and it's the perfect place to ask for reviews, offer a return discount, or just say thank you.
Default template:
Thanks for visiting {{'{{ business_name }}'}}!Higher-converting examples:
- “Thanks for dining at {{'{{ business_name }}'}}, {{'{{ name }}'}}! If you enjoyed your visit, a quick Google review means the world: https://g.page/r/xxxxx/review”
- “{{'{{ business_name }}'}}: thanks for choosing us. Next time, show this text for 10% off: CODE {{ '{{' }} token {{ '}}' }}” (note: the
tokenplaceholder is not currently exposed; use your own coupon code).
Available Placeholders
Every template supports these variables, replaced at send time:
{{'{{ name }}'}}— the customer's name.{{'{{ business_name }}'}}— your configured business name.{{'{{ tracking_url }}'}}— the per-entry public tracking page (e.g.https://waitlistapp.org/q/abc123). Short enough to fit on one line, no login required.{{'{{ position }}'}}— numeric queue position (1, 2, 3…).{{'{{ party_size }}'}}— number of people in the group.
Unknown placeholders are left as-is rather than silently replaced with empty strings — so if you typo {{'{{ naem }}'}} it will show up literally in the SMS, which is your cue to fix it.
Character Limits and Segmentation
Twilio charges per 160-character GSM-7 segment. Emoji, accented characters, and curly quotes force your message into Unicode (UCS-2) encoding, which drops the per-segment limit to 70 characters. In practice:
- Short English templates (<160 chars, no emoji) — 1 segment, lowest cost.
- Templates with
{{'{{ tracking_url }}'}}tend to land at 130–180 chars once substituted. If yours is close to 160, consider shortening. - Using an emoji (🍽, 👍) bumps the entire message to Unicode — which can triple the segment count. Skip emoji in auto-fired SMS unless you're deliberate about the cost.
Waitlist App caps each template at 480 characters, which is roughly 3 SMS segments at best. If you want something longer, send it manually via notify_entry with a custom body parameter.
How Auto-Triggers Interact with Manual Sends
The three toggles in SMS Alerts only control automatic behavior. You can always send an SMS manually regardless of toggle state:
- From the Pro dashboard, the Send Notification button in the actions modal (or the one-tap button after adding a customer) routes through Twilio when SMS Alerts is enabled, and falls back to the browser's native SMS app when it's not.
- From Claude or the API, calling
notify_entrysends regardless of the auto-trigger toggle, as long as SMS Alerts is enabled and Twilio is configured.
In other words: the master “Enable SMS Alerts” toggle gates the entire server-side SMS pipeline; the per-event toggles only control whether we also send automatically when the state changes.
Testing Your Templates
The fastest way to test a template without spamming real customers is:
- Write the template in Settings → SMS Alerts and save.
- Add a test entry to the waitlist with your own phone number.
- Toggle the entry through Added → Notified → Seated to trigger each event.
Each message counts as one Twilio segment (~$0.01 in the US) so a full three-event run costs you 3¢.
Multi-Location and Multi-Language
Templates are scoped to your user account, which means a single Waitlist App login has one set of templates. If you operate multiple locations with different voices or different languages, create a separate Premium account per location — each has its own Twilio integration and its own templates. Premium accounts are priced per-seat so there is no penalty for running a few.
We're watching demand on multi-location within a single account; if that matches your use case, let us know.
Troubleshooting
An auto-trigger is enabled but no SMS sends: Check in order — (1) is the master Enable SMS Alerts switch on? (2) is the entry's phone number populated? (3) is Twilio still connected in the Integrations tab? (4) is the Twilio account funded? The Pro dashboard's Send Test SMS feature is the fastest way to isolate steps 3–4.
Placeholder shows up literally in the SMS: You have a typo in the variable name or used the wrong brace style. Only {{ '{{' }} name {{ '}}' }} with double curly braces is substituted.
Customers reply and you never see it: Twilio forwards SMS replies to a webhook that Waitlist App does not currently ingest. For now, add a line to your templates: “Reply calls won't reach us — if you need to cancel, reply here: <your mobile>.” Inbound SMS is on our roadmap.
Next Steps
- Connect an AI assistant: Managing Your Queue with Claude via MCP
- Return to the Twilio basics: Twilio Setup Guide