Socialone Logo

Personalization Tags

Personalization & Variables

Templates use numbered placeholders like {{1}}, {{2}}to personalize messages. In Socialone, you map each variable to a contact field, a custom field, or a static value before sending a broadcast.

Overview links: Documentation Home · Settings Overview

Where to Find This

  • This step appears during Broadcast setup when a template has variables. Templates without variables skip the mapping step automatically.

Settings Quick Map

  • Settings → Contact Custom Fields: define extra contact fields available for variable mapping.
  • Settings Overview

Variable Basics

  • Variables appear in the template body and optionally in the header.
  • Numbering is positional: {{1}} maps to variable 1, {{2}} to variable 2, and so on.
  • Every variable must be mapped before sending. The send button stays disabled until all are resolved.

Mapping Options

OptionWhen to UseExample
Contact FieldStandard contact data exists in the CRM.{{1}}first_name
Custom FieldYou need data from a custom contact field.{{1}}contact.custom_field.order_id
Static ValueThe value is the same for everyone in the send.{{2}}Summer Offer
CSV ColumnUsing CSV upload instead of contacts.{{1}} → CSV column 1

Contact Field Reference

Standard contact fields use dot notation. Custom fields extend the path with custom_field:

  • Standard fields: contact.first_name, contact.last_name, contact.phone, contact.email, contact.city, contact.state, contact.country, contact.company.
  • Custom fields: contact.custom_field.field_name — replace field_name with the exact slug of your custom field (e.g., contact.custom_field.order_id, contact.custom_field.loyalty_points). Custom fields are defined in Settings → Custom Fields.
  • Static inline prefix: prefix a value with static: to use it directly without contact lookup (e.g., static:Hello). Useful in API or workflow integrations.

Contacts Mapping (Filter Contacts)

  1. Choose recipients using Filter Contacts.
  2. Click Check Selection to preview the matched recipients.
  3. Map each variable to a Contact Field, Custom Field, or Static Value.
  4. Proceed to send or schedule.

CSV Mapping

  • CSV requires columns: name, country_code, phone_number.
  • Add numbered columns 1, 2, 3 to match template variable positions.
namecountry_codephone_number12
John Doe919876543210Order #245$29.00

Variables in Downstream Templates (Flow Builder)

When a contact taps a button and a downstream template is sent automatically, variables in that template are resolved from the same contact record — no extra mapping is required. The same dot-notation paths apply.

Variable resolution order for downstream templates: contact field → custom field → static fallback. If a contact field is empty, the variable is sent as empty unless a static fallback is defined in the template action mapping.

Tips

  • Double‑check variable order before sending. {{1}} maps to position 1, not by name.
  • Use static values for shared info like campaign names, offer codes, or dates.
  • For order-specific data, store it as a custom field (e.g., contact.custom_field.last_order_id) so broadcasts can reference it per contact.
  • Templates without variables skip the mapping step entirely.

Next Steps

Common Blockers & Fixes

  • Next button disabled: map every variable or remove unused variables from the template before sending.
  • Contact field missing: update the contact schema in Settings → Custom Fields, or choose a static value as fallback.
  • CSV variables not filling: add numbered columns 1, 2, 3 to the CSV, matching the variable positions in the template.
  • Custom field not resolving: check the field slug exactly matches the path used (e.g., contact.custom_field.order_id vs contact.custom_field.orderid).

Related product

SIA turns WhatsApp into your highest-converting channel

Design, personalize, and schedule large-scale WhatsApp outreach with SIA guarding compliance, cadence, and engagement across every journey.

View product →