{{name}},
resolved per recipient at send time.
One syntax only. Templates use
{{name}}. Mailchimp's *|TAG|* syntax is converted when you
save a pasted template — it is never a second syntax to maintain.Supported merge tags
These five are the entire vocabulary. Anything else is reported as unknown.| Tag | Resolves to | Example output |
|---|---|---|
{{firstName}} | Contact's first name | Camille |
{{lastName}} | Contact's last name | Dubois |
{{email}} | Contact's email address | camille@exemple.fr |
{{unsubscribeUrl}} | Unique unsubscribe link for this recipient | https://app/u/a1b2c3 |
{{currentYear}} | Year at the moment of rendering | 2026 |
{{currentYear}} is computed at render time, in Europe/Paris. It is the © {{currentYear}} of
a footer: a template written in 2026 still shows the right year in 2027, without touching it. A
value passed for it in an API call is ignored — like {{unsubscribeUrl}}, it is decided by the
server, never by the caller.{{ firstName }} works like {{firstName}}.
Merge tags are resolved in both the subject line and the HTML body.
{{unsubscribeUrl}} is mandatory. A template whose rendered HTML does not contain the
unsubscribe link is refused at render time, with an explicit error. No footer is silently appended
to your HTML — the link must be somewhere in your template.Mailchimp tags converted on save
Paste a Mailchimp template and save it: these are rewritten automatically.| Mailchimp tag | Becomes |
|---|---|
*|UNSUB|* | {{unsubscribeUrl}} |
*|FNAME|* | {{firstName}} |
*|LNAME|* | {{lastName}} |
*|EMAIL|* | {{email}} |
*|CURRENT_YEAR|* | {{currentYear}} |
Not supported
Any other*|TAG|* is left untouched in the HTML and reported in the editor when you save. It
is never silently shipped to recipients.
| Mailchimp tag | Why it is not supported |
|---|---|
*|DATE:d F Y|* | Formats a value. Merge tags substitute, they do not format. Only the bare year, *|CURRENT_YEAR|*, is supported. |
*|IF:…|* etc. | Conditional blocks require a template engine, not substitution. |
*|ARCHIVE|* | No web archive of sent campaigns yet. |
*|LIST:NAME|* | List and account metadata are not exposed to templates. |
*|MERGE1|*, … | No custom contact fields — the vocabulary above is closed. |
Behaviour rules
A known tag with no value renders empty. If a contact has no first name,Salut {{firstName}},
renders as Salut ,. Write around it, or keep the tag out of a sentence that breaks without it.
An unknown tag is left visible and reported. {{fistName}} (typo) stays in the output as
{{fistName}} and is listed as an unknown variable in the preview panel — so you catch it before
sending, not after.
The preview uses sample data. The preview panel renders your template with example values and a
placeholder unsubscribe URL, so what you see is what the pipeline actually produces at send time.
Example
<td>Salut {{firstName}}, voici les nouvelles du mois.</td>
<!-- … -->
<a href="{{unsubscribeUrl}}">Se désinscrire</a><td>Salut Camille, voici les nouvelles du mois.</td>
<!-- … -->
<a href="https://app.example.com/unsubscribe/a1b2c3">Se désinscrire</a>