Personalize messages with variables and custom properties

Insert each lead's first name, company or job title in notes, messages and emails, add fallbacks, use custom properties and preview the result before sending.

Updated October 13, 2026

On this page

Variables like {firstname} or {companyname} are replaced with each lead's details when the step is sent. Click a variable button above the editor to insert it, add a fallback for leads with an empty value, and check the result in the Preview tab.

Where you can use variables

  • The note of a Connection request, when you write it yourself
  • A LinkedIn Message, when you write it yourself
  • The Subject and Message of an email

When AI writing is on, you don't need variables: the AI reads the lead's profile. See Write messages with AI.

Insert a variable

Click in the text where you want the variable, then click a button above the editor: + First name, + Last name, + Full name, + Company, + Job title, + Location, + Website. You can also type the variable yourself.

A LinkedIn message written by hand: the variable buttons above the editor (with a custom property, topic, after the standard ones) and a message using {firstname}, {custom.topic|…} and {companyname}

Variable Replaced with
{firstname} First name, capitalized
{lastname} Last name, capitalized
{fullname} First and last name
{companyname} Company of the current job ({company} works too)
{jobtitle} Job title
{location} Location
{website} Company website
{custom.name} The lead's custom property called "name"
{unsubscribe} Emails only: an unsubscribe link

Variable names aren't case-sensitive: {FirstName} works like {firstname}. Every occurrence in the text is replaced.

Add a fallback

Add | and a default text inside the braces: {firstname|there}. If the lead has no first name, "there" is used instead.

Without a fallback, an empty variable is simply removed and the extra space is cleaned up: "Hi {firstname}, …" becomes "Hi, …".

Use custom properties

Custom properties are extra fields you store on the leads of a list, such as a pain point or the name of a mutual contact. Insert them with {custom.property}, for example {custom.icebreaker}.

  • Add a property to a lead from its panel in the list: click a lead, then Add a property under Custom properties ("Adds a column to this list"). See Lead profile.
  • Properties can also be sent through the API, in customAttributes. See API.
  • The campaign uses the values stored on the leads of its target list.
  • When the first leads of the target list have custom properties, a button for each one appears after the standard variables.

Warning: Use only letters, numbers and underscores in property names you want to insert, such as pain_point. A name with a space or a dash (pain point, pain-point) isn't recognized: the text in braces is sent as typed. The part after custom. must match the property name exactly, including capital letters.

When you import a CSV file, only the columns you map are imported. Other columns aren't kept as custom properties. See Import leads from a CSV file.

Preview before sending

Open the Preview tab of the step and pick a lead under Generate preview for contact (optional). You can pick among the first leads of the target list. The preview shows the text with that lead's values. For emails, it also shows the subject, the signature and the unsubscribe link.

The Preview tab of a message: a lead picked under Generate preview for contact and the message with her first name, custom property and company filled in

Send me a test email on an email step sends the email to you. In the test, only {firstname}, {lastname} and {companyname} are replaced, with your own details. Use the Preview tab to check the other variables.

Common mistakes

  • Double braces: {{firstName}} is sent as "{John}". Use single braces: {firstname}.
  • Unknown variables: a variable that isn't in the list above (a typo like {first_name}) is sent as typed.
  • Lowercase company names: leads imported from a CSV file have their job title and company stored in lowercase. First and last names are capitalized when inserted, but {companyname} and {jobtitle} are inserted as stored. Check the preview, and fix the values in the lead panel if needed.
  • Note length: in a connection note, variables are counted as typed. The final length depends on each lead, and a note longer than LinkedIn's limit (300 characters with Premium, 200 without) is cut.

FAQ

Do variables work in the email subject?

Yes. {firstname}, {companyname} and the other variables work in the subject and the body.

What happens if a lead has no company?

{companyname} is removed from the text. Add a fallback, such as {companyname|your team}, to keep the sentence natural.

Was this article helpful?

Related articles

Still need help?

Write to hello@useartemis.co with your account email and what you were trying to do.