Understanding placeholders and dynamic content

Modified on Tue, 5 May at 11:04 AM

Understanding placeholders and dynamic content

Placeholders are the engine behind personalised messages in Hubhus — they automatically pull live lead, event, and brand data into every email, SMS, and page at send-time. Write once, personalise for thousands.

TL;DR

Use %lead_name% for built-in fields, {{api_name}} for custom fields, @select[field] for select values, and @if(…){…}@endif for conditional content. Press Ctrl+K / Cmd+K to search all available placeholders instantly.

Get started in 4 steps

1

Open any email or SMS template and press Ctrl+K (Win) / Cmd+K (Mac) to open the placeholder search

2

Search using plain words — "lead name", "event date", "address", "signature" — and select the placeholder you need

3

For custom fields use {{api_name}} — find the API name under Campaign settings → Fields → Show API names

4

Wrap optional content in @if({{notes}}){ Additional notes: {{notes}} }@endif so it only appears when the field has a value

Built-in: %lead_name%, %event_start_date%, %assigned_person_email%  ·  Custom fields: {{api_name}}  ·  Select field: @select[field] (label) / @select[field,slug] (slug)
Read more

Placeholder types at a glance

  • System placeholders%lead_name%, %lead_email%, %lead_phone%, %assigned_person_email%, %brand_name%, %event_resource_email%
  • Event placeholders%event_start_date%, %event_start_time%, %event_end_time%, %event_duration_minutes%, %event_location%, %event_datetime%
  • Custom fields{{api_name}} (e.g. {{zipcode}}, {{project-notes}})
  • Select fields@select[field] returns label, @select[field,slug] returns slug (use slugs in @if comparisons)
  • Pages & forms@page[slug,url], booking form references via Ctrl+K

Common patterns

Simple personalisation:

Hello %lead_name%,
Your visit is on %event_start_date% at %event_start_time%.

Conditional based on select field:

@if(@select[customer-type,slug] == business){
  Thank you for your business inquiry.
}@else{
  Thank you for your inquiry.
}@endif

Fallback recipient:

@if(%assigned_person_email%){
  %assigned_person_email%
}@else{
  %brand_contact_email%
}@endif

Only show if field has value:

@if({{notes}}){
  Additional notes: {{notes}}
}@endif

Troubleshooting

Placeholder shows nothing — check the lead has a value for that field, the API name is correct, and that event placeholders are only used where an event exists.

Conditional not triggering — ensure you compare slugs not labels: @if(@select[priority,slug] == high){…}. Labels can change; slugs don't.

Wrong API name — go to Campaign settings → Fields → enable "Show API names" to see the exact identifier for each field.

Common searches

placeholder • dynamic content • personalize email • lead name placeholder • custom field placeholder • conditional content • @if

Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select at least one of the reasons
CAPTCHA verification is required.

Feedback sent

We appreciate your effort and will try to fix the article