Overview#
Turn champion job changes into new opportunities.
This template explains a Play that automatically detects when one of your product champions switches to a new company, enriches their fresh contact details and allocates the opportunity to the right sales representative who has previously had a good relationship with that champion.
Turn a champion's job change to a new opportunity#
Step 1 - Set variables#
Define your inputs
The workflow starts with a Variables node that receives the columns exported from your CRM. To reproduce the flow shown in the screenshot you will need to fill in the input for the following fields:
- CRMContactID – The record id of the champion in your CRM
- championLinkedInURL – The CRM field containing the current LinkedIn profile link of the champion
- associatedCompanyID – The field containing the CRM ID of the champion's current company (as per your CRM)
- lastCheckDate – The field containing the timestamp of the last time the champion was analysed. Helps throttling re-checks
- firstName / lastName / jobTitle – The fields containing the basic details of the champion. Required for enrichment & messaging
These variables are passed downstream through the rest of the workflow.
Step 2 - Enrich champion's profile#
Pull fresh data from LinkedIn
Next, we enrich the champion using Cargo's LinkedIn Enrich action. The action returns an object that includes the person's current employer, domain, seniority, etc.
Next, we use a filter to make sure that the output contains a valid company LinkedIn URL, which in some edge cases may be missing. This is important in order to evaluate whether a champion has changed jobs or not.
Step 3 - Stop if the company hasn't changed#
Proceed only when a new job is detected
We use a simple Cargo expression to compare the LinkedIn company URLs between what is provided by the LinkedIn node above, and what was contained in the CRM. If these two values are not the same, it usually means that the champion has started a new role.
If they match, the champion has not changed jobs – the flow simply proceeds down the No branch and ends by updating the lastCheckDate
.
If they differ, we know the champion moved to a new company and we advance to the prospecting steps below.
Note, that comparing the LinkedIn company URLs is a more robust approach than comparing website domains or company names, etc, however this does assume that this field is properly enriched a priori in your CRM for your champions. If it's not the case, there's a more sophisticated approach by using an LLM to compare the LinkedIn payload versus the associated company in the CRM for that champion to resolve if there's a difference between the LinkedIn or the CRM in this respect.
Step 4 - Find the champion's new work email#
Query multiple providers to retrieve an email
Under the Yes branch (new employer detected) a Cargo' waterfall email tool queries a cascade of email providers to be able to find a valid email for the champion's new company.
The node returns a validated work email that we will attach to the new contact record.
Step 5 - Allocate the opportunity#
Route the contact to the right owner
Another Branch node answers the question: Is this champion already owned in the CRM?
- YES → Use an Allocate action to re-assign the existing contact back to their original owner (often the CSM who built the relationship).
- NO → Use the same Allocate action but let the default round-robin or territory rules decide.
The Allocate node returns ownerSlackID
which we will use for internal alerting.
Step 6 - Write / update CRM records#
Keep your CRM tidy
Depending on the branch chosen above:
- Write → Update the original CRM contact with the new email & employer, mark status as ex-employee or obselete contact.
- Create Contact → Insert a brand-new contact associated to the new company and link it back to the previous record for historical context.
Finally, update lastCheckDate
so the loop will skip this champion in the next 7-day cycle.
Note, that there's debate about this, however, the consensus among the RevOps community is that it's better practice to treat a contact with a unique email as net new (even when it represents a pre-existing person). This means that if a champion has moved companies and has a new work email, we will create a new contact for the same person (no, it's not a duplicate) while tagging the older contact as obselete. This is helpful for keeping the legacy information attached to the previous contact (amongst deals, transcripts, etc.) among other reasons. See this workshop we held with the GTME community to learn more about the debate around this topic.
Step 7 - Ping the owner (if any) in Slack#
Rally your rep to act fast
Use a Slack – Send message node to notify ownerSlackID
that their champion, {{ vars.firstName }} {{ vars.lastName }}
, just joined {{ nodes.enrichChampion.output.company.name }}
.
It's often helpful to include the LinkedIn profile and a suggested opening line.
Unsurprisingly, timely action here dramatically improves win-rates.
Step 8 - Ping the owner (if any) in Slack#
Putting it on autopilot
Schedule the play to run every few weeks against the list of champions in your CRM. Cargo will quietly watch for job moves and surface warm opportunities straight into Slack – letting your team focus on closing, not prospecting.
- Content
- Overview (1 min)
- Turn a champion's job change to a new opportunity (1 min)
- Step 1 - Set variables (1 min)
- Step 2 - Enrich champion's profile (1 min)
- Step 3 - Stop if the company hasn't changed (1 min)
- Step 4 - Find the champion's new work email (1 min)
- Step 5 - Allocate the opportunity (1 min)
- Step 6 - Write / update CRM records (1 min)
- Step 7 - Ping the owner (if any) in Slack (1 min)
- Step 8 - Ping the owner (if any) in Slack (1 min)
- Content
- Overview (1 min)
- Turn a champion's job change to a new opportunity (1 min)
- Step 1 - Set variables (1 min)
- Step 2 - Enrich champion's profile (1 min)
- Step 3 - Stop if the company hasn't changed (1 min)
- Step 4 - Find the champion's new work email (1 min)
- Step 5 - Allocate the opportunity (1 min)
- Step 6 - Write / update CRM records (1 min)
- Step 7 - Ping the owner (if any) in Slack (1 min)
- Step 8 - Ping the owner (if any) in Slack (1 min)