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 a message template in the wizard or visual builder, a merge field toolbar appears below the text area. 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] | 9:00 AM |
[appointment.type] | Estimate Walk-through |
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 wizard builder, 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