Discuss your task

Prooflytics + TikTok Ads: B2B Lead Attribution From TikTok to Closed Deal

TikTok Ads attributes conversions within 7 days of a click. A B2B deal closes in 30-90 days. These are incompatible time horizons - and that is exactly why the standard TikTok Pixel shows CPL, not the real cost of acquiring a customer. Prooflytics solves this through a closed loop: ttclid from TikTok -> contact in CRM -> closed deal -> server-side conversion back to TikTok Events API.

This is not theory. Companies running TikTok Ads for B2B audiences regularly face one situation: the dashboard shows 40 leads at $30 each, while the sales team says only one deal from TikTok closed that quarter. Or the opposite - a campaign looks expensive by CPL, but it is the one generating leads that actually convert. Without closing the loop to CRM data both scenarios are indistinguishable, and budget gets allocated by CPL, not CAC.

This article covers: why standard TikTok attribution does not work for B2B, where the chain breaks, and how Prooflytics + Events API close that gap technically.

Why TikTok Ads for B2B Is Not Obvious but Real

B2B advertisers on TikTok grew 142% in 2025 - that is from industry platform reports. The reason is not that TikTok became a “B2B channel” in the classical sense. The reason is demographics: decision-makers aged 25-45 spend significant time on TikTok, and some of them are your potential customers.

TikTok is honest about its limitations: the platform audience skews younger, and B2B signals (title, industry, company size) are targeted less precisely than on LinkedIn. CPL on TikTok for B2B campaigns runs $25-75, which looks attractive against LinkedIn ($75-200+). But that is a CPL comparison, not cost per closed deal.

For B2B the key question is not “how much does a TikTok lead cost” but “what percentage of TikTok leads convert to Won, and in how many days.” That question cannot be answered without integrating CRM with the ad platform.

Where Standard TikTok Attribution Breaks

The standard TikTok Pixel records a click and tracks on-site conversions within the attribution window. For B2B this fails for three reasons.

ttclid Lives 7 Days, the B2B Cycle Is Longer

ttclid (TikTok Click ID) is the unique click identifier that TikTok appends to a URL when a user clicks an ad. It is stored in the user’s browser cookie.

The problem: by default the ttclid cookie expires in 7 days. The standard click attribution window in TikTok Ads Manager is 7 days. A B2B deal from first contact to close takes an average of 30-90 days for companies with 15+ people. This means that if a TikTok lead submitted a form on day 8 or later, the conversion is not attributed to the click at all. If the deal closed after 60 days - TikTok will never know.

The technical solution: capture ttclid at the moment of the first visit and store it in a database (not only in a cookie), linked to the CRM contact. That is exactly how Prooflytics works: ttclid is written to the contact field when the lead is created and lives there as long as it takes to close the deal.

View-Through Attribution Inflates Results by Default

TikTok Ads uses a default attribution window of “7-day click + 1-day view.” This means: if a user saw an ad (without clicking) and within 24 hours completed a conversion on the site, TikTok counts that conversion as a result of the campaign.

For e-commerce with a short decision cycle, view-through attribution makes sense. For B2B with a consideration cycle of several weeks - it does not. A user may have seen the ad on Monday, read a blog post on Wednesday, received a referral recommendation on Friday, and submitted a form on Saturday. TikTok attributes the conversion to itself.

Recommendation: for B2B, disable view-through attribution or restrict it to 0 days, working only with click attribution. This lowers the numbers in the dashboard but gives a more accurate picture.

No Native Tie to the CRM Deal

Even if the TikTok Pixel correctly records a lead form, the blind zone starts there. The Pixel does not know: whether the sales manager qualified this lead, whether a deal was created in the CRM, whether it moved to a negotiation stage, and most importantly - whether it closed as Won or Churned.

