> ## Documentation Index
> Fetch the complete documentation index at: https://help.eazybe.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Template Variables and Personalization

> Provide a value for every template variable in uploaded files or HubSpot contact lists.

Variables let one approved WhatsApp template use different values for each recipient. Before sending, make sure every selected contact has a value for every variable shown in the template.

For example, `Hello {{1}}, your appointment is on {{2}}.` needs two values for each contact.

<Frame caption="Message preview with HubSpot property variables">
  <img src="https://mintcdn.com/eazybe/R87Ubcpb761E6TY9/images/broadcasts/template-variables-message-preview.jpeg?fit=max&auto=format&n=R87Ubcpb761E6TY9&q=85&s=164647a218034c1b577cacea8f29789d" alt="Create broadcast Message preview with firstname, city, and country variables highlighted" width="1470" height="838" data-path="images/broadcasts/template-variables-message-preview.jpeg" />
</Frame>

<Warning>
  The names and message content in the screenshot are examples. Check the **Message preview** for the variables in your selected template.
</Warning>

## Use Variables in an Uploaded File

<Steps>
  <Step title="Check the template variables">
    Select the **Template message** and review the **Message preview**. Numbered variables appear as `{{1}}`, `{{2}}`, and so on.

    <img src="https://mintcdn.com/eazybe/R87Ubcpb761E6TY9/images/broadcasts/template-variables-message-preview.jpeg?fit=max&auto=format&n=R87Ubcpb761E6TY9&q=85&s=164647a218034c1b577cacea8f29789d" alt="Message preview with template variables highlighted" width="1470" height="838" data-path="images/broadcasts/template-variables-message-preview.jpeg" />
  </Step>

  <Step title="Add one column for each variable">
    In the CSV or Excel file, add a column whose header matches each numbered variable exactly. Fill every variable cell for every recipient.

    <img src="https://mintcdn.com/eazybe/R87Ubcpb761E6TY9/images/broadcasts/prepare-broadcast-variables.jpeg?fit=max&auto=format&n=R87Ubcpb761E6TY9&q=85&s=ec9cf841dd27491c63b3e00f78276b1e" alt="Spreadsheet with Name, Phone, and numbered variable columns for each contact" width="1462" height="807" data-path="images/broadcasts/prepare-broadcast-variables.jpeg" />

    | Name  | Phone        | \{\{1}} | \{\{2}}   |
    | ----- | ------------ | ------- | --------- |
    | Aisha | 919876543210 | Aisha   | 20 August |

    <Note>
      Select **Sample CSV** or **Sample Excel** in **Upload a list** when you need a file with the expected structure.
    </Note>
  </Step>

  <Step title="Upload and validate the values">
    Select **Choose file** and upload the prepared file. Eazybe displays **Variable data loaded successfully** when it can read the variable data.

    <img src="https://mintcdn.com/eazybe/R87Ubcpb761E6TY9/images/broadcasts/review-and-send-broadcast.jpeg?fit=max&auto=format&n=R87Ubcpb761E6TY9&q=85&s=2f786c70c03d1f1df6e43c70de24fa8e" alt="Uploaded variable contact list with Variable data loaded successfully and Replace file" width="1470" height="835" data-path="images/broadcasts/review-and-send-broadcast.jpeg" />
  </Step>
</Steps>

## Use Variables with a HubSpot List

How Eazybe fills variables depends on the selected template type:

| Template type                   | How personalization works                                                                                       |
| ------------------------------- | --------------------------------------------------------------------------------------------------------------- |
| **HubSpot property template**   | Eazybe uses the HubSpot property mappings already saved with the template. No additional mapping panel appears. |
| **Workspace variable template** | Map every numbered variable to a HubSpot contact property and enter a fallback value.                           |
| **Zoho variable template**      | Map every numbered variable to a HubSpot contact property and enter a fallback value.                           |

The fallback value is used when the mapped HubSpot property is empty for a contact. These mappings apply to the current HubSpot list broadcast and do not change the original template.

<Frame caption="Map template variables for a HubSpot list broadcast">
  <img src="https://mintcdn.com/eazybe/Zmdl3MMKf0X4dbOi/images/broadcasts/template-variables-hubspot-list.jpeg?fit=max&auto=format&n=Zmdl3MMKf0X4dbOi&q=85&s=c0ca81c7fc7a8ebada33fa34524f7563" alt="Create broadcast page with a HubSpot list selected and template variables mapped to HubSpot contact properties with fallback values" width="1466" height="833" data-path="images/broadcasts/template-variables-hubspot-list.jpeg" />
</Frame>

<Warning>
  Every template variable must receive a value. Meta error `#132000` means the number of supplied parameters does not match the approved template.
</Warning>
