Skip to main content

How to integrate HeyReach with HubSpot

A complete guide to connecting HeyReach with HubSpot - automating contact creation, syncing engagement data, and tracking your full LinkedIn outreach activity timeline directly in your CRM.

The HeyReach x HubSpot integration automatically syncs your LinkedIn outreach activity into HubSpot - no manual data entry, no tab switching.

Every contact, reply, and campaign touchpoint shows up natively in your CRM, giving your sales team full visibility over LinkedIn activity without leaving HubSpot.

This guide covers everything you need to set up the integration and run it:

  1. connecting HubSpot,

  2. configuring when contacts are created,

  3. understanding what data gets synced, and

  4. monitoring your sync activity.

⚠️ This is the new version of the HeyReach HubSpot integration. If you used the previous version, you will see both cards in your Integrations page. The old version will be flagged with a warning, and the new version will be labelled "New". Both will be available during the transition period.


What the HubSpot integration gives you

Three things happen automatically once you connect:

  • Automatic contact creation - HeyReach creates contacts in HubSpot based on triggers you define (campaign add, reply, connection accepted, and more).

  • Rich engagement data - every contact is enriched with HeyReach attribution, exposure, engagement, and intent data, organised into a dedicated HeyReach property group in HubSpot.

  • Full activity timeline - every LinkedIn action (connection sent, message sent, reply received, and more) is logged directly on the HubSpot contact timeline.


Step 1 - Connect HubSpot to HeyReach

  1. In HeyReach, go to Integrations in the left sidebar.

  2. Find the HubSpot card (labelled "New") and click on it.

  3. Click Connect and complete the HubSpot OAuth authorisation flow.

  4. Once authorised, you will be redirected back to HeyReach and the integration will show as connected.

✅ The moment you connect, HeyReach automatically creates a custom HeyReach property group in HubSpot to hold all integration data. There is nothing to set up manually on the HubSpot side.

⚠️ Agencies managing multiple workspaces: Each workspace has its own independent HubSpot connection. Connect HubSpot separately in each workspace to keep client data clean and separated.

To disconnect at any time, return to the HubSpot integration page and click Disconnect. Syncing stops immediately.


Step 2 - Configure contact creation triggers

You decide when HeyReach creates a contact in HubSpot. There are four available triggers - enable the ones that match your workflow:

Trigger

When it fires

Lead added to a campaign

When a lead enters any active HeyReach campaign

Lead added to a list

When a lead is added to a HeyReach lead list

Reply received

When a lead replies to a LinkedIn message or InMail

Connection request accepted

When a lead accepts a connection request from a sender

🚨 Important! It's required that lead have an email assigned for contact creation.

A contact will only be created in HubSpot if the lead has an email address - either already known, or resolved through HeyReach's email enrichment.

Leads without an email are not synced. This is why we recommend you toggle "Auto-find missing email addresses" option on. ‼️

No duplicates. If a contact already exists in HubSpot (matched by email), HeyReach will update the existing record with HeyReach data rather than creating a duplicate.

What contact data gets created:
When HeyReach creates or updates a contact in HubSpot, the following fields are populated: name, email, job title, company, LinkedIn URL, location, website, and industry.


Step 3 - Understand the HeyReach property group

Every synced contact is enriched with HeyReach-specific data, organised into four categories within the HeyReach property group in HubSpot:

Attribution

Set once at the moment of first contact creation and never overwritten. This preserves the original source of the lead regardless of future campaigns.

  • Created by HeyReach (Yes/No)

  • First touch date

  • First campaign name and ID

Exposure

Updates as the contact moves through your outreach - showing breadth of touchpoints over time.

  • Campaign count

  • List count

  • Last campaign name

  • Last sender

  • Import source

Engagement

Updates when a reply is received - giving your sales team a real-time signal of who is responding.

  • Reply received (Yes/No)

  • Reply count

  • First reply date

  • Last reply date

  • Time to first reply (hours) - populated for the first reply only

Intent

Updates from HeyReach's auto-tagging - showing the sentiment direction of the conversation.

  • Latest intent (Positive / Neutral / Negative)

  • Positive reply count

  • Negative reply count

  • Last intent date


Step 4 - Configure activity timeline logging

HeyReach logs events directly onto each HubSpot contact's activity timeline. You can configure which events are logged from the HubSpot integration page in HeyReach.

Events available to log:

  • Connection request sent

  • Connection request accepted

  • Connection request withdrawn

  • Message sent

  • InMail sent

  • Reply received

  • Lead added to campaign

  • Lead paused in campaign

  • Lead added to list

  • Lead removed from list

  • Lead sent to a third-party app (Instantly / Smartlead)

Each logged event carries full context - campaign name, sender, message body, list name, and other relevant fields depending on the event type. If a field is not available for a given event, it is simply omitted rather than showing as blank.


Step 5 - Monitor your sync activity

From the HubSpot integration page in HeyReach, you can see a full activity log of everything that has been synced.

The log shows:

  • Lead name and email

  • The campaign, list, or tool that triggered the event

  • Success or failure status for each sync attempt

  • A clear, human-readable reason when something fails

This includes a log for contact creation events as well as all activity events, so you have full visibility into exactly what has and has not been synced (including a log for the contact creation as well - only if the same activity is enabled in HeyReach).


Contact deletion handling

If a contact is deleted in HubSpot, HeyReach detects this automatically and stops all future syncing for that lead.

There are a few important things to be aware of:

  • HeyReach does not send a notification when a contact is deleted in HubSpot, and the deletion is not recorded in the sync log

  • Once a contact is deleted in HubSpot, that same lead cannot be re-created by any HeyReach trigger - even if they receive new outreach

  • No further property updates or timeline events will be logged for a deleted contact

  • Deleting a contact from HubSpot does not remove the lead from any HeyReach lists or campaigns - they remain in HeyReach as normal

🚨 Be careful when deleting contacts in HubSpot.

Deleting is permanent from a sync perspective.

HeyReach will never re-create that contact, even if outreach continues.

If you want to stop syncing a specific lead without deleting the contact, disconnect the integration instead, or remove the lead from active HeyReach campaigns.


Frequently Asked Questions

A lead replied but no contact was created in HubSpot - why?
The most likely reason is that the lead does not have an email address. HubSpot contacts can only be created if an email is available. Add a Find Email step earlier in your campaign sequence to enrich leads before they reach the reply stage, and ensure the trigger for "Reply received" is enabled in your integration settings.

I connected HubSpot but I don't see the HeyReach property group in HubSpot - where is it?
The custom property group is created automatically at the moment of connection. In HubSpot, go to Settings - Properties and search for "HeyReach" - you should see the property group there. If it is not visible, try disconnecting and reconnecting the integration. If the issue persists, contact support.

A contact already exists in HubSpot with the same email - will HeyReach create a duplicate?
No. HeyReach matches contacts by email address. If a contact already exists, HeyReach will update the existing record with HeyReach data rather than creating a new one.

I'm an agency managing multiple clients. Do I need separate HubSpot connections per workspace?
Yes - each HeyReach workspace has its own independent HubSpot connection. This keeps client data cleanly separated in HubSpot. Connect HubSpot individually in each client workspace from their respective Integrations page.

Can I choose to sync only specific campaigns to HubSpot?
The integration works at the workspace level - all campaigns in a connected workspace will trigger syncing based on your configured triggers. If you want to limit syncing to specific campaigns, you can do this by adjusting your trigger settings to be more selective (e.g. only enabling the "Reply received" trigger rather than "Lead added to campaign").

A sync event failed - what should I do?
Check the sync activity log on the HubSpot integration page in HeyReach. Each failed event includes a human-readable reason. Common causes are: the contact was deleted in HubSpot, the lead has no email, or there was a temporary API issue. For persistent failures, contact our support team with the lead name and the error shown in the log.

Does the integration work retroactively? Will old campaign activity be synced?
No - the integration is not retroactive. Only activity that occurs after the integration is connected and configured will be synced. Past campaign activity, messages, and replies will not be backfilled into HubSpot.

What happens if I disconnect HubSpot?
Syncing stops immediately. Contacts already created in HubSpot remain there with the data already synced - nothing is deleted. If you reconnect later, syncing resumes from that point forward; historical activity from the disconnected period will not be backfilled.


Need help setting up the integration or troubleshooting a sync issue? Chat with our support team via the widget in the bottom-right corner - share the affected lead email and the error from the sync log and we will investigate. 🚀

Did this answer your question?