TikTok Events API supports offline conversion - the ability to send the platform an event that happened outside the website: for example, a deal closing in CRM. But setting this up manually requires development: you need to catch a webhook from the CRM on a deal status change, match the contact to a ttclid, and send an event to Events API with the right parameters. Without a tool like Prooflytics this is an engineering task, not a marketer’s task.

How Prooflytics Solves This

Prooflytics builds a full closed loop between the TikTok ad platform and CRM through four steps.

Step 1: Capture ttclid on the first click. The Prooflytics pixel on the site intercepts ttclid from the URL, stores it in a first-party cookie (with an extended TTL), and simultaneously writes it to a database. When a form is submitted, ttclid is linked to the new contact.

Step 2: Sync with CRM. When a contact is created in CRM (Kommo, HubSpot, or another), Prooflytics writes ttclid to a custom field. The click identifier now lives in the CRM card, not only in the user’s browser.

Step 3: Track movement through the pipeline. Prooflytics sees every stage: lead created, qualified, deal opened, deal moved to the final stage, deal closed (Won or Lost). Each event is tagged with its source - TikTok campaign ID, ad group ID, creative ID.

Step 4: Server-side conversion to TikTok Events API. When a deal moves to Won, Prooflytics automatically sends a CompletePayment event (or a custom deal_won event) via TikTok Events API with the parameters: the contact’s ttclid, deal amount, close date. TikTok receives a real conversion tied to the original click - even if 90 days have passed.

Deduplication: Prooflytics adds a unique event_id to every event sent through both Pixel and Events API. TikTok uses event_id for deduplication - one conversion is counted once, even if it arrived from two sources.

Term: TikTok Events API (also called Conversions API) - TikTok for Business server-side interface that lets advertisers send conversion events directly from the advertiser’s server, bypassing the user’s browser. This eliminates data loss from ad blockers, ITP, and expired cookies.

Step-by-Step Setup Scheme

Here is what the full integration looks like for a B2B company running TikTok Ads that wants to see real CAC.

1. Connect Prooflytics to TikTok Ads. In the Prooflytics dashboard, add TikTok Ads as a traffic source: enter your Pixel ID and Access Token. Prooflytics automatically starts logging ttclid from all TikTok traffic.

2. Install the Prooflytics tag on your site. One JS tag (similar to a GTM container) is placed on all pages, including the lead form page. The tag intercepts ttclid, stores it in a first-party cookie for 90 days, and sends it to Prooflytics.

3. Connect your CRM. Prooflytics integrates with Kommo or HubSpot via OAuth or an API key. After connecting, in the field mapping settings you specify which custom contact field to write ttclid to. This is done in the interface without code.

4. Configure pipeline events. In Prooflytics you set which CRM events to count as conversions: lead created, qualification, deal opened, Won. For each event you specify whether to send it to TikTok Events API and with what event type.

5. Testing. Prooflytics shows in real time which ttclid values are linked to CRM contacts and logs every Events API submission. Before launching campaigns it is recommended to run a test: create a test lead with a real ttclid and confirm the event appears in TikTok Events Manager.

6. Set attribution window in TikTok Ads Manager. After connecting Events API, change the attribution window in campaign settings to “28-day click, 0-day view.” This gives TikTok more time to match conversions that arrive via Events API.

The full setup process takes one working day - the details are covered in the Prooflytics setup guide for CMOs.

Real-World Case

A B2B SaaS company (18 employees, selling corporate subscriptions to mid-sized companies in the US and Europe) launched TikTok Ads in Q3 2025 as an experiment. Target: founders and heads of operations, content: educational videos about workflow automation.

After one month, TikTok Ads Manager showed 62 leads at $28 CPL. The team considered the result weak: the competitive CPL on LinkedIn was $65, but LinkedIn leads converted better.

After connecting Prooflytics and setting up server-side conversions through Events API the picture changed. Over the next 90 days Prooflytics showed: of 62 TikTok leads, 9 converted to Won deals. Average contract value: $4,200 annual subscription. Total: $260,400 ARR from one ad channel in the quarter.

