Placeholders you can use in automation messages

Last updated: Aug 24, 2026

Placeholders are tokens in curly braces — like {first_name} or {date} — that Dispatch Bros swaps for the real customer and job details the moment each automation message sends. You'll find them in every workflow editor under Automations → Workflows → Configure: clickable chips below the Message Template box insert them, and a live preview shows the result.

The full placeholder list

PlaceholderWhat it inserts
{first_name}Customer first name
{last_name}Customer last name
{company_name}Your company name
{job_source}Job source name
{job_number}Job number
{date}Scheduled date
{time_frame}Arrival window (e.g. 7:00 AM - 10:00 AM)
{tech_name}Assigned technician
{invoice_number}Invoice number
{estimate_number}Estimate number
{amount}Dollar amount
{review_link}Smart review link for the job source
{recipient_name}Recipient display name (team workflows only)
{job_status}Job status snapshot at queue time
{address}Job service address (customer address fallback)
{business_name}Business name of the line the customer called (falls back to job source, then company)
{phone_name}The phone number's Name — the Google Maps listing of the line the customer called (same value as business_name)

{time} also works as a backward-compatible alias for {time_frame}.

Using placeholders in the editor

  1. Open Automations → Workflows and click Configure on any automation.
  2. Type your message in the Message Template box, or click the placeholder chips underneath to insert tokens.
  3. Check the block labeled "Preview with sample data:" — it renders your template with realistic sample values so you can see the finished text before anything sends.
  4. Press Save Changes.

The same chips and preview appear on the Follow-up message box in the Resend if no response section, so reminders can be personalized too (resend details).

Which placeholders fit which automation

  • Customer messages (confirmations, reminders, review requests, missed-call text-back): stick to the customer/job group — {first_name}, {company_name}, {date}, {time_frame}, {tech_name}, {job_number}, {address}, {review_link}.
  • Multi-brand phone setups: {business_name} and {phone_name} insert the name of the specific line the customer called, so one automation can speak for many listings (how that works).
  • Team Notifications: {recipient_name} and {job_status} resolve only in team workflows that message your own staff or partners.

Troubleshooting

  • A warning saying "Unknown variable" appears under the box — you typed a token the engine doesn't know (a typo like {first_nane}). The warning lists the offenders and notes they "will be replaced with empty text." Fix the spelling before saving, or your customers get a message with a hole in it.
  • A valid placeholder came out empty in a real send — the job simply had no value for it (for example {tech_name} on a job with no assigned technician, or {review_link} when the source has no review link). Check the job's data, and see the run's expanded details in the Runs tab.
  • The preview looks right but you want different wording per job source — make a copy of the automation per source (scope to a source).

FAQ

How do I insert a placeholder without typing it?

In the workflow editor, click any placeholder chip under the message box — it appends the token to your template. A live preview with sample data shows exactly how the finished text reads.

What happens if I type a placeholder that doesn't exist?

The editor warns you immediately, and unknown variables are replaced with empty text when the message sends — so always fix them before saving.

Is {time} the same as {time_frame}?

Yes — {time} is a backward-compatible alias for {time_frame}, the customer's arrival window. New templates should use {time_frame}.

Why are {recipient_name} and {job_status} not filling in my customer message?

They're team-workflow placeholders — they resolve for Team Notification automations that text your own staff, not for customer-facing messages.

Related articles