> ## Documentation Index
> Fetch the complete documentation index at: https://clickflare.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# How to Track Ringba Pay-Per-Call Campaigns with ClickFlare

> Learn how to set up reliable call tracking between Ringba and ClickFlare to attribute calls, optimize performance, and push conversion data to your ad platforms.

<img src="https://mintcdn.com/clickflare/GPmlXVWHNq-9kzLd/images/help-center/05-integrations/09-other/01-how-to-track-ringba-pay-per-call-campaigns-with-clickflare-01.png?fit=max&auto=format&n=GPmlXVWHNq-9kzLd&q=85&s=e0e52607588504bae6e668cdadf0d0c3" alt="How to Track Ringba Pay-Per-Call Campaigns with ClickFlare" width="800" height="300" data-path="images/help-center/05-integrations/09-other/01-how-to-track-ringba-pay-per-call-campaigns-with-clickflare-01.png" />

**Pay-Per-Call** is a performance marketing model where advertisers pay publishers for qualified phone calls instead of clicks or impressions. **Ringba** is a call tracking and analytics platform that enables real-time call routing, attribution, and reporting.

This guide focuses on how to **track Ringba PPC campaigns using ClickFlare**. It assumes you already have campaigns set up in both platforms.

***

## Prerequisites

Before you begin, make sure you have:

