Skip to main content
Full Circle Insights

Understanding Opportunity Association

Filling In The Missing Links

When it comes to determining which campaigns drove which opportunities, complete data is key. Opportunity Association helps link opportunities with the campaigns that influenced them, filling in gaps and creating a clearer picture of cause and effect.

To determine which campaign drove a specific opportunity, that opportunity must be associated to a funnel. Before it can be associated to a funnel, however, it must first be associated to a campaign member response. This occurs naturally when an opportunity is created via lead conversion, or from a contact that already has an active campaign response. Full Circle's Active Mode enforces this behavior of opportunity creation. But for users in Passive Mode, or for opportunities that are cloned or created programmatically, there isn't a natural way to always associate the opportunity to a campaign member for purposes of funnel tracking. In these scenarios, we recommend using the Opportunity Association feature to associate the most appropriate campaign member for each opportunity created in order to track it in a funnel.

Opportunity Association is highly configurable, so it's important to think through each configuration option carefully. For further configuration details, see Configuring Opportunity Association

Why use Opportunity Association?

If you have passive users defined in Organization Mode, or if Opportunities are created in other ways outside of Lead Conversion or from a Contact, you may configure Opportunity Association to associate existing campaign members (or a default campaign) to Opportunities that do not have one automatically assigned to them. This allows you to link more Opportunities with Campaigns, even if your Sales teams are not required to do it manually.

For example, if a user is in Active Mode, that user is only able to create a new Opportunity from a Contact that has an Active Response. This rule does not apply to users in Passive Mode, so a passive user may create new Opportunities any time they choose. Opportunity Association can find the best response for each new Opportunity based on how it is configured.

When does Opportunity Association run?

If Opportunity Association is enabled, it will trigger every time a new Opportunity is created. 

What happens when an Opportunity gets associated to a response?

When a Campaign Member and Opportunity get associated through Full Circle Insights Opportunity Association, the following fields get populated, tying the records together:

  • Campaign Member:  Opportunity Name (FCRM__FCR_Opportunity__c) 
  • Opportunity:  Admin Originating Contact (FCRM__FCR_Admin_Originating_Contact__c)
  • Opportunity:  Response ID (FCRM__FCR_Response_ID__c)

The following fields will also be populated on the Opportunity:

  • Opportunity: Primary Campaign Source (CampaignId)
  • Opportunity: First Campaign Touch (FCRM__FCR_First_Campaign_Touch__c)
  • Opportunity: Last Campaign Touch (FCRM__FCR_Last_Campaign_Touch__c)

What is an Active Response? What is a Non-Active Response?

An Active Response is a response that has met score threshold and is being tracked in the funnel. Only one response on each opportunity or possible opportunity will be tracked in the funnel, to prevent clutter and loss of data integrity from redundant responses. 

A Non-Active Response is a response on a campaign that is not being tracked in the funnel. Only one response on each opportunity or possible opportunity will be tracked in the funnel, to prevent clutter and loss of data integrity from redundant responses. 

What is a Prioritized Non-Active Response? 

"Prioritized Non-Active Response" is the term used within Opportunity Association to refer to a Non-Active Response that a user has designated as being higher priority than other Non-Active Responses. This designation is based on the Campaign Member Response Status value. If Opportunity Association is configured to both allow and prioritize association of Non-Active Responses, a multi-picklist appears in which you may select some Campaign Member Response Status values to prioritize over others. 

For example, some users may choose to prioritize dispositioned responses over all others (i.e. "Nurture", "Recycled"). In this case, when Opportunity Association is searching for the best response to associate to a new opportunity, any Campaign Member with a Response Status value of "Nurture" or "Recycled" is chosen before another Non-Active response in the selected timeframe.

Responses that won't ever be associated

Some responses will never meet criteria to be associated. Any Campaign Member with the following values will not meet criteria:

  • Response Date (FCRM__FCR_Response_Date__c) is null.
  • Opportunity Name (FCRM__FCR_Opportunity__c) is not null.
  • Response from a contact that is not on the Account associated to the Opportunity (even if it is the Primary contact on the Opp)

Why do I see skew or heap size errors?

Salesforce has limitations that can be reached using Opportunity Association. Similar to skew errors that can happen with attribution discussed in this article, when an account is related to more than 50,000 other record skew or heap size exceptions will occur. 

Because of this Saleforce limitation there is no way to associate Opportunities related to Accounts with so many records. Therefore we suggesting not attempting association for these Opportunities by adding the Account ID's to the "Which Opportunities should not be associated?" section in Opportunity Association configuration. 

