LinkedIn Conversions API
Datafly Signal delivers conversion events to LinkedIn server-to-server via the Conversions API, replacing the LinkedIn Insight Tag for B2B campaign attribution, lead tracking, and audience measurement.
Prerequisites
Before configuring LinkedIn in Signal, you need:
- A LinkedIn Campaign Manager account with an Ad Account ID
- A conversion rule configured under Analyze → Conversion Tracking
- A LinkedIn developer application with Marketing API access
- An OAuth access token with
r_adsandrw_conversionsscopes (and ideally a refresh token)
Get your LinkedIn credentials
-
Sign in to LinkedIn Campaign Manager and copy your Ad Account ID from account settings.
-
Go to Analyze → Conversion Tracking and click Create Conversion. Choose Online Conversion with Conversions API as the tracking method. Note the numeric Conversion Rule ID.
-
Register an app at LinkedIn Developer Portal, associate it with your LinkedIn Page, and request access to the Marketing API (approval may take 1-3 days).
-
Complete the OAuth 2.0 flow against your app with scopes
r_adsandrw_conversions:https://www.linkedin.com/oauth/v2/authorization?response_type=code &client_id=YOUR_CLIENT_ID &redirect_uri=YOUR_REDIRECT_URI &scope=r_ads%20rw_conversions -
Exchange the authorisation code for an
access_token(andrefresh_token). LinkedIn access tokens expire after 60 days; the refresh token lets Signal renew automatically.
See LinkedIn’s Conversions API documentation for full details.
Configure the integration in Signal
- In the Management UI, go to Integrations → Add Integration.
- Select LinkedIn Ads from the catalogue.
- Give the integration a name (for your reference).
- Choose a preset (B2B / SaaS or Retail).
- Fill in the required fields:
| Field | Required | Description |
|---|---|---|
account_id | Yes | LinkedIn Ad Account ID. |
access_token | Yes | OAuth access token with r_ads and rw_conversions. |
conversion_rule_id | Yes | Numeric ID of the conversion rule in Campaign Manager. |
- Choose which pipeline(s) this integration should run on.
- Select consent categories (defaults to marketing).
- Click Save.
If you track multiple conversion types (e.g. Lead, Purchase, Sign-up), create one integration per conversion rule and filter events accordingly.
Event mapping
B2B / SaaS preset
| Signal event | LinkedIn event |
|---|---|
page | pageView |
Signed Up | conversion |
Lead Submitted | conversion |
Subscription Started | conversion |
Retail preset
| Signal event | LinkedIn event |
|---|---|
page | pageView |
Order Completed | conversion |
All conversion events are reported against the configured conversion_rule_id. To customise, edit the integration’s Field Mappings.
Identity
LinkedIn attribution relies primarily on the li_fat_id (LinkedIn First-Party Ad Tracking) parameter. Datafly.js captures it from the landing URL and stores it as a first-party cookie.
| Capability | Field | Notes |
|---|---|---|
| Click ID | user.userIds[].LINKEDIN_FIRST_PARTY_ADS_TRACKING_UUID | From li_fat_id URL parameter |
| Hashed email | user.userIds[].SHA256_EMAIL | SHA-256 (lowercase, trimmed) |
| Hashed phone | user.userIds[].SHA256_PHONE | SHA-256 (E.164) |
| First / last name | user.userInfo.firstName / lastName | Plain text, supplementary signal |
| Company name | user.userInfo.companyName | Plain text, supplementary signal |
| Client IP / User-Agent | Forwarded from the original request |
Hashing is performed by Signal before delivery.
Consent
This integration is gated on the marketing canonical consent category.
Verify it’s working
- In the Management UI, open Pipelines → your pipeline → Live Events and trigger a test conversion.
- The event appears in the live feed; inspect the payload sent to LinkedIn.
- In Campaign Manager, open Analyze → Conversion Tracking → your rule → Recent Activity — conversions appear within 15 minutes.
Troubleshooting
401 Unauthorized.
The access token has expired (60-day lifetime) or been revoked. Generate a new token via the OAuth flow or configure the refresh-token credentials.
403 Forbidden.
The app lacks Marketing API access, or the OAuth user has no permissions on the ad account.
Low match rate.
Ensure li_fat_id is captured on landing pages and pass hashed email/phone via datafly.identify().