Skip to main content
Linkrunner integrates with PostHog to automatically send attribution data, helping you understand which campaigns are driving user acquisition and engagement.

How it works

Every time a user is attributed by Linkrunner, we automatically send a request to PostHog to update the corresponding user’s profile with custom properties:
  • lr_campaign - The campaign identifier
  • lr_ad_network - The ad network source

Example

  • User ID 24 came from campaign link: https://app.linkrunner.io/?c=AXb1c2
  • In PostHog, for user profile with ID 24, you’ll see lr_campaign set to AXb1c2 and lr_ad_network set to an ad network source

Prerequisites

RequirementDescription
Linkrunner accountA Linkrunner account is required to take advantage of this integration.
PostHog accountA PostHog account with API access.
iOS or Android appThis integration supports iOS and Android apps.
Linkrunner SDKYou must have the Linkrunner SDK installed in your app.

Steps to setup

1

Get API Key from PostHog and Configure in Linkrunner

First, you need to get your API key from your PostHog dashboard.
  1. In your PostHog dashboard, navigate to Project Settings > Project API Key
  2. Copy your API Key
  3. In Linkrunner, navigate to Integrations from the left-hand panel
  4. Under Analytics, click Configure for PostHog
  5. Enter your API Key
2

Map User Identifiers in SDK

To properly link users between Linkrunner and PostHog, you need to pass the correct identifier in the signup function.
Important: If you are using the identify function of the PostHog SDK to set a user ID, pass the same user ID in the userData parameter of the Linkrunner signup function. If you are not using identify, pass the distinct_id or device_id instead.
import io.linkrunner.sdk.LinkRunner
import io.linkrunner.sdk.models.request.UserDataRequest

val userData = UserDataRequest(
    id = "123", // Your user ID (same as PostHog identify)
    // ...other user fields
    posthogDistinctId = "POSTHOG_DISTINCT_ID", // Required if not using identify
)

LinkRunner.getInstance().signup(userData = userData)
You can get the posthogDistinctId from the PostHog SDK in your app.
3

Sync with PostHog (Optional)

Use the Sync feature in the following scenarios:
  • First time after adding your PostHog API Key
  • If you see discrepancies in attribution data on PostHog profiles
To sync, click the Sync with PostHog button in the Linkrunner integration settings. This process may take a while depending on the number of users.

Viewing Attribution Data

After the integration is complete, you can view the attribution data in PostHog:
  1. Navigate to a user profile in the PostHog dashboard
  2. Look for the person properties section
  3. You’ll see lr_campaign and lr_ad_network attributes with the corresponding values
This data can be used to:
  • Create cohorts based on acquisition source
  • Personalize experiences based on campaign origin
  • Analyze user behavior by acquisition channel