Quick tipDeveloperMarketing Hub

Programmable emails: pull CRM data into marketing emails with HubL

Personalization tokens show one property. Programmable emails can loop over associated records.

Subscription
Marketing Hub Professional or Enterprise
Permissions
Design Manager access
Time
5 min · Advanced
Last verified

Short answer

Programmable emails use HubL to render CRM data in marketing emails. Marketing Hub Professional can read standard objects such as contacts, companies and products; Enterprise adds HubDB tables and custom objects. The more CRM functions an email uses, the fewer recipients it can go to: 1 function allows 500,000 recipients, 5 functions (the maximum) allow 100,000.

1. HubSpot's product example

{% set product = crm_object("product", 2444498793, "name,description,price") %}
Name: {{ product.name }}
Description: {{ product.description }}
Price: {{ product.price }}

This is the crm_object example from HubSpot's developer docs. The docs also note programmable emails using CRM functions cannot be A/B tested and send more slowly. A coded email template can opt in with isEnabledForEmailV3Rendering: true.

2. Recipient limits

  • 1 CRM function: 500,000 recipients.
  • 2: 250,000. 3: 165,000. 4: 125,000.
  • 5 (maximum): 100,000.

3. Related

Simple tokens: personalization token defaults. AI rewriting instead of code: nurture agent.

Sources

New field notes by email

One email when a new article publishes.

Still stuck?

If this did not fix it, the problem is probably specific to your setup. Book a call and we will look at it together.

Book a call with Sam