Skip to content

Create programmable emails (BETA)

Last updated: January 29, 2024

Available with any of the following subscriptions, except where noted:

Marketing Hub Professional, Enterprise

Programmable emails allow you to use advanced HubL syntax to fully personalize the content of your emails.

Learn more about how to create modules and render data from your CRM in HubSpot's developer documentation.

Please note: you should thoroughly test any modules or templates, along with their associated dependents, before running a live email campaign.

Data sources available for programmable emails

The data you can use in a programmable email depends on your HubSpot subscription:

  • If you have a Marketing Hub Professional account, you can render data from standard CRM objects, such as contacts, companies, and products.
  • If you have a Marketing Hub Enterprise subscription, you can include structured data sources such as HubDB tables and custom objects in programmable emails.

Enable programmable email for your modules or templates

Before you start creating programmable emails, you must first enable the feature for the associated module or coded template:

  • In your HubSpot account, navigate to Marketing > Files and Templates > Design Tools.
  • To enable programmable email for a module:
    • Create a new module, and select the Email templates checkbox when choosing where the module will be used.
    • In the inspector on the right, toggle the Enable module for programmable email beta switch on.
updated-programmable-email-beta-switch
    • In the dialog box, review whether the module has any dependents. If the module has any dependents, review them, then select the I have reviewed the dependents checkbox. Click Enable.
  • To enable programmable email for a custom coded template:
    • Create a new template, and under Template type, select Email.
    • Add the isEnabledForEmailV3Rendering: true annotation to the top of the template file.

enable-design-manager-template-for-programmable-email

    • When you're done editing your template, click Publish changes in the top right.
    • In the dialog box, review whether the module has any dependents. If the module has any dependents, review them, then select the I have reviewed the dependents checkbox. Click Enable.
  • To use programmable email in a template you're creating in the drag and drop editor, drag a module that you've already enabled for programmable email into the template. 
  • If you're drafting an email in the drag and drop email editor, you can use a programmable module you've created by dragging the module into the body of the email.
Was this article helpful?
This form is used for documentation feedback only. Learn how to get help with HubSpot.