Merge Fields
Personalize automation messages with dynamic data from your contacts, estimates, and jobs.
Merge Fields
Merge fields let you insert dynamic data into your automation messages. Instead of writing a generic message, you can address the customer by name, reference their estimate total, or include a payment link -- all automatically.
Syntax
Merge fields use the [field.name] format. For example:
Hi [customer.first_name], thanks for requesting an estimate!When the workflow runs, the engine replaces [customer.first_name] with the actual customer name from the contact record.
Using the Merge Field Toolbar
When editing an SMS, email subject, email body, note, call whisper, or text-to-speech message in the Guided Editor or visual builder, an Insert live data field picker appears beside the form field. Its help text explains that the bracketed token is replaced with real record data when the automation runs. It has tabs for each category:
- Customer -- contact information
- Organization -- your company details
- Estimate -- estimate data
- Job -- job data
- Invoice -- invoice data
- Appointment -- scheduling data
Click any field pill to insert it at your cursor position in the text area.
Available Fields
Customer
| Field | Example |
|---|---|
[customer.first_name] | John |
[customer.last_name] | Smith |
[customer.full_name] | John Smith |
[customer.email] | john@example.com |
[customer.phone] | (555) 123-4567 |
[customer.address] | 123 Main St |
[customer.city] | Tampa |
[customer.state] | FL |
[customer.zip] | 33601 |
Organization
| Field | Example |
|---|---|
[company.name] | Tampa Bay Power Wash |
[company.phone] | (813) 555-0100 |
[company.email] | info@tbpowerwash.com |
[company.website] | www.tbpowerwash.com |
[company.review_link] | Google review URL |
Estimate
| Field | Example |
|---|---|
[estimate.number] | EST-001234 |
[estimate.total] | $1,250.00 |
[estimate.link] | Customer portal link |
[estimate.services] | House Wash, Driveway |
[estimate.expiration_date] | 03/25/2026 |
Job
| Field | Example |
|---|---|
[job.number] | JOB-005678 |
[job.date] | 03/15/2026 |
[job.time] | 9:00 AM |
[job.status] | Scheduled |
[job.crew] | Team Alpha |
[job.services] | House Wash |
Invoice
| Field | Example |
|---|---|
[invoice.number] | INV-009012 |
[invoice.total] | $1,250.00 |
[invoice.balance_due] | $625.00 |
[invoice.due_date] | 03/20/2026 |
[invoice.payment_link] | Stripe payment URL |
Appointment
| Field | Example |
|---|---|
[appointment.date] | 03/15/2026 |
[appointment.time_window] | 9:00 AM - 11:00 AM |
[appointment.confirm_link] | Secure confirmation link |
Sales Rep
| Field | Example |
|---|---|
[rep.first_name] | Mike |
[rep.full_name] | Mike Johnson |
[rep.phone] | (813) 555-0199 |
[rep.email] | mike@tbpowerwash.com |
Preview
When editing SMS or email templates in the Guided Editor, a live preview shows the rendered message with example data filled in. Use this to verify your merge fields are correct and the message reads naturally before activating.
Tips
- Always include
[customer.first_name]in your opening line. Personalized messages get higher response rates. - Use
[estimate.link]or[invoice.payment_link]to make it easy for customers to take action directly from the message. - Keep SMS messages short. Merge fields expand to real data at send time, so account for longer names or addresses when estimating message length.
- If a merge field cannot be resolved (for example, the customer has no email on file), it is replaced with an empty string. Structure your sentences so they still make sense if a field is blank.
Related articles
Was this article helpful?
Still need help? Contact support