LinkedIn Campaign Manager shows CPL — cost per lead by campaign. It does not show the cost of a closed deal per campaign. This is critical for B2B: a campaign with CPL of $80 may generate clients at $2,400 CAC, while a campaign with CPL of $140 may generate clients at $900 CAC. Without attribution to Won, budget is allocated by CPL rather than real return.
Prooflytics bridges this gap: it captures li_fat_id (LinkedIn Click ID) via a first-party Pixel, links the click to a contact in the CRM, and shows cost per closed deal per LinkedIn campaign — in the same dashboard alongside Meta and Google.
The Problem with LinkedIn Ads Attribution
LinkedIn Insight Tag tracks conversions on the site — a completed form, registration, or page visit. This works for top-level reporting. But it has three structural limitations:
Long deal cycle. B2B deals close in 60–180 days. LinkedIn’s attribution window is a maximum of 30 days by click. A lead came from LinkedIn in January, the deal closed in April — that conversion is not counted in Campaign Manager.
No CRM connection. LinkedIn sees the form — it doesn’t know whether that submission became a qualified lead, went through a demo, or signed a contract. CPL in Campaign Manager ≠ cost per customer.
Ad blockers and browser restrictions. Safari ITP and browser extensions block Insight Tag as a third-party script. Attribution via third-party pixel loses 20–40% of conversions in B2B audiences (where Safari and AdBlock are used more frequently).
How Prooflytics Solves LinkedIn Attribution
Step 1: Capture li_fat_id via first-party Pixel.
When a user clicks a LinkedIn ad, the parameter li_fat_id is appended to the landing page URL. The Prooflytics Pixel — a first-party script loaded from your domain — captures this parameter and stores it in a first-party cookie (_pf_li_fat_id) with a 90-day lifetime.
This matters: a first-party cookie is not blocked by Safari ITP or browser extensions — unlike the third-party Insight Tag.
Step 2: Bind li_fat_id to a CRM contact.
When a visitor submits a form (demo request, registration, contact) — the form passes li_fat_id from the cookie along with the email to the CRM. Prooflytics stores the link: email -> li_fat_id -> LinkedIn campaign_id.
Step 3: Attribution at Won.
Deal closed -> Prooflytics retrieves li_fat_id from the contact -> identifies the LinkedIn campaign via Marketing API -> records the Won against that campaign. This happens regardless of how much time has passed since the click — 7 days or 6 months.
Step 4: Dashboard.
Prooflytics shows per LinkedIn campaign: spend -> leads -> Won -> CAC. Next to it — the same data for Meta Ads and Google Ads. The marketer sees which channel and which campaign delivers the most profitable customers.
What Prooflytics Shows for LinkedIn Ads
In the LinkedIn campaign dashboard:
| Metric | Source |
|---|---|
| Impressions, Clicks, Spend | LinkedIn Marketing API (native sync) |
| Leads (from campaign) | li_fat_id -> CRM contacts |
| MQLs | Leads that reached the demo stage |
| Won deals | Closed deals with li_fat_id of this campaign |
| CAC per campaign | Spend ÷ Won deals |
| Revenue attributed | Sum of Won deals attributed to the campaign |
For each campaign — breakdown by ad sets and individual ads. You can see not just “the LinkedIn campaign is working,” but “this specific ad with this creative brings closed deals at $1,200 CAC.”
Daily AI Briefing for LinkedIn
Prooflytics generates a daily briefing (04:00 UTC) across all connected channels, including LinkedIn. The format has four parts:
- Fact: “The ‘VP Marketing — ABM’ campaign generated 3 leads yesterday at CPL $95”
- Interpretation: “CPL is 40% below the 30-day LinkedIn average”
- Action: “Increase the campaign’s daily budget by 30%”
- Consequence: “At the current lead-to-Won conversion rate — 1–2 additional closed deals per month”
For LinkedIn-specific insights, the briefing also considers audience quality: Prooflytics sees the job titles of CRM contacts that came from LinkedIn and compares them to the target ICP. If the “VP Marketing” campaign generates VPs of Marketing — that confirms targeting accuracy. If managers are coming in instead — the audience needs adjustment.
iOS/Browser Restrictions: Why First-Party Matters More for LinkedIn
LinkedIn Insight Tag is a third-party script (loaded from snap.licdn.com). Safari ITP (Intelligent Tracking Prevention) limits third-party script data storage to 24 hours. For B2B audiences where MacBooks and Safari are common, this means losing 25–35% of attribution.
The Prooflytics Pixel loads from a subdomain of your domain (analytics.yoursite.com). For Safari, this is first-party — ITP restrictions do not apply. li_fat_id data is stored for 90 days in a first-party cookie without degradation.
Result: Prooflytics shows the full picture that Insight Tag cannot see.
Connecting LinkedIn Ads to Prooflytics
- Install the Prooflytics Pixel on landing pages and forms — standard installation via
<script>tag or GTM. The Pixel automatically capturesli_fat_idfrom the URL. - Connect LinkedIn Ads in Prooflytics -> /connect -> LinkedIn Ads. Status: Beta (Marketing API approval pending). Campaign insights are synced: spend, impressions, clicks by campaign.
- Connect CRM (HubSpot, Kommo, Salesforce) — if not already connected. Prooflytics receives contacts with
li_fat_idand Won events. - Configure li_fat_id transmission in the form. On form submit — read the
_pf_li_fat_idcookie and pass it to a hidden field. Prooflytics provides a ready-made snippet for popular form builders (HubSpot Forms, Webflow Forms, Typeform).
Real-World Case Study
B2B SaaS (EU, LinkedIn budget $15k/month, Prooflytics + HubSpot, 90-day deal cycle):
- Before: LinkedIn Campaign Manager showed 40–60 leads/month by campaign. The marketer allocated budget by CPL. The cheapest campaign by CPL ($65) received 40% of the budget.
- After connecting Prooflytics: it turned out the “cheap” campaign ($65 CPL) was generating Won deals at $3,800 CAC. The campaign with $140 CPL was generating Won deals at $1,100 CAC. Budget was reallocated.
- Result over 3 months: same monthly budget -> 60% more revenue from LinkedIn.
This is a classic example of optimizing by CPL instead of CAC — the same problem as with Meta Ads, but even more acute on LinkedIn due to the longer deal cycle.
Who This Is For
- B2B SaaS and service businesses with a LinkedIn budget of $5k+/month
- Teams with a deal cycle of 30+ days — where LinkedIn attribution with standard tools is nearly impossible
- Marketers who want to justify or optimize their LinkedIn budget in front of leadership
- Companies with an ICP defined by specific job titles (VP, Director, Head of) — where LinkedIn targeting is most precise
Frequently Asked Questions
Does LinkedIn Marketing API require separate access?
LinkedIn Marketing API requires LinkedIn approval (Marketing API Partner Application). Prooflytics is in the process of approval (Beta). When connecting via /connect -> LinkedIn Ads — campaign sync is available for approved accounts. Status can be checked in Prooflytics Settings -> Data Sources.
Is li_fat_id always present in the URL when clicking an ad?
LinkedIn adds li_fat_id only for users who have personalized ads enabled in their LinkedIn account. LinkedIn estimates this is 70–80% of users. The remaining 20–30% are attributed via UTM campaign parameters (utm_source, utm_campaign) as a fallback mechanism.
How do UTM and li_fat_id work together?
Prooflytics uses both: li_fat_id — for precise attribution down to the specific ad. UTM — for attribution when li_fat_id is unavailable (users with personalization disabled, direct visits). Priority: li_fat_id > UTM. This is analogous to how Prooflytics handles fbclid + UTM for Meta Ads.
Does Prooflytics show LinkedIn data separately from other channels?
Yes. At /channels/linkedin — a dedicated page with a full KPI strip, breakdown by campaigns and ads, AI insights bar, anomaly feed. In /dashboard — LinkedIn widgets can be added alongside Meta and Google for cross-channel comparison.
Which Prooflytics plan is needed for LinkedIn Ads?
LinkedIn Ads is available from the Growth plan ($199/month): 15 connected accounts, 3 users, daily AI briefing. If the team is larger than 3 or API access is needed — Scale ($449/month).
Summary
- Prooflytics Pixel captures
li_fat_idin a first-party cookie — more reliable than Insight Tag in Safari - Attribution chain:
li_fat_id-> CRM contact -> Won -> CAC per LinkedIn campaign - Long B2B cycles are not a problem:
li_fat_idattribution is not limited to a 30-day window - LinkedIn Marketing API syncs spend -> combined with Won data delivers real ROI
- Daily briefing includes LinkedIn anomalies and budget recommendations
- Comparison with Meta and Google Ads in a single dashboard — final CAC by channel
If you are spending on LinkedIn Ads and want to see cost per closed deal by campaign — connect Prooflytics and configure li_fat_id transmission through your form. Exceltic.dev assists with Pixel installation and CRM integration.