* ✅ An active **ClickFlare** account
* ✅ An active **Ringba** account
* ✅ A **Ringba campaign** already created
* ✅ A **landing page** where users are redirected after clicking an ad
  → *Check out [**LanderLab.io**](https://landerlab.io) – a landing page builder with ready-made PPC templates*

***

## Why You Need a Tracker

Running Pay-Per-Call campaigns without a tracker means you're blind to what’s actually driving your results. A performance tracker helps you:

* **Split-test landing pages and auto-optimize** based on call performance
* **Combine cost, call, revenue, and funnel data** into one unified reporting view
* **Send call conversions server-side (via Conversion API) to ad platforms** — including enriched data like phone number, ZIP code, and custom parameters
* **Track button clicks, funnel steps, and drop-offs** to understand user behavior before the call
* **Attribute calls back to the original ad click, source, and creative**

***

## Why Use ClickFlare Specifically?

ClickFlare is the only trackers that includes a **built-in Tag Manager**, allowing you to:

* Inject the **Ringba Number Pool script conditionally** — for example, only after a user answers a certain quiz question
* Dynamically inject different **Ringba campaign scripts on the same landing page**, depending on user actions
* Do all of this **without ever modifying the page code manually** — no developer needed

This makes ClickFlare especially powerful for multi-step funnels, advanced segmentation, and clean campaign management.

***

## How It Works

Here’s how a typical Ringba + ClickFlare setup works:

1. A user clicks on your ad from a traffic source (Google, Facebook, Taboola, etc.)
2. They land on your **landing page**, which displays a dynamic phone number
3. When the user **calls the number**, **Ringba** tracks the call

<Tip>
  **Important:** Ringba dynamically replaces the number on the page using its **Number Pool script**. This script must be added to your page so that each user sees a unique number for proper call attribution.
</Tip>

<img src="https://mintcdn.com/clickflare/GPmlXVWHNq-9kzLd/images/help-center/05-integrations/09-other/01-how-to-track-ringba-pay-per-call-campaigns-with-clickflare-02.png?fit=max&auto=format&n=GPmlXVWHNq-9kzLd&q=85&s=95c9949a549fe13797ca796c7c9af4d2" alt="💡 Important: Ringba dynamically replaces the number on the page using its Number Pool script. This script must be added…" width="760" height="406" data-path="images/help-center/05-integrations/09-other/01-how-to-track-ringba-pay-per-call-campaigns-with-clickflare-02.png" />

***

## Step 1: Pass the Click ID from ClickFlare to Ringba

This is the **standard setup** for most redirect-based campaigns.

### 1. Create the Lander as an Offer in ClickFlare

In ClickFlare, add your landing page as an **Offer**. This is required to properly pass the Click ID and track conversions.

### 2. Append the ClickFlare Click ID to the Offer URL

When setting up the offer, make sure the URL includes the Click ID token:

```
https://your-landing-page.com?clickid={cf_click_id}
```

This ensures that the clickid is passed to Ringba when the user lands on the page.

### 3. Create a URL Parameter in Ringba

1. Go to Integrations > URL Parameters

   <img src="https://mintcdn.com/clickflare/GPmlXVWHNq-9kzLd/images/help-center/05-integrations/09-other/01-how-to-track-ringba-pay-per-call-campaigns-with-clickflare-03.png?fit=max&auto=format&n=GPmlXVWHNq-9kzLd&q=85&s=cc8ea3e30a73611b845e016f1d324be0" alt="Go to Integrations URL Parameters" width="1498" height="715" data-path="images/help-center/05-integrations/09-other/01-how-to-track-ringba-pay-per-call-campaigns-with-clickflare-03.png" />
2. Click \*\*Create URL Parameter

   <img src="https://mintcdn.com/clickflare/GPmlXVWHNq-9kzLd/images/help-center/05-integrations/09-other/01-how-to-track-ringba-pay-per-call-campaigns-with-clickflare-04.png?fit=max&auto=format&n=GPmlXVWHNq-9kzLd&q=85&s=26a2e6a5c467a774e84f13c6b603cb38" alt="Click Create URL Parameter" width="1087" height="440" data-path="images/help-center/05-integrations/09-other/01-how-to-track-ringba-pay-per-call-campaigns-with-clickflare-04.png" />\*\*
3. Name it clickid → token \[tag:User:clickid] will be created

### 4. Attach the Parameter to Your Campaign

1. Open your Ringba campaign
2. In the **URL Parameters** section, click **Add URL Parameter**
3. Select `clickid` from the existing list and click \*\*Add

   <img src="https://mintcdn.com/clickflare/GPmlXVWHNq-9kzLd/images/help-center/05-integrations/09-other/01-how-to-track-ringba-pay-per-call-campaigns-with-clickflare-05.png?fit=max&auto=format&n=GPmlXVWHNq-9kzLd&q=85&s=4da6e5c6ba467caf664aa1317b002b33" alt="Select clickid from the existing list and click Add" width="1023" height="347" data-path="images/help-center/05-integrations/09-other/01-how-to-track-ringba-pay-per-call-campaigns-with-clickflare-05.png" />\*\*

This is the **standard setup** for most redirect-based campaigns.

## Step 2: Send Call Conversions from Ringba to ClickFlare

### 1. Copy Your ClickFlare Postback URL

* In ClickFlare, go to **Settings → Tracking URLs**
* Copy your **Postback URL**, which will look like this:

```
https://your_tracking_domain.com/cf/cv?click_id=REPLACE&payout=OPTIONAL&txid=OPTIONAL&param1=OPTIONAL&param2=OPTIONAL&param3=OPTIONAL&ct=REPLACE
```

### 2. Create a Pixel in Ringba

1. Go to Integrations > Pixels
2. Click **Create Pixel**
3. Paste your ClickFlare postback URL

### 3. Add Tokens to the Postback

Use Ringba tokens to dynamically pass data to ClickFlare:

| Parameter  | Ringba Token                                          | Purpose               |
| ---------- | ----------------------------------------------------- | --------------------- |
| click\_id  | \[tag:User:clickid]                                   | Required for tracking |
| payout     | \[Call:-ConversionAmount]                             | Revenue               |
| txid       | \[Call:InboundCallId]                                 | Unique call ID        |
| ct         | conv                                                  | Converted Call        |
| param1 –20 | e.g., \[tag:InboundNumber:Number], \[tag:Geo:ZipCode] | Extra metadata        |

<img src="https://mintcdn.com/clickflare/GPmlXVWHNq-9kzLd/images/help-center/05-integrations/09-other/01-how-to-track-ringba-pay-per-call-campaigns-with-clickflare-06.png?fit=max&auto=format&n=GPmlXVWHNq-9kzLd&q=85&s=0e8d10ec1108c8b34cdd6ed52de4a32a" alt="Use Ringba tokens to dynamically pass data to ClickFlare" width="1219" height="356" data-path="images/help-center/05-integrations/09-other/01-how-to-track-ringba-pay-per-call-campaigns-with-clickflare-06.png" />

> **Note:** To use these postbacks in Ringba, make sure you’ve already created the corresponding **custom conversions** in ClickFlare, as shown in the image below.
>
> **<img src="https://mintcdn.com/clickflare/GPmlXVWHNq-9kzLd/images/help-center/05-integrations/09-other/01-how-to-track-ringba-pay-per-call-campaigns-with-clickflare-07.png?fit=max&auto=format&n=GPmlXVWHNq-9kzLd&q=85&s=e6c6411a821952d2ec6e6ebcfe9ecfaf" alt="Note: To use these postbacks in Ringba, make sure you’ve already created the corresponding custom conversions in…" width="900" height="320" data-path="images/help-center/05-integrations/09-other/01-how-to-track-ringba-pay-per-call-campaigns-with-clickflare-07.png" />**

### ✅ Example ClickFlare Postback

```
https://your_tracking_domain.com/cf/cv?click_id=[tag:User:clickid]&payout=[Call:ConversionAmount]&txid=[Call:CallDateTime]&param1=[tag:InboundNumber:Number]&param2=[tag:Geo:ZipCode]&param3=[tag:RequestInfo:LandingPageUrl]&ct=converted_call
```

> 🧠 Customize tokens based on what’s important to track for your campaigns.

***

## Alternative Implementation Scenarios

If you're not injecting the Ringba script on page load (standard case), here are three alternative setups depending on your needs:

### Use Case 1: Redirect Tracking + Script on Page Load

✅ *This is the default setup covered above.*
Works with any source that supports redirects (e.g., Facebook, TikTok, Taboola).
Inject the Ringba Number Pool script directly in the \<head> of the landing page.

### Use Case 2: Redirect Tracking + Delayed Script Injection

**When to use:** You want to show the phone number only to users who reach a certain step (e.g., after answering a quiz like shown in the image below).

<img src="https://mintcdn.com/clickflare/GPmlXVWHNq-9kzLd/images/help-center/05-integrations/09-other/01-how-to-track-ringba-pay-per-call-campaigns-with-clickflare-08.png?fit=max&auto=format&n=GPmlXVWHNq-9kzLd&q=85&s=9a9b5d50049ad0084254be5dbdea41c6" alt="When to use: You want to show the phone number only to users who reach a certain step (e.g., after answering a quiz…" width="2052" height="361" data-path="images/help-center/05-integrations/09-other/01-how-to-track-ringba-pay-per-call-campaigns-with-clickflare-08.png" />

* You still use redirect (click ID passed via URL)
* Delay script injection using **ClickFlare Tag Manager**
* Set a trigger (for example, when the user clicks on **any of the buttons in question 2**.)

  <img src="https://mintcdn.com/clickflare/GPmlXVWHNq-9kzLd/images/help-center/05-integrations/09-other/01-how-to-track-ringba-pay-per-call-campaigns-with-clickflare-09.png?fit=max&auto=format&n=GPmlXVWHNq-9kzLd&q=85&s=721de5cc324aa3cfae2722c98fc74410" alt="Set a trigger (for example, when the user clicks on any of the buttons in question 2.)" width="1266" height="644" data-path="images/help-center/05-integrations/09-other/01-how-to-track-ringba-pay-per-call-campaigns-with-clickflare-09.png" />

  <Info>
    *Note: In the example above, the button click is being tracked using the clicked element’s ID.*
  </Info>
* Use the **"Inject Ringba Script"** tag and your Ringba Campaign ID

  <img src="https://mintcdn.com/clickflare/GPmlXVWHNq-9kzLd/images/help-center/05-integrations/09-other/01-how-to-track-ringba-pay-per-call-campaigns-with-clickflare-10.png?fit=max&auto=format&n=GPmlXVWHNq-9kzLd&q=85&s=8ac30ad2bb38e78ce69a7647515a0423" alt="Use the &#x22;Inject Ringba Script&#x22; tag and your Ringba Campaign ID" width="1222" height="661" data-path="images/help-center/05-integrations/09-other/01-how-to-track-ringba-pay-per-call-campaigns-with-clickflare-10.png" />

  <Info>
    **Info:** The tag simply injects the Ringba Number Pool script using the Ringba Campaign ID you provide.
  </Info>

<Info>
  **Why it matters:**
  Every time the Ringba script loads, a number is pulled from your number pool. If you show numbers to all visitors immediately, you may run out of available numbers quickly — especially with limited pools. When that happens, Ringba will no longer be able to track calls accurately. By delaying script injection, you allocate numbers only to users who are engaged and more likely to convert.
</Info>

### Use Case 3: Direct Tracking (Google Ads, Bing, YouTube)

**When to use:** Redirects are not allowed.

* ClickFlare stores the click ID in a cookie
* Use the **“Inject Ringba and push cf\_click\_id”** tag in ClickFlare
* This tag will:

  1. Inject the Ringba script
  2. Retrieve the click ID from the cookie
  3. Push the click ID to Ringba

<img src="https://mintcdn.com/clickflare/GPmlXVWHNq-9kzLd/images/help-center/05-integrations/09-other/01-how-to-track-ringba-pay-per-call-campaigns-with-clickflare-11.png?fit=max&auto=format&n=GPmlXVWHNq-9kzLd&q=85&s=b396bc7aa71eacbde2151e611c26f011" alt="Push the click ID to Ringba" width="1229" height="658" data-path="images/help-center/05-integrations/09-other/01-how-to-track-ringba-pay-per-call-campaigns-with-clickflare-11.png" />

<Info>
  Info: ⏳ Retrieving the click ID from the cookie takes \~1–2 seconds. Delay number display slightly to avoid missing the ID.
</Info>

> ⚠️ **Important:** When using ClickFlare's Tag Manager, you must add the **ClickFlare container script** to your landing page.
> To do this:
>
> 1. Go to **Tag Manager** in ClickFlare
> 2. Select or create a **container**
> 3. Set up your **tags and triggers** as described above
> 4. **Copy and paste the container script** into your landing page \<head> section

## Best Practices

> ⚠️ If using ClickFlare’s tag to inject Ringba script, **do not add it manually** in the page to avoid duplicate script execution.
>
> ✅ Whenever possible, use **redirect tracking** — it ensures the click ID is available immediately via URL, making tracking more robust.

***

## Testing & Validation

Before launching your campaign, it's important to run a quick test to ensure everything is working properly.

### ✅ Basic Testing Steps

1. **Visit your landing page** using a ClickFlare campaign link
2. **Check the following:**

   * *clickid* is appended to the **Offer URL**
   * The phone number on the page is replaced — this confirms that the **Ringba script loaded correctly**
3. **If you're using ClickFlare Tag Manager** to inject the Ringba script:

   * Open your browser’s console (Inspect Element → Console)
   * Look for the success message indicating the script was injected correctly

     <img src="https://mintcdn.com/clickflare/GPmlXVWHNq-9kzLd/images/help-center/05-integrations/09-other/01-how-to-track-ringba-pay-per-call-campaigns-with-clickflare-12.png?fit=max&auto=format&n=GPmlXVWHNq-9kzLd&q=85&s=438be21aad53ef88179481a1af8f1465" alt="Look for the success message indicating the script was injected correctly" width="1699" height="824" data-path="images/help-center/05-integrations/09-other/01-how-to-track-ringba-pay-per-call-campaigns-with-clickflare-12.png" />
4. **Make a test call**

### 🔍 Verify Tracking

* The call should appear inside your **Ringba dashboard**
* The conversion should be recorded in **ClickFlare** under the correct campaign

**FREQUENTLY ASKED QUESTIONS (FAQ)**

Got questions? Find the answers below:

> **Q1**: Do I need to add the Ringba script directly to the page?

**A1**: Only if you're not using ClickFlare’s built-in Tag Manager. If you're using ClickFlare tags to inject the Ringba script, **do not add it manually** to avoid duplicate injection.

> **Q2**: What happens if my Ringba number pool runs out?

**A2**: If your number pool is exhausted, Ringba may still route the call, but **tracking will fail** — meaning the call won’t be attributed to the correct click. To avoid this, consider delaying script injection using ClickFlare Tag Manager for only qualified users.

> **Q3**: Can I use the same landing page for different Ringba campaigns?

**A3**: Yes. With ClickFlare Tag Manager, you can conditionally inject different Ringba scripts based on user behavior, campaign, or triggers — all on the same landing page.

> **Q4**: Do I need to modify the landing page every time I change my Ringba campaign?

**A4**: No. If you use ClickFlare’s Tag Manager, **you can control script injection entirely within the platform**, without touching the landing page code again.

> **Q5**: Can I pass additional data like ZIP, campaign ID, or call duration?

**A5**: Yes. You can include extra values using param1 to param20 in the postback URL and insert the corresponding Ringba tokens. Customize these based on what you need to analyze or pass back to ad platforms.

## Related Resources

* [Tracking Conversions Using S2S Postback](/docs/en/tracking/tracking-conversions-using-s2s-postback)
* [How Click and Conversion Data is Transferred in ClickFlare](/docs/en/tracking/click-conversion-data-transfer-clickflare)
* [Creating a Custom Conversion in ClickFlare](/docs/en/settings/custom-conversions)
* [How to Use ClickFlare's Tag Manager](/docs/en/tag-manager-1/what-is-the-tag-manager)
* [LanderLab.io – Build High-Converting Landing Pages](https://landerlab.io)
