Checked 31 August 2026

Connecting BrandJet to wherever the record lives

Reach and record are two different jobs and they want two different tools. BrandJet syncs to HubSpot, Attio and Slack, and ships webhooks, API access and an MCP integration. Which means the join is a design decision rather than a limitation, and it is worth making deliberately.

One rule, and everything else follows from it

A prospect who has not replied belongs to the reach layer. A person in a conversation belongs to the record. Get that boundary right and the two systems never argue. Get it wrong and you have two half pipelines that disagree about who is live.

The common failure is syncing everything, immediately. Ten thousand cold contacts land in a CRM that was holding four hundred real relationships, and the record stops being a record. The sync should start at the reply, not at the import.

Stays in BrandJet

Sourced leads, the enriched list, sequence state, sends, bounces, who is mid campaign. None of this is a relationship yet, and none of it belongs in the system your team opens every morning.

Crosses to the record

A reply, a booked meeting, an opt out, and the person attached to each. Everything downstream of a human being answering, which is exactly the point at which a CRM starts earning its keep.

What BrandJet gives you to build the join with

RouteWhat it is forReach for it when
HubSpot syncA native connection to the most common record systemHubSpot is already the record and you want the least work
Attio syncNative, to the other record system it namesYou run Attio and want the same
SlackNotification rather than recordA reply needs a human's attention in minutes, not at end of day
WebhooksReal time events at an endpoint you ownThe record is anything else, or the mapping has rules in it
APIRead and write on your own scheduleYou need to pull as well as receive
MCPAn assistant reaching the workspace in conversationYou want to ask rather than build a report

Source: brandjet.ai/features, integrations and MCP entries, read 31 August 2026. The native list is stated as "HubSpot, Attio, Slack, and more", so check the current catalogue for yours before assuming a webhook is required.

If the record is not HubSpot or Attio

Which increasingly it is not. The webhook route is the same shape in every case.

  1. Decide what a reply creates

    A person, usually. Sometimes a deal, and the answer differs by system: on Day.ai a reply cannot open a deal through Zapier at all, so the person is created and a human opens the deal. That constraint is written up here.

    A decision, not a build
  2. Send the reply event, not the contact list

    One webhook on reply. Resist the urge to also sync sends, opens and bounces: they are reach metrics and they belong on the reach side, where the reporting already understands them.

    An afternoon
  3. Carry the campaign name across

    The single most useful field, and the one people forget. Without it the record knows a person arrived and not which message brought them, so nothing can ever be attributed back.

    One field, do it now
  4. Decide what happens on an opt out

    Suppression has to reach both systems or somebody gets mailed again from the other one. This is the leg most setups skip and the only one with a legal edge to it.

    Before you send, not after

BrandJet also carries its own CRM, and when to use it

Use it

You do not have a record system yet

Lead management, pipeline stages, notes and interaction history are built in. For a team with nowhere to put a booked call, somewhere is better than a six month implementation, and you can move later.

Do not use it

You already have a record system

Two pipelines is worse than either one alone. If HubSpot, Attio, Day.ai or Clarify already holds your customers, the built in CRM is the thing to leave switched off and the sync is the thing to configure.

Where the four record systems actually differ, if you are still choosing.

Common questions

Does BrandJet integrate with HubSpot?

Yes, HubSpot and Attio are both named on the features page, alongside Slack, with webhooks and API access included. Confirm the current catalogue before planning, since the page says "and more".

Should I sync all my leads into my CRM?

No. Sync at the reply. Cold contacts that have not answered are reach layer data, and pushing thousands of them into a record system turns it into a list nobody trusts.

What if my CRM is not on the list?

Use a webhook on the reply event to an endpoint you control, and write from there. That is also the right route whenever the field mapping carries any business logic rather than being a copy.

Should I use BrandJet's own CRM?

If you do not have one, yes, for now. If you do, no. The failure mode is two pipelines that disagree about who is live, and it is much harder to unpick later than it is to avoid at setup.

How do I attribute a booked meeting back to a campaign?

Carry the campaign name across on the reply event and store it on the record. It costs one field at setup and it is the only way the record can ever answer which message worked.

What about opt outs?

Suppression has to reach both systems. Decide that before the first send, not after somebody gets mailed twice from two places.

Where we come in

We build the join between reach and record

Most setups sync everything on day one and turn a record system into a list nobody trusts. The sync should start at the reply, and getting that boundary right is most of the work.

  • The reply event wired to your record system, whatever it is
  • Campaign name carried across, so a booked meeting can be attributed
  • Suppression reaching both systems before the first send goes out
  • The built in CRM switched off if you already have a record system

Free, no call required

The reach to record wiring guide

Not ready to talk to anyone? Take this instead. One email, nothing else unless you ask for it.