Overview
Short answer:
Liquid allows you to control how data is displayed in email signatures and campaigns using logic, conditions, and formatting.
Liquid is a template language that helps you create dynamic email signatures and campaigns with advanced logic and formatting.
You can combine tags, objects, and filters—and even nest conditions—to control exactly how each employee’s data is displayed. This means you don’t need to rely on how data is formatted in your source system.
Example #1 – Format phone numbers
You sync phone numbers in this format: +1 9083408836 or +1 9083408836x123, and want to display:
- 908 340 8836
- 908 340 8836 x123 (if extension exists)
- Hide the field if no number exists
{% if DirectPhone == blank %}{% else %}
{% if DirectPhone | contains: 'x' %}
{{DirectPhone | substr_after: '+1' | phone_format: '000-000-0000 x000'}} (direct)
{% else %}
{{DirectPhone | substr_after: '+1' | phone_format: '000-000-0000'}} (direct)
{% endif %}
{% endif %}Example #2 – Advanced targeting
Apply a campaign only when multiple conditions are met (beyond standard rule limitations).
Example: Show campaign only if Country = Denmark and Office is NOT A080, A020, or A310.
{% unless Office | contains: 'A080' or Office | contains: 'A020' or Office | contains: 'A310' %}
{% if Country | contains: 'Denmark' %}
{{ campaign[16041] | raw }}
{% endif %}
{% endunless %}Discover Liquid Instructions
Important
Do not combine CASE, IFNULL, or NULL with Liquid in the same template. These methods are not compatible.
Objects output data in your signature using {{ }}.
- fields– employee data
{{ Email }} {{ fields.Email }} {{ fields["Email"] }} - shared_fields– shared user data
{{ shared_fields["Email"] }} - campaign– insert campaigns
{{ campaign[11856] | raw }}
Tags control logic using {% %} and do not output visible text.
- if– run code when condition is true
{% if Mobile != blank %}M: {{Mobile}}{% endif %} - unless– run code when condition is false
{% unless Email | contains: 'xink.io' %} External email {% endunless %} - case / when– conditional mapping
{% case State %} {% when 'California' %}CA {% when 'Texas' %}TX {% else %}{{State}} {% endcase %} - assign– create variables
{% assign e = Email %} {{ e }}
Filters modify output using |.
- substr_after
{{ Email | substr_after: '@' }} - append
{{ Email | append: ' text' }} - slice– remove prefix
{{ your_field | slice: 6, 999 }}Example:
Input: 10760 IT Arkitektur & Governance
Output: IT Arkitektur & Governance - phone_format
{{ Phone | phone_format: '000-000-0000' }}
How to Add Liquid to Your Signature
- Open your signature and click Source
- Add @liquid at the very top
- Paste your Liquid code
- Click Source again
- Preview the result
- Click OK
Always use Source mode when adding Liquid

@liquid must remain at the top of the signature
Use curly braces
Replace default field format ((Email)) with {{Email}} when using Liquid.