CAC from TikTok for this cohort: ($28 x 62) / 9 = $193 per closed deal. For comparison - LinkedIn in the same period produced a CAC of $340 using the same methodology.

The team reallocated the budget: +40% into TikTok at the expense of LinkedIn. Without Prooflytics this decision could not have been made on data - only on gut feel.

Important detail: 7 of the 9 Won deals closed more than 21 days after the first TikTok click. The standard Pixel with a 7-day attribution window would not have counted any of them.

Who This Is Relevant For

This setup makes sense for B2B companies that simultaneously meet three conditions:

  • Sales cycle from first contact to close is more than 14 days.
  • TikTok Ads is already running or is planned as one of the paid channels.
  • CRM is used as the primary system of record for deals (Kommo, HubSpot, Salesforce, or another).

Companies with a deal cycle shorter than 7 days (e-commerce, low-touch SaaS with self-serve) will get less benefit from this setup - for them the standard Pixel with a short attribution window works fine.

For comparison with other attribution tools - the article Prooflytics vs Google Analytics 4 explains why GA4 does not cover the same need even with configured goals.

Frequently Asked Questions

How long does ttclid remain valid for Events API?

TikTok accepts ttclid in Events API without a hard expiration limit on the advertiser’s side - the key requirement is that the event is tied to a valid click from the ad platform. Prooflytics stores ttclid in the database indefinitely (as long as the contact exists), which allows sending a conversion through Events API 30, 60, or 90 days after the click. On TikTok’s side, matching happens by Click ID regardless of how much time has passed.

Will there be duplicate conversions between Pixel and Events API?

No, if deduplication is configured. TikTok Events API uses the event_id field to identify unique events. If the Pixel sent a Lead event with event_id = "abc123" and Events API sent the same event with the same event_id, TikTok counts it as one conversion. Prooflytics generates event_id automatically and synchronizes it between Pixel and server-side calls. Deduplication status can be verified in TikTok Events Manager under Event Overview.

Is TikTok Ads for B2B not too young an audience?

That is a fair question. TikTok skews toward an 18-34 audience, which is narrower than LinkedIn. But decision-makers aged 25-40 are a very real audience on TikTok, especially in tech and digital-first companies. The answer depends on your ICP: if you sell to enterprise corporations with long approval chains, TikTok is not your priority. If you sell to growing B2B companies with founders and directors aged 28-42 - it is worth testing. Prooflytics lets you measure the result honestly rather than optimizing by proxy metrics.

Is a technical team required for setup?

The core setup (connecting TikTok Ads, CRM, and installing the tag) is done through the Prooflytics interface without code. For non-standard scenarios - custom events, complex CRM field mapping, multi-pipeline setups - assistance may be needed. The Exceltic.dev team sets up the full stack in one working day: from OAuth CRM connection to the first test conversions in TikTok Events Manager. The process is described in the integrations and development section.

What events should be sent to TikTok Events API for B2B?

The minimum set: Lead (form submitted), Contact (lead qualified), custom event deal_won (deal closed, with amount passed). Prooflytics lets you configure events for each CRM pipeline stage. Additionally useful: an event when a deal is opened - this gives TikTok a signal to optimize its algorithm not by lead, but by qualified opportunity.

Summary

TikTok Ads attribution for B2B does not work out of the box - not because the platform is bad, but because its standard tools are designed for short conversion cycles. For B2B you need three things: capturing ttclid in a database (not only a cookie), syncing with CRM, and server-side conversions via Events API when deals close.

Prooflytics covers all three. The result: instead of CPL in the dashboard - real CAC per campaign, with history going back 90+ days.

If TikTok Ads is already in your media mix or you are planning to test it - describe the task to the Exceltic.dev team. We will work through the attribution architecture for your CRM stack and set up Events API so that closed deals appear in the TikTok dashboard instead of being lost beyond the attribution window.

More articles

All →