Merge tags personalize each email at send time: {{firstName}} becomes the recipient's first name, {{coupon_code}} becomes their personal discount code. Tags work in the email body, the subject line and the preheader. Every tag picker in the editors inserts from this same list.
Subscriber tags
| Tag | Value |
|---|---|
{{firstName}} | First name |
{{lastName}} | Last name |
{{fullName}} | Full name |
{{email}} | Email address |
Custom fields on your list are automatically available under their field name: a city field becomes {{city}}. Both spellings work for all tags: {{firstName}} and {{first_name}} resolve to the same value.
Campaign tags
| Tag | Value |
|---|---|
{{subject}} | The email's subject line |
{{preheader}} | The email's preheader |
Date and time
| Tag | Value |
|---|---|
{{date}} | Current date |
{{currentYear}} | Current year |
System links
| Tag | Value |
|---|---|
{{unsubscribe}} | Unsubscribe link (required in every campaign) |
{{webversion}} | View-in-browser link |
Use these as the URL of a button or link. They are signed per recipient and use your tracking domain.
Coupons
| Tag | Value |
|---|---|
{{coupon_code}} | The recipient's unique store coupon |
Requires a unique coupon recipe on the campaign or Send Email step. Without a recipe, no code is generated.
Double opt-in
| Tag | Value |
|---|---|
{{confirm_link}} | The confirmation link |
Only rendered in the double opt-in confirmation email chosen under Settings, GDPR. It does not work in campaigns or automation flows.
E-commerce tags
Available in automation emails on store triggers (cart abandoned, orders, back in stock, product viewed). Values come from the triggering event.
| Tag | Value |
|---|---|
{{product_name}} | Product name |
{{product_url}} | Product page URL |
{{product_image}} | Product image URL |
{{product_price}} | Product price |
{{cart_url}} | Cart / checkout restore URL |
{{cart_total}} | Cart total |
{{cart_item_count}} | Number of items in the cart |
{{order_number}} | Order number |
{{order_total}} | Order total |
{{fulfillment_status}} | Fulfillment status |
{{currency}} | Store currency |
Custom event triggers additionally expose their event properties as tags under the property's name.
Repeating products and cart rows
Lists of items (cart contents, product recommendations) use loop syntax rather than single tags - see the template syntax reference.
Fallbacks
Tags with no value render as empty text. Write copy that still works without the value ("Hi {{firstName}}," reads fine as "Hi ," only if you keep the greeting flexible - prefer "Hey there" style fallback copy when many subscribers lack names).