Prooflytics + LinkedIn Ads: Real CAC from LinkedIn Ads to Closed Deal

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:

MetricSource
Impressions, Clicks, SpendLinkedIn Marketing API (native sync)
Leads (from campaign)li_fat_id -> CRM contacts
MQLsLeads that reached the demo stage
Won dealsClosed deals with li_fat_id of this campaign
CAC per campaignSpend ÷ Won deals
Revenue attributedSum 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:

  1. Fact: “The ‘VP Marketing — ABM’ campaign generated 3 leads yesterday at CPL $95”
  2. Interpretation: “CPL is 40% below the 30-day LinkedIn average”
  3. Action: “Increase the campaign’s daily budget by 30%”
  4. 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

  1. Install the Prooflytics Pixel on landing pages and forms — standard installation via <script> tag or GTM. The Pixel automatically captures li_fat_id from the URL.
  2. Connect LinkedIn Ads in Prooflytics -> /connect -> LinkedIn Ads. Status: Beta (Marketing API approval pending). Campaign insights are synced: spend, impressions, clicks by campaign.
  3. Connect CRM (HubSpot, Kommo, Salesforce) — if not already connected. Prooflytics receives contacts with li_fat_id and Won events.
  4. Configure li_fat_id transmission in the form. On form submit — read the _pf_li_fat_id cookie 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_id in 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_id attribution 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.

More articles

All →