How do I change priority levels on any given row?

Every row in the prioritization table has a number to the left. Other than the row for Active Primary Contact Role, any row can be moved up or down with the arrow buttons, or be removed from prioritization entirely by clicking the "x".

Why can't I lower the priority of the Active Primary Contact Role?

The purpose of Opportunity Association is to find the best response to associate to each Opportunity. If an opportunity Primary Contact Role has an active response, that is the most likely candidate for the best response, and we have built Opportunity Association around this concept. 

Can I associate a response from a different Account than the Opportunity?

Currently Opportunity Association only works on Responses within the same Account as the Opportunity, even if the Primary Contact Role is on a different Account.

Is there a need to update the Async Delay?

Opportunity Association uses asynchronous jobs to associate opportunities to responses. The default delay is 20 minutes, but because it is asynchronous, you may increase or decrease the delay. Reasons to lengthen the delay may include allowing users enough time to add Contact Roles to the Opportunity, or allowing other processes to finish before the association begins. You can program the delay to last anywhere between 1 and 1440 minutes.

What is Bulk Association?

You can use Bulk Association to associate existing Opportunities. When Opportunity Association is enabled, all new Opportunities go through Opportunity Association upon creation. If you choose to use this feature for existing or historical Opportunities, you may do so by using Bulk Association.

At the top right corner of the Opportunity Association Configuration page, you'll see a "Run Bulk Association" button. If you click this, a new pop-up window appears with two date fields ("Date to search from" and "Date to search through") and a "Run Bulk Association" button. If you use the date fields to define a date range based on the Opportunity Created Date and click run, all Opportunities created within that date range will be run through Opportunity Association in the order of the created date. 

More on Bulk Association and Opportunity Created Date order

If an Account has multiple Opportunities created within a defined Bulk Association date range, those Opportunities will be processed in order by created date. This is important because if the first Opportunity within the date range becomes associated to the campaign member that meets criteria, that campaign member will not be available to associate to the next opportunity.

Is there a way to audit Opportunity Association?

When a Campaign Member is associated to an Opportunity via Opportunity Association, the Opportunity Match Association Date (FCRM__FCR_Opportunity_Match_Association_Date__c) field is time-stamped. Also, if a default Campaign Member was added to the Opportunity Primary Contact Role and associated by Opportunity Association, the Opportunity Match Response Insertion (FCRM__FCR_Opportunity_Match_Response_Insertion__c) checkbox field gets checked.

Prioritization Constraints:

There are three constraints built into the prioritization table, as follows:

  1. Active Responses on the Primary Contact Role will always be highest priority. You cannot prioritize other types of responses above this.
  2. "Other Contact Roles' cannot be higher priority than 'Primary Contact Role' within any given Response Status Type.
  3. 'Contact on Account' cannot be higher priority than 'Other Contact Roles' or 'Primary Contact Role' within any given Response Status Type.

If you attempt to break one of these constraints, you will get a red error and be unable to save the configuration.

Prioritization Examples

Example 1: You'd like to find the right match for your Opportunity. In order of priority, you'd like to search for:

  1. Any response (active or non-active) on the Primary Contact Role
  2. Any response (active or non-active) on any other Contact Role
  3. Any response (active or non-active) across the Account

Configuration:

clipboard_ed9140f14af16e4d824ee43c5323b8230.png

 

Example 2: You'd like to find the right match for your Opportunity. In order of priority, you'd like to search for:

  1. The earliest response (active or non-active) on any Contact Role

Configuration:

clipboard_e3a9165171576dfec586fefbc60228722.png

clipboard_e13c210841876da5ee2eaa0bf06d24202.png

Example 3: You'd like to find the right match for your Opportunity. In order of priority, you'd like to search for:

  1. If there is an Active Response on the Primary Contact Role, match it
  2. Otherwise, match the most recent Active Response on the Account

Configuration:

clipboard_e04f5dcc0aac32d76282ff39b738e6eed.png

clipboard_e29c38394e54188923a4d74dae98765f3.png

Example 4: You'd like to find the right match for your Opportunity. In order of priority, you'd like to search for:

  1. Active Response on the Primary Contact Role
  2. Active Response on Contacts across the Account
  3. Active Response on the Other Contact Roles

Configuration: 

clipboard_e250be0c006fe85f60e6ece4fc20f346e.png

This configuration is not allowed because it breaks one of the three prioritization configuration constraints.

  • Was this article helpful?