How do I set up Salesforce Campaign Influence so my LinkedIn and Google ads get credit for pipeline?

TofuAnswer by the Tofu team · checked

Turn on Customizable Campaign Influence in Setup, then add everyone your LinkedIn and Google ads bring in to an active Salesforce campaign. Salesforce's influence models credit only campaign members who are also a contact role on an open opportunity, so ad leads must be converted and added to the deal. The default Primary Campaign Source model gives 100% to one campaign. Account Engagement users can add first-touch, last-touch and even-distribution models, and anyone can build custom ones. People who only saw an ad never reach Salesforce, so those views get no credit.

Ask Tofu next

Pick a question and Tofu Ads Agent answers it in chat.

As of October 2026.

Before you start

  • The right edition. Customizable Campaign Influence works in Professional, Enterprise, Performance, Unlimited and Developer Editions, in Lightning Experience. Salesforce turns it on by default for new users: if Setup shows a Model Settings page when you search for campaign influence, you already have it. The older Campaign Influence 1.0 works only in Salesforce Classic.
  • Permissions. To turn it on, you need Customize Application and a Sales Cloud User, Service Cloud User or CRM User permission set license. To see influence records, users need the Campaign Influence permission set, Read on campaigns and opportunities, and Marketing User checked on their user record.
  • If you use Account Engagement (Pardot): Salesforce recommends turning on Connected Campaigns first.

Step 1: Create a Salesforce campaign for each ad campaign

Create one Salesforce campaign for each LinkedIn or Google campaign, or one per channel if channel-level credit is enough. Tick Active: influence models only scan active campaigns. Set the campaign Type to a value you can filter on later, such as Paid Social or Paid Search, and give it a name your UTMs or hidden fields can match.

Step 2: Add the people your ads bring in as campaign members

The influence models only look at campaign members, so a LinkedIn or Google lead that never joins a campaign gives that campaign nothing.

Where the lead comes fromHow you know which adHow it joins the campaign
LinkedIn Lead Gen FormsHidden fields with dynamic values such as CAMPAIGN_NAME or AD_SET_NAME (up to 20 per form)Your sync creates the lead, then a flow or Zapier's Add Lead to Campaign action adds the member
LinkedIn ads that click through to your siteURL tracking parameters in Campaign Manager, such as utm_campaign={{CAMPAIGN_NAME}}Hidden form fields save the UTMs on the lead, then a flow adds the member
Google Search ads that click through to your siteUTMs you add in the Final URL suffix (auto-tagging adds only a gclid)Same as above
Google lead form assetsThe webhook sends campaign_id and gcl_id with each leadYour webhook handler or Zapier creates the lead and adds the member
Account Engagement formsThe prospect's Account Engagement campaignCampaign Member Sync adds the first-touch campaign; add a completion action for later campaigns

A record-triggered flow that creates a campaign member when a lead's UTM campaign field matches a Salesforce campaign covers most website traffic. Two LinkedIn limits: you can't add hidden fields to a form that's attached to an active ad set (duplicate the form instead), and dynamic URL parameters can be set only at the account or campaign level.

For the sync itself, see How do I automatically send LinkedIn Lead Gen Form leads to HubSpot or Salesforce?

Step 3: Turn on Customizable Campaign Influence

  1. From Setup, enter Influence in the Quick Find box and click Campaign Influence Settings.
  2. Under Campaign Influence, select Enabled.
  3. If you use Account Engagement, choose whether to enable Additional Campaign Influence Models (see Step 5). With these on, auto-association rules support standard fields only.

Step 4: Set the auto-association rules

Open Auto-Association Settings. Set a time frame so old campaign touches stop counting, and add criteria such as campaign Type so only the campaigns you mean get credit. The same settings apply to every model.

Step 5: Pick the model that gives ads fair credit

ModelHow it splits creditWho can use it
Primary Campaign Source (default)100% to the campaign in the opportunity's Primary Campaign Source fieldEveryone. Records are automatic, and nobody can add them by hand
First Touch100% to the first campaign the prospect touched (based on the campaign member's Created Date)Account Engagement users
Last Touch100% to the last campaign before the deal closed (based on the campaign member's Last Modified Date)Account Engagement users
Even DistributionAn equal share to every campaign the prospect touchedAccount Engagement users
CustomWhatever reps enter, or what your Apex triggers or the API writeProfessional and Enterprise: 3 custom models. Performance and Unlimited: 5. Account Engagement Growth: 3. Plus, Advanced and Premium: 5. Developer: 1

With Primary Campaign Source, ads get credit only when an ad campaign is in that one field on the deal. If buyers also touch events, email and sales campaigns, a model that splits credit shows the ads' share more fairly. To build a custom model, from Setup enter Influence, click Model Settings, then New Attribution Model. A locked model accepts records from the API only. Turning off one of the standard models deletes its influence records.

Step 6: Get ad contacts onto the opportunity as contact roles

A lead counts only after it's converted to a contact and that contact is added to the deal as a contact role. Make this part of how reps create opportunities: a deal with no contact roles gives no campaign any credit. Once an opportunity closes (won or lost), Salesforce stops creating influence records for it. Every campaign member counts, whatever their member status.

Step 7: Show the results and report on them

Add the related lists to your page layouts: Campaign Influence on opportunities, Influenced Opportunities on campaigns, and Campaign Influence on accounts (with charts of revenue share by campaign and by campaign type). Related lists show only the model marked Default Model, and only one model can be the default. For pipeline by campaign, run the standard report Campaigns with Influenced Opportunities (Customizable Campaign Influence): opportunity amount, stage and revenue share next to campaign details. Its Contact column shows primary campaign members only, and it can't use the Opportunity Contact Role object or cross filters. You can build your own reports for any active model.

Common problems

ProblemWhy it happensFix
Ad campaigns show no influenced opportunitiesAd leads never became campaign members, the person isn't a contact role on the deal, the deal had already closed, or the campaign isn't activeAdd members (Step 2), add the contact role, check the dates, tick Active
The related list is empty or missingIt isn't on the layout, it shows a different default model, or the user lacks Marketing User or the Campaign Influence permission setAdd the list, set the default model, fix permissions
First-touch credit looks wrong for older prospectsA synced member's created date is the date it synced, not when the prospect was created in Account Engagement, and turning on Member Sync syncs existing prospects retroactivelyJudge first touch on prospects created after Member Sync was on
People who only saw your ads get no creditSalesforce only sees campaign membersDon't add everyone you target as members: every member counts, so you'd credit people who may never have seen an ad

Where Tofu fits

Tofu doesn't change Campaign Influence settings or create campaign influence records. It connects to Salesforce or HubSpot and your ad accounts, reads your pipeline and your closed-won and closed-lost deals, writes dynamic UTMs back to the CRM, and shows account journeys from first impression through opportunity to closed-won. Those journeys start with ad impressions, which Campaign Influence can't see, while Campaign Influence stays your record in Salesforce.

Sources (11)

Related answers