Personalize your emails with object attributes

Custom objects allow you to store business-specific data linked to your contacts, such as subscriptions, quotes, vehicles, or insurance contracts. You can use this data to personalize the emails you send through object-based automations, making your communications hyper-relevant and tailored to each individual situation.

How personalizing emails with object attributes works

When creating an email in an object-based automation, you can add object variables. These variables are dynamic placeholders for specific details stored in the attributes of your custom objects, such as appointment date, vehicle make and model, or booking details.

When the automation is triggered, Brevo automatically replaces the object variables with the actual data from the object attribute. This ensures that your contacts receive personalized emails with information specific to their situation.

In the following example, a subscription is approaching its expiration date. The object variables in the email were replaced with the actual subscription data, so the recipient received a fully personalized renewal reminder email ⬇️.

Email in the automation Email received in the inbox
aut_object_email-example1_en-us.png
aut_object_email-example2_en-us.png

Which emails can be personalized with object attributes?

❗️ Important
Object attributes cannot be used in email campaigns, contact-based automations, or templates created outside of automations.

Object attributes can only be used in object-based automations.

In object-based automations, the data available for personalization depends on the type of trigger you use:

Native events

A native event is an event provided by default by Brevo. When your automation is triggered by a native event linked to an object, you can personalize emails using:

  • Attributes of the object record that triggered the automation
  • Attributes from all records of a directly associated object (all records are included, without any filtering)

The following table shows examples of emails triggered by native events and the data you can use to personalize them:

Use case Triggering event Data available for personalization
Appointment confirmation Appointment created
  • Data from the Appointment object: date, time, type
  • Data from all records of the associated Provider object: name, specialty, photo
  • Data from all records of the associated Facility object: location, parking instructions
Booking status change notification Booking updated
  • Data from the Booking object: status, confirmation number, date, time
  • Data from all records of the associated Restaurant object: name, location, contact phone
  • Data from all records of the associated Menu object: special dishes, pricing
Vehicle service reminder Based on a date attribute (e.g., 14 days before next service date)
  • Data from the Vehicle object: make, model, year, last service date
  • Data from all records of the associated Service Center object: location, hours, contact phone
Restaurant booking reminder Based on a date attribute (e.g., 1 day before booking date)
  • Data from the Booking object: date, time, party size, special requests
  • Data from all records of the associated Restaurant object: location, cuisine type, contact
Subscription renewal reminder Based on a date attribute (e.g., 7 days before subscription expiry)
  • Data from the Subscription object: name, tier, expiry date, price, renewal link
Policy renewal reminder Based on a date attribute (e.g., 90 days before policy end date)
  • Data from the Policy object: number, type, end date, coverage amount, premium
  • Data from all records of the associated Coverage object: benefits, renewal options
Custom events

A custom event is an event you create yourself, and that is specific to your business. When your automation is triggered by a custom event linked to an object, you can use:

  • Data from the event itself
  • Attributes of the object record linked to that event
  • Attributes from all records of a directly associated object (all records are included, without any filtering)

The following table shows examples of emails triggered by custom events and the data you can use to personalize them:

Use case Triggering event Data available for personalization
Vehicle inspection report inspection_completed
  • Data from the event: inspection date, inspector name, results
  • Data from the Vehicle object: make, model, year, mileage
  • Data from all records of the associated Service Center object: location, contact phone, next service date
Quote approval notification quote_approved
  • Data from the event: approval date, approver name
  • Data from the Quote object: amount, validity period
  • Data from all records of the associated Product object: name, details, specifications
Contract renewal notification contract_renewed
  • Data from the event: renewal date, new contract terms
  • Data from the Contract object: number, duration
  • Data from all records of the associated Service object: details, new pricing, benefits
Payment received confirmation payment_received
  • Data from the event: payment date, amount, payment method
  • Data from the Invoice object: number, details
  • Data from all records of the associated Order object: items, receipt link, next payment due
Course enrollment welcome enrollment_completed
  • Data from the event: enrollment date, confirmation status
  • Data from the Enrollment object: status
  • Data from all records of the associated Student object: name, age
  • Data from all records of the associated Course object: name, instructor, start date, materials link

Before you start

  1. Create custom objects
    Make sure you have created the custom objects you want to use for personalization and defined the associations between them. To learn more, check our dedicated article Create custom objects.
  2. (Optional) Create custom events
    If you want to trigger your automation based on a custom event linked to your objects, create the event first. To learn more, check our dedicated article Create custom events in Brevo.

Step 1: Create an object-based automation and select a trigger

  1. Go to Automations > Workflows.
  2. Click Create an automation.
    aut_click_create-an-automation_en-us.png
  3. Click Create from scratch.
    aut_click_create-from-scratch_en-us.png
  4. Select the custom object that should enter and progress in the automation.
  5. Click Continue.
    aut_select_object-based_en-us.png
  6. In the Triggers tab, select the event that triggers the automation.
    aut_select_object-based-trigger_en-us.png
  7. Configure the trigger settings.
  8. Click Save.

Step 2: Create an email

  1. In the Actions tab, select the Send email step.
    aut_add-send-an-email_en-us.png
  2. Click Add message and select Create new message.
    aut_send-an-email_add-new-message_en-us.png
  3. Click Create from scratch and select the Drag and drop editor.
    aut_create-from-scratch_drag-and-drop-editor_en-us.png

Step 3: (Optional) Insert a dynamic content block to display multiple associated object records

💡 Good to know
You do not need a dynamic content block when displaying data from a single object record. Simply insert object variables directly into Title or Text blocks as explained in Step 4.

A dynamic content block allows you to loop through and display all records linked to a directly associated object (all records are included, without any filtering). Each record will be shown with its own data.

Use a dynamic content block when the object triggering your automation is linked to multiple records of a directly associated object that you want to display, such as:

  • Listing all Equipment records linked to a Property record (for example, all equipment items needing maintenance).
  • Showing all Student records linked to an Enrollment record.

To add a dynamic content block:

  1. From the email editor, drag and drop the Dynamic content block into your canvas. The block settings open in the left panel.
    aut_drag-and-drop_dynamic-content-block_en-us.png
  2. From the Data source dropdown, select Object attribute > the object that has the associated records you want to display > associations > the associated object whose records you want to loop through.
    aut_object-based_dynamic-content-block_en-us.gif
  3. (Optional) By default, the number of records shown is limited to 3. To change the limit, click the +/- buttons or enter the maximum number next to the Number of items option.

Step 4: Add object variables to your email

Add object variables to your email to include personalized data from your objects. When the email is sent, these variables will be replaced with the correct information for each recipient.

  1. Insert the content blocks you want to use to display the object data. For example:
    • An Image block to show a photo (e.g., product image, company logo, service illustration)
    • A Text block to display details (e.g., subscription tier, expiry date, pricing, features)
    • A Button to redirect to a personalized URL (e.g., renewal link, account settings, upgrade page)
  2. Add object variables inside your content blocks. Expand the following accordions to learn how to add variables for each type of content: 

    ❗️ Important
    To repeat data from multiple associated object records, make sure to place the content blocks inside the dynamic content block you added in the previous step.
    🔠 Add a variable to text

    Add a variable inside a content block containing text to display specific object attributes:

    1. Click a Title, Text, or Button block.
    2. Place your cursor where you want to add a variable.
    3. Click the Add variable { } icon in the formatting bar.
    4. Select Object attributes.
      aut_add-variable_text_object_en-us.png
    5. Select the object type and the specific attribute you want to include in the email. For example, for a subscription renewal reminder, you could include the subscription name, tier, expiry date, and renewal link. The variable will be inserted, and a tag will appear in your content block.
    6. (Optional) To enter fallback text to use in case the value is missing, click the tag and enter the fallback text in the Value if empty field.
    🖼️ Add a variable to an image

    Add a variable to an Image block to display an image associated with an object:

    1. Click an Image block. 
    2. Under the Visual section, click the Add variable { } icon next to the Image URL field.
    3. Select Object attributes.
      aut_add-variable_image_object_en-us.png
    4. Select the object type and the attribute containing the image URL.
    🔗 Add a variable as a hyperlink on text

    Add a variable as a hyperlink on text to send recipients to a personalized URL:

    1. Click a Title or Text block.
    2. Highlight the text where you want to add the link.
    3. Click the Link 🔗 icon in the formatting bar.
    4. In the Target field, click the Add variable { } icon.
    5. Select Object attributes.
      aut_add-variable_text_link_object_en-us.png
    6. Select the object type and the attribute containing the URL.
    🔗 Add a variable as a hyperlink on an image

    Add a variable as a hyperlink on an image to send recipients to a personalized URL:

    1. Click an Image block.
    2. Under the Link section, click the Add variable { } icon next to the Target field.
    3. Select Object attributes.
      aut_add-variable_image_link_object_en-us.png
    4. Select the object type and the attribute containing the URL.
    🔗 Add a variable as a hyperlink on a button

    Add a variable as a hyperlink on a button to send recipients to a personalized URL:

    1. Click a Button block.
    2. Under the Link section, click the Add variable { } icon next to the Target field.
    3. Select Object attributes.
      aut_add-variable_button_link_object_en-us.png
    4. Select the object type and the attribute containing the URL.
💡 Good to know
To display a date in a specific format, use the date filter together with the time_parse filter inside your variable. To learn more, check our dedicated section in the article Modify the output of a variable using filters.

Step 5: (Optional) Limit the number of items repeated in your email

If you added a dynamic content block to your email, its content will repeat for each associated object record. By default, the number of items shown is limited to 3. This helps keep the message clear and visually appealing.

To change the limit:

  1. Click a Dynamic content block.
  2. Under the Layout section, the Limit number of items option should be activated by default. If not, activate it.
  3. In the Number of items field, click the up/down arrows or enter the maximum number of times the Dynamic content block should repeat its content.
    aut_dynamic-content-block_limit-items_en-us.png
➡️  For example
If you limit the number of items to 3 and a Property has 5 Equipment records, only 3 will be displayed in the email.

Step 6: (Optional) Show or hide content in your email based on specific conditions

Make your emails more relevant by showing or hiding content based on specific conditions. Only display content that matches each recipient's device, contact details, or object data.

For example, you can use conditional visibility to create unique emails that:

  • Show different renewal offers based on subscription tier (Premium vs Basic)
  • Display payment method options based on billing country or currency
  • Show upgrade incentives only for lower-tier subscriptions
  • Display loyalty rewards based on subscription duration or renewal count

➡️ To learn more, check our dedicated article Show or hide content in your emails (Content visibility).

Step 7: Save your email and activate your automation

  1. From the email editor, click Use this email in automation to save your email and return to the automation workflow.
  2. Complete any additional steps in your automation workflow as needed.
  3. Once your automation is ready, click Activate to activate your automation.

The object variables in your email will be automatically replaced with the relevant information for each recipient when the email is sent.

🤔 Domande?

In caso di domande, non esitare a contattare il team dell’assistenza creando un ticket dal tuo account. Se ancora non hai un account, puoi contattarci qui.

Se stai cercando aiuto per un progetto che prevede l'utilizzo di Brevo, possiamo metterti in contatto con l'agenzia partner di Brevo giusta per te.

💬 Questo articolo ti è stato utile?

Utenti che ritengono sia utile: 0 su 0