---
title: "HubSpot + Brevo Integration"
description: "Plan a HubSpot contacts to Brevo sync, including field ownership, identity, consent, and the checks needed before a live connection."
url: https://tajo.io/docs/integrations/hubspot-brevo/
markdown: https://tajo.io/docs/integrations/hubspot-brevo.md
lang: en-US
---

# HubSpot + Brevo Integration

| Source field | Destination field | Sample value |
| --- | --- | --- |
| `email` | `email` | `alex@example.com` |
| `firstname` | `FIRSTNAME` | `Alex` |
| `id` | `HUBSPOT_ID` | `hs_1042` |

## HubSpot + Brevo

Tajo has a HubSpot connector implementation and a draft contact mapping for Brevo. A self-serve HubSpot connection is not available yet. The connector has offline test coverage, but a live HubSpot install and production sync have not been verified. [Contact the team](https://tajo.io/contact) if you need this route; ask for a live connection and sync preview before relying on it.

## Define the contact sync

Start with one direction: HubSpot owns the selected CRM fields, and Brevo receives the fields needed for email. Keep HubSpot’s contact ID as a stable source key. Email is useful for finding a Brevo contact, but addresses can change or be shared; decide how an address change updates the existing match before the first run.

| HubSpot source | Proposed Brevo destination |
| --- | --- |
| email | `email` |
| first name, last name | `FIRSTNAME`, `LASTNAME` |
| phone, company | `PHONE`, `COMPANY` |
| job title, lifecycle stage | `JOB_TITLE`, `HUBSPOT_LIFECYCLE` |
| contact ID | `HUBSPOT_ID` |

This is a proposed map, not a promise that every field is configured in your Brevo account. Confirm the destination attributes and decide which system owns each field. If Brevo also edits a mapped field, set a conflict rule so a later sync cannot silently overwrite that edit.

Marketing eligibility needs its own rule. Check the relevant HubSpot marketing subscription status and global opt-out for each address, then check Brevo’s suppression state before any marketing use. An absent or unknown subscription status is not proof of opt-in. Plan how an opt-out in either system stops future sends and prevents a later CRM update from reactivating the address. Test a newly subscribed contact, an unsubscribed contact, and an address change.

## Verify before use

Ask the team to demonstrate an authorized HubSpot connection, a field and consent preview with sample records, a repeat run that creates no duplicates, and a changed record reaching Brevo. Confirm the update schedule, retry behavior, and a way to inspect failures for your account. If a reverse flow is needed, give it separate field ownership and loop prevention rules. Company and deal syncs need their own mapping and proof.

The [data sync guide](https://tajo.io/resources/help/getting-started/understanding-data-sync/) explains the rule concepts. For a separate integration you operate yourself, see HubSpot’s [official API documentation](https://developers.hubspot.com/docs/api-reference/overview) and Brevo’s [MCP server guide](https://tajo.io/docs/mcp/brevo-mcp-server). Such a flow needs its own consent, identity, and retry checks.
