Skip to main content

Ad Click IDs: Attribute Identified Visitors Back to Your Paid Campaigns

Knock2 captures Google, Meta, LinkedIn, Microsoft and TikTok click IDs on identified visitors. Where to see them, how to filter, and how to send them to your CRM, webhooks, the API and MCP.

Written by Sara

Overview

When someone clicks one of your paid ads, the ad platform adds a click ID to the URL they land on. Google calls it gclid, Meta fbclid, LinkedIn li_fat_id, and so on. The platform uses that ID to tie a conversion back to the click that produced it.

Knock2 now captures these click IDs on every visit that runs the Knock2 script, and stores them on the contact and the account Knock2 identifies from that visit. You can see them in the dashboard, filter on them, send them to your CRM or a webhook, and read them from the API and MCP.

The click ID is a fact about the visit, not the person, so it is stored on accounts as well as contacts.


Why this matters

Ad platforms optimize toward the conversions you send them. B2B form fills rarely reach the volume their algorithms want, so the platforms are left guessing who to show your ads to.

An identified visit from a company that fits your ICP is a much more plentiful signal. If you hold the click ID of that visit, you can upload it back to Google Ads, Meta or LinkedIn as an offline conversion ("ICP site visitor"), and the platform learns to find more people like them. Customers running this with other tools have seen several times more ICP visitors on the same budget.


Which platforms are supported

Platform

Click ID in the URL

Google Ads

gclid, plus gbraid and wbraid for iOS traffic

Meta (Facebook and Instagram)

fbclid

LinkedIn

li_fat_id

Microsoft Ads (Bing)

msclkid

TikTok

ttclid

If your Meta pixel is installed, Knock2 also stores the pixel's browser cookies (_fbc and _fbp) next to a Meta click, because Meta's Conversions API wants them alongside the click ID. On their own they never count as a click.

Other platforms (Reddit, X, Pinterest, Snapchat) are not captured yet. Tell us if you need one.


How it works

  1. A visitor clicks your ad and lands on a page running the Knock2 script. The script reads the click ID from the URL, together with any UTM parameters, and records them against that visit.

  2. When Knock2 identifies the account (and, where it can, the contact) behind the visit, the click ID is saved on that record as a touch, next to the UTMs from the same landing, with the time the visit started.

  3. Every click is kept. A visitor who arrives from a Google ad one week and a LinkedIn ad the next has two touches, each with its own ID and date.

  4. The record's "latest ad click" is the newest touch that carries a click ID, not the newest visit. Most return visits are organic, and Google only accepts a gclid for about 90 days, so the most recent click is the one worth uploading.

You do not need to change anything on your site. UTM parameters are not required: a Google Ads landing with only a gclid (auto-tagging) is captured too.

Visitors who have opted out of tracking (Global Privacy Control, or your consent banner) never have a click ID recorded.


Where to find them in the dashboard

Account and contact drawers

Open any account or contact and go to the Activity tab. The Attribution card at the top shows a Paid ad click row listing every paid click on the record, newest first, as the platform and the date (for example "Google Ads · Oct 22, 2026"). Hover a line to see the click ID itself.

The same card shows the first and latest campaign from the UTMs, so you can see the ad click and the campaign it belonged to together.

Filtering

On both the Accounts and Contacts tabs, open the filters and add Visited from a paid ad (it sits in the Traffic source group, after the UTM fields). Set it to is yes to see every record with at least one paid click, or is no to exclude them. Combine it with the UTM Source or UTM Campaign filters to narrow to one platform or campaign, and save it as a view like any other filter.


Sending click IDs to your CRM

Click IDs are available as source fields in the CRM field mapping for HubSpot and Salesforce. Go to Settings → Integrations, open your CRM, and find the field mapping for the record type you want (contact, company, lead). The new source fields are:

  • Google Ads Click ID (gclid), with separate fields for the iOS variants

  • Meta Click ID (fbclid), plus the two Meta browser IDs

  • LinkedIn Click ID (li_fat_id)

  • Microsoft Ads Click ID (msclkid)

  • TikTok Click ID (ttclid)

  • Ad Click Time: when the visit with that click started, which is the conversion time an offline conversion upload needs

  • Ad Platform: Google Ads, Meta, LinkedIn, Microsoft Ads or TikTok

Each exists for the contact and for the contact's company, so you can map them onto contact, company or lead records.

Nothing is mapped by default. You choose where each field goes, exactly as with any other Knock2 field. The value sent is always the record's latest ad click.

HubSpot tip: HubSpot has native properties for these, Google ad click id, Facebook click id and LinkedIn click id. Map Knock2's click IDs onto them and HubSpot's Ads tool can sync offline conversions back to the platform for you. For Salesforce, create a custom field and map to it.


Webhooks and the API

Contact and account webhooks, and the REST API's contact and account responses, carry three new fields:

  • ad_click_ids: the IDs from the latest ad click, keyed by platform parameter (for example {"gclid": "Cj0K..."}). Null when the record has no paid click.

  • ad_clicked_at: when that visit started.

  • ad_platform: which platform the click came from.

Contacts also carry company_ad_click_ids, company_ad_clicked_at and company_ad_platform for their account. The utms list on each record includes the raw click ID fields on every touch, so you can see the full history, not only the latest click.

This is how you build an offline conversion upload today: receive the webhook (or a Play's webhook output), decide whether the visitor fits your ICP using the lead score and account match, and send the click ID and time to the platform's conversion API. Knock2 does not push conversions to the ad platforms directly yet.


MCP

Yes. If you have connected Knock2 to Claude or another AI tool through MCP, the contact and account tools return each record's touches, and any touch that came from a paid ad includes its ad_click_ids, ad_platform and touched_at. You can ask, for example, "which accounts that visited this week came from a Google ad?" or "what is the click ID on this contact's last paid visit?"


Good to know

  • Only pages with the Knock2 script count. A paid landing page on a domain or subdomain without the script has no click ID to capture.

  • Identification can lag the click. Knock2 may identify the visitor hours after the visit. The click time on the record is the visit, not the identification, which is what the platforms need.

  • One click, one conversion. A click ID should be uploaded once. If you send conversions from two systems, de-duplicate first.

  • Gate uploads on fit, not on identification alone. Knock2's identification is probabilistic; the click is exact. Use the lead score or an account filter to decide which visits count as an "ICP site visitor" before uploading, and never send a hashed email alongside the click.

Did this answer your question?