Merge Tags & Personalization
Merge tags let you personalize every email for each prospect automatically.
Built-in Tags:
- {{firstName}} — Prospect's first name
- {{lastName}} — Prospect's last name
- {{email}} — Prospect's email address
- {{company}} — Company name
- {{role}} — Job title / role
- {{city}} — City
- {{country}} — Country
- {{industry}} — Industry
- {{website}} — Company website
- {{phone}} — Phone number
- {{linkedinUrl}} — LinkedIn profile URL
LinkedIn-Specific Tags (in LinkedIn campaigns):
- {{headline}} — LinkedIn headline
- {{location}} — LinkedIn location
- {{jobTitle}} — Job title from LinkedIn profile
- {{sender_name}} — Your name (the sender)
Sender Tags:
- {{sender_name}} — Your display name
- {{sender_email}} — Your email address
- {{sender_company}} — Your company name
Custom Fields:
When importing prospects via CSV, any column not matching a built-in field becomes a custom field. For example, a CSV column 'department' maps to custom:department, and you can use it as {{custom.department}} or {{department}} in your emails. The {{custom.department}} syntax is recommended (and what the variable picker inserts), but the bare {{department}} shorthand also works.
Custom Fields in Subject Lines:
Custom fields from your CSV work everywhere — including the subject line. If you import a CSV with a custom:subject_line column, you can set your entire subject to {{custom.subject_line}} or {{subject_line}}. For fully pre-written emails, your subject line could be just {{custom.subject_line | default: 'Quick question'}} — each prospect gets their own unique subject.
Fallback / Default Values (two ways to write them):
A fallback is the value used when a field is empty or missing for a prospect — perfect for a column that's only partly filled in. WarmySender supports two ways to write it, and they do exactly the same thing, so use whichever reads more naturally to you:
1) Long form (the classic way):
- {{firstName | default: 'there'}} — renders 'there' if the prospect has no first name.
- {{custom.state | default: 'Brazil'}} — renders 'Brazil' if the state column is blank for that prospect.
2) Short form with a double pipe (||):
- {{firstName || 'there'}} — same result as above.
- {{ custom.state || "Brazil" }} — same result as above.
More examples you can copy and paste:
- Hi {{firstName || 'there'}}, — greets by name, or falls back to 'there'.
- ...companies in {{ custom.state || "your area" }}... — fills in the state, or 'your area' when it's missing.
- Subject: A quick idea for {{company || 'your team'}}
Good to know about the short form:
- Quotes are optional — {{ custom.state || Brazil }} works too, and multi-word defaults keep their spaces: {{ custom.state || São Paulo }}.
- It's only the DOUBLE pipe (||) that means "use this default." A single pipe (|) is a normal formatting instruction and is left exactly as you wrote it — so {{firstName | upcase}} still just uppercases the name.
- If a field IS filled in for a prospect, the real value is always used and the default is ignored. The default only kicks in for the blanks.
Best Practices:
- Always preview your email before sending to check how merge tags render
- Use merge tags in subject lines for higher open rates
- Keep personalization natural — don't over-stuff with tags
- Test with a small batch first to catch any empty fields