Variables are the backbone of personalized cold email outreach. They allow you to dynamically insert prospect-specific information into your email templates, making each message feel custom-written rather than mass-sent. This guide explains everything you need to know about using variables effectively in XemailCampaign sequences.
Variables are placeholders in your email templates that automatically populate with information from your lead list when emails are sent. For example, instead of writing "Hi there," you can write "Hi {{firstName}}" and each recipient will see their own first name.
The result: Emails that feel personal, relevant, and human—which dramatically improves open rates, reply rates, and overall campaign success.
CRITICAL: Variables MUST be wrapped in double curly braces {{variableName}} to function properly.
Hi {{firstName}},
I noticed that {{companyName}} recently expanded into {{industry}}.Hi firstName,
I noticed that companyName recently expanded into industry.What happens if you don't use curly braces? The variable will be treated as plain text and sent exactly as written. Your recipient will literally see "Hi firstName" instead of "Hi Sarah."
Variables pull data directly from the columns in your uploaded lead list. The connection between your template and your data is simple but strict:
{{firstName}} in your email template| firstName | lastName | companyName | industry |
|---|---|---|---|
| Sarah | Johnson | TechFlow | SaaS |
| Michael | Chen | DataCore | Analytics |
Hi {{firstName}},
I see {{companyName}} is growing quickly in the {{industry}} space.Hi Sarah,
I see TechFlow is growing quickly in the SaaS space.Hi Michael,
I see DataCore is growing quickly in the Analytics space.XemailCampaign protects you from sending broken emails by validating your variables before you can save or launch a sequence.
1. You've used a variable that doesn't exist in your lead list
{{jobTitle}} but your lead list has no "jobTitle" column2. You haven't uploaded a lead list yet
3. Variable names don't match exactly
{{first_name}} but lead list column is named {{firstName}}
When there's a variable error:
Pro Tip: Always upload your lead list BEFORE creating your email sequences. This allows real-time validation as you write.While you can use unlimited custom variables, these three are considered essential for every campaign:
Why it matters: Makes your email feel like a personal message, not a blast Best practice: Use in the greeting and once more in the body (but don't overuse)
Why it matters: Useful for formal industries or when first name alone feels too casual Usage: Hi {{firstName}} {{lastName}} or for searching on LinkedIn
Why it matters: Shows you've done research and aren't sending generic spam Usage: Reference their company specifically to demonstrate relevance
Example using all three:
Hi {{firstName}},
I noticed {{companyName}} recently announced a Series B. Congrats to you and the team!
Given your role at {{companyName}}, I thought you might be interested in...
Best,
{{signature}}Before launching your campaign, always verify that variables are populating correctly.
Why this is critical:
How to send a test:
What to check in test emails:
{{firstName}} showing literally)Your email signature is a variable too—and a powerful one for building credibility and professionalism.

Unlike lead variables that pull from your prospect list, signature variables pull from your email account settings and sender profile.
Symptom: Email displays {{firstName}} literally instead of the actual name
Causes and Solutions:
Missing curly braces
firstName instead of {{firstName}}?Wrong bracket type
{firstName} or square brackets [firstName]?{{firstName}}Extra spaces
{{ firstName }} (spaces inside braces){{firstName}}Symptom: Save button disabled, variables highlighted in red
Causes and Solutions:
Variable not in lead list
Spelling mismatch
{{companyName}} but list has {{company_name}}No lead list uploaded