---
title: "How to Use Personalization Variables in FirstSales | FirstSales"
description: "Use {{merge tags}} with fallbacks, standard and custom fields, and know when to reach for Autopilot AI writing instead of templated tokens."
canonical: "https://firstsales.io/tutorial/ai-personalization-variables/"
---

[Home](/)/[Tutorials](/tutorial/)/How to Use Personalization Variables in FirstSales

Personalization

# How to Use Personalization Variables in FirstSales

Use {{merge tags}} with fallbacks, standard and custom fields, and know when to reach for Autopilot AI writing instead of templated tokens.

7 min read·Beginner·6 steps

1. 1  
## How merge tags work  
Personalization uses **merge tags** wrapped in double curly braces: `{{first_name}}`, `{{company_name}}`. At send time each tag is replaced with that contact's value, so one template reads one-to-one for everyone.  
A default first line looks like `Hi {{first_name}},`. This is how you send at scale without sounding like a blast.
2. 2  
## The standard variables you can use  
Every contact carries these fields as tags:  
   * **Person**: `{{first_name}}`, `{{last_name}}`, `{{full_name}}`, `{{email}}`, `{{phone}}`, `{{job_title}}`, `{{headline}}`, `{{linkedin_url}}`, `{{timezone}}`.  
   * **Company**: `{{company_name}}`, `{{company_website}}`, `{{company_domain}}`, `{{company_industry}}`, `{{company_size}}`, `{{company_linkedin}}`.  
   * **Location**: `{{city}}`, `{{state}}`, `{{country}}`.  
Plus two send-time tags for you, the sender: `{{sender_name}}` and `{{sender_company}}`.
3. 3  
## Always set a fallback  
What if a contact has no first name? Add a fallback after a pipe: `{{first_name|there}}` renders "there" when the field is empty. Use it anywhere a blank would read awkwardly:  
   * `Hi {{first_name|there}},`  
   * `at {{company_name|your company}}`  
FirstSales also tidies dangling punctuation when a value is empty, but a good fallback is what keeps the sentence natural.
4. 4  
## Insert tags in the editor  
In the email editor you don't have to type tags by hand. Use the **Insert merge tag** toolbar or the slash `/` menu to pick a field from a searchable list — including your custom fields. Inserted tags appear as chips so they're easy to see and can't be broken by a stray character.  
The editor also lints for broken tags and warns if you drop a merge tag inside a link URL.  
![Insert tags in the editor](/tutorials/template-reply-02-sequence.webp)
5. 5  
## Use custom fields for anything extra  
Need a data point that isn't a standard field — a recent event, a product they use? Add a **custom field** to your contacts and reference it as a snake\_case tag, e.g. `{{recent_funding}}`. Custom fields resolve from each contact's data just like standard ones (they can't reuse a standard field's name).  
This is how you personalize on something specific to _your_ outreach, not just generic firmographics.
6. 6  
## Merge tags vs Autopilot AI writing  
Two different things share the "personalization" idea:  
   * **Template campaigns** use the `{{ }}` merge tags above — you write the copy, tags fill the blanks.  
   * **Autopilot campaigns** have the AI _write_ each email using personalization hooks about the contact — not merge-tag templating.  
So if you want precise control over wording, use Template mode with merge tags; if you want the AI to compose per-contact copy, use Autopilot. Note there is **no spintax** — the pipe `|` is only for fallbacks, not random spin alternatives.

## Pro tips

Hard-won shortcuts that keep warm-up on track.

1

### Never ship a tag without a fallback

Use {{first\_name|there}}, not bare {{first\_name}}. One contact with a missing field turns a bare tag into an awkward blank in front of a real prospect.

2

### Insert from the menu, don't type

Use the Insert merge tag toolbar or / menu so tags become chips the editor can validate. Hand-typed braces are the usual cause of a broken tag that sends literally.

3

### Custom fields personalize on what matters

Firmographic tags are table stakes. A custom field ({{recent\_funding}}, {{signup\_source}}) is what makes an email feel researched rather than mail-merged.

4

### No spintax — pick Template or Autopilot

There's no {a|b} spin syntax. For varied copy, either write real A/B variants in a Template campaign or let Autopilot's AI compose each email.

## Frequently asked questions

What's the syntax for a merge tag?

Double curly braces around the field name: `{{first_name}}`, `{{company_name}}`. Whitespace inside is tolerated (`{{ first_name }}`), and values are filled per contact at send time.

How do I set a default when a field is empty?

Add a fallback after a pipe: `{{first_name|there}}` or `{{company_name|your company}}`. The text after the `|` is used whenever that contact's field is blank.

Which variables are available?

Standard contact fields — name, email, phone, job title, headline, LinkedIn, timezone; company name/website/domain/industry/size/LinkedIn; city/state/country — plus the sender tags `{{sender_name}}` and `{{sender_company}}`, and any custom fields you add.

Can I personalize on custom data?

Yes. Add a **custom field** to your contacts and reference it as a snake\_case tag (e.g. `{{recent_funding}}`). It resolves from each contact's data like a standard field, and can't reuse a standard field's name.

How do I insert a tag without typos?

Use the **Insert merge tag** toolbar or the slash `/` menu in the editor to pick a field from a searchable list. Tags appear as chips, and the editor lints for broken tags or a tag mistakenly placed inside a link.

Does FirstSales support spintax?

No — there's no spintax / `{a|b}` spin alternation. The pipe character is only for fallback values. For copy variety, use A/B variants in a Template campaign or Autopilot's AI writing.

How is this different from AI personalization in Autopilot?

Merge tags fill blanks in copy _you_ write (Template mode). **Autopilot** instead has the AI compose each email from personalization hooks about the contact — no merge-tag templating. Choose Template for exact wording, Autopilot for AI-written copy.

## Ready to put this into practice?

Start your FirstSales trial and launch a warmed, authenticated mailbox in minutes.

[Start for $1](https://app.firstsales.io)

[All tutorials](/tutorial/)