Mail merge fields: personalize bulk email properly

A merge field is a placeholder in your email that gets replaced with a value from each recipient's row. Done well, it turns a bulk message into something that reads as if you wrote it for one person.

The syntax

Wrap a column name in double curly braces: {{name}}. Whatever your CSV header says is the field name.

name,email,event,seat
Priya,priya@example.com,Design Summit,A14
Subject: {{name}}, your seat is {{seat}}
Hi {{name}}, you are confirmed for {{event}}.
  • Case does not matter. {{Name}}, {{name}} and {{ NAME }} all work.
  • Subject and body. Fields work in both.
  • No spaces inside names. Use headers like order_id rather than order id.
  • Unknown fields stay visible. If a field matches no column it is left as typed, and the review step warns you before you send.

Beyond the first name

A name is the minimum. Fields earn their keep when they carry something the reader cares about:

  • Access details: a PIN, a login link, a seat or room number.
  • Context: the event, course or product they signed up for.
  • Dates and amounts: a due date, an appointment time, an order total.
  • A personal link: a unique URL per person using a link column.

HTML emails and special characters

In HTML mode, values from your CSV are escaped automatically, so a name like Smith & Sons or a stray angle bracket cannot break your layout. In plain text mode values are inserted exactly as they appear.

Avoid these mistakes

  • Blank cells. An empty value leaves a gap such as "Hi ,". Fill the cell with a fallback like "there" in your spreadsheet first.
  • Wrong capitalization in data. "alice" or "BOB" in the name column will appear exactly that way. Clean the column before you upload.
  • Over-personalizing. Too many merged details feels unnatural. One or two relevant ones are enough.
  • Skipping the test. Send yourself a test and read it as the recipient would.

Preview before you send

The app renders the first recipient's version of your email in the review step so you can check each field was filled. The warning banner lists any field that matched no column.

Try merge fields now

Frequently asked questions

Can I use a default value if a field is empty?

There is no fallback syntax. Fill empty cells in your spreadsheet with the default you want, such as "there" for a missing first name, before you upload.

Do merge fields work in the subject line?

Yes. Subjects and bodies both support merge fields.

Are merge field names case sensitive?

No. {{Name}} and {{name}} refer to the same column.