I’ve been enjoying the last few weeks of summer… particularly Pardot’s announcement to update to the syntax of their variable tags from Pardot Merge Language (PML) to Handlebars Merge Language (HML).
Why handlebars merge language is more exciting than it sounds
We’ve all seen this scenario play out…
You get an email that starts with ‘Hello First_Name!’ You scoff at this obvious marketing automation blunder and delete the email.
As a digital marketer who works with marketing automation tools, I can empathize with this mishap. In my past in-house marketing role, I sometimes avoided using variable tags knowing I didn’t have default mail merge values for all of my fields.
The last thing I wanted was a marketing automation fail to answer, especially one I created. If I were to enter default values for a field — let’s say First Name — it would have to be something generic like, ‘Friend’ or ‘Customer.’
Nothing says personalization like getting an email that says ‘Hello Friend!’ Or have an odd-looking punctuation error like ‘Hello !’
5 need-to-know capabilities of Pardot Handlebars Merge Language (HML)
On the surface, the launch of HML isn’t the sexiest feature announcement. But its impact on your customer experience could be huge. Here are 5 key things to be aware of:
Conditional default values:
Set the default values in an email when a field is empty. Using #if and #else tags allow you to merge a different value if the field is blank.
Updated merge picker:
Merge fields are categorized by Recipient, Sender, Account, Organization, or Other. You can also use the search box to find a field faster.
Tracked dynamic links:
Unlike its predecessor PML, you can track link clicks contained in HML merge fields.
Further aligning Salesforce and Pardot:
Salesforce Lightning templates already use HML so getting Pardot onto the same platform opens the door to future personalization enhancements.
Correct formatting:
As mentioned earlier, no more worrying about punctuation fails. HML can be configure to correctly format and personalize your email.
An example of Pardot HML in action
A limitation in today’s “status quo” of using default values at the field level is that they are set for that field for every email moving forward. You can’t change them when you insert a variable tag — the default has to be set to the same account.
Here’s a scenario:
Molly markets to prospects in the USA and John markets to prospects in the UK. They work for the same company using one Pardot instance. Both are sending an email with a call to action for prospects to connect with their contact owner.
If prospects don’t have a contact owner, then they’d like them to reach out to a general inbox. Here is where HML comes in handy. With the old Pardot Merge Language / variable tags, I would go set a default value of [email protected]. Molly and Jack’s prospects without contact owners all reach out to the same email address.
The problem, and where HML comes in:
But what if that doesn’t cut it? What if the email address is different for prospects in the UK?
Using HML, I can conditionally set the default value at the email level. Meaning, Molly can enter an appropriate email address for those without a contact owner ([email protected]) when she executes her list email send, and Matt can enter the UK specific email address when he executes his ([email protected]).
You’ll have more flexibility in how you personalize emails without having to set a ‘one size fits all’ default value.
What the HML they would insert looks like:
Send USA contact email
{{#if Recipient.Owner.Email}} / / Check if the contact owner’s email is populated
Contact us at {{Recipient.Owner.Email}} / / Include the email
{{else}} / / If there isn’t a good email….
Contact us at [email protected] / / Providing the USA email for Sales inquiries
{{/if}} / / end the if statement
Repeat for the UK email…
{{#if Recipient.Owner.Email}} / / Check if the contact owner’s email is populated
Contact us at {{Recipient.Owner.Email}} / / Include the email
{{else}} / / If there isn’t a good email….
Contact us at [email protected] / / Providing the UK email for Sales inquiries
{{/if}} / / end the if statement
And another cool feature when creating this…
Pardot won’t let you save an email if your HML conditional formatting contains an error or isn’t closed and will let you know what to fix. Below the {{#if}} tab is left open and needs a {{/if}} in the last line before you can save the email draft.
A few FAQs: You’ve got questions, we’ve got answers
When can I start using Pardot HML?
HML is part of the August ’19 release and should be available between August 21st – 30th.
Do I have to?
You won’t be forced to update to HML, for now. There are a couple of reasons why you wouldn’t want to upgrade yet.
According to Salesforce:
“If you use variable tags in dynamic content on Pardot forms or landing pages, we recommend you do not upgrade at this time.
The Pardot API supports both PML and HML for list emails and 1:1 email sends. If you or a third-party uses API functionality, look into any changes you may need to make before you upgrade.”
Where can I use Pardot HML?
HML is available in Pardot email templates, list emails, 1:1 emails, dynamic content, and user signatures. It’s also available in Salesforce Engage but Pardot forms and landing pages aren’t supported – yet.
What are my limits?
There is a limit of 200 HML merge fields and 10 pieces of dynamic content per email. If you are a personalization queen or king then this might affect you but otherwise shouldn’t be an issue.
Let’s do this…
This update is also another move to further align Pardot and Salesforce and sets up some interesting future feature improvements.
As with everything, I absolutely recommend testing this a couple times before using it in live emails.
If you upgrade to HML or not — we’d love to hear why. Leave your tips/thoughts for fellow readers below in the comments!
For the caveats on not updating to HML, have those issues been addressed in any of the other Pardot releases since this went live last year?
I’m not sure if we’d be affected by either of these so I’m skeptical to move ahead with the upgrade.
Can’t we use multiple if else statements using hml in pardot? Something like this =
{{#if Recipient.FirstName}}
Hello {{Recipient.FirstName}}
{{else}}
{{#if Recipient.Nickname__c}}
Hi {{Recipient.Nickname__c}}
{{/if}}
{{/if}}