Mirror new SourceWhale contacts into HubSpot, enriched
Every contact your team adds in SourceWhale gets enriched with their current role and company, then created or updated in HubSpot without duplicates.
Integrations
SourceWhale
Apollo
HubSpot
Slack
Type
Categories
- Sales
- Operations
When a new contact is added in SourceWhale, enrich that person and mirror them into HubSpot so the CRM never drifts from what outreach is actually doing. Trigger this on a webhook from SourceWhale's contact-added subscription so it runs once per new contact.
Take the contact from the webhook payload: email address, first and last name, and the SourceWhale campaign that added them. Run Apollo People Enrichment once on that email plus name to fill in current employer, job title, seniority and location. Apollo People Enrichment consumes credits, so enrich exactly once per new contact and never re-run it inside a retry loop.
Before writing anything to the CRM, check HubSpot with Search Contacts on the email address. This dedupe check always runs before any create. If there is no match, create the record with Create Contact. If there is a match, update that existing contact with Update Contact instead of creating a duplicate.
Write the SourceWhale campaign name into a HubSpot contact property, for example a single-line text property called SourceWhale campaign, so we can always tell which outreach sequence sourced the person. Set the contact lifecycle stage from what enrichment returns, and populate current employer, job title, seniority and location from the Apollo result.
If the enriched title is director level or above (director, head of, VP, C-level, founder or owner), also post a short heads-up with Slack Send a Message to our outreach channel. Keep it to a couple of lines naming the person, their title, their company and the campaign that pulled them in.
If Apollo returns no confident match, still write the HubSpot record from the raw SourceWhale fields and mark it as unenriched, rather than dropping the person. Leave the enrichment fields blank, set a clear unenriched flag, and still stamp the campaign name so the record can be reviewed later. Never skip HubSpot just because enrichment came back empty.
What it does
- Picks up every new contact the moment outreach adds them in SourceWhale, so the CRM never falls behind the campaigns.
- Fills in current employer, job title, seniority and location automatically before anything reaches HubSpot.
- Looks the person up in HubSpot first, so an existing contact gets updated rather than duplicated.
- Stamps each record with the outreach campaign that sourced them, and posts a short heads-up in Slack when someone director level or above comes through.
What you’ll need
- A SourceWhale account with admin access, so new contacts can be handed over automatically
- An Apollo account with enrichment credits available
- A HubSpot account where you can create and edit contacts
- A spare contact property in HubSpot to hold the campaign name (a simple text field)
- A Slack workspace and a channel for the senior-contact heads-ups
How to customize it
- Move the bar for the Slack heads-up: director and above by default, or tighten it to VP and above.
- Choose which Slack channel gets the alert, or send it as a direct message to the account lead instead.
- Decide which lifecycle stage new contacts land on, and rename the property that stores the campaign name.
Use cases
- Lead Enrichment
- Data Sync
- Notifications & Alerts