Skip to main content
HilltopAds traffic source template HilltopAds is a self-serve ad network selling popunder, banner, video (VAST and video slider) and in-page traffic on mobile and desktop. This guide sets up HilltopAds as a traffic source in ClickFlare. It covers passing HilltopAds’ click data into your reports and sending conversions, with payout and currency, back to HilltopAds so its stats and optimization match yours. You do everything from the campaign editor. The HilltopAds traffic source is created inline, without leaving the campaign.

At a glance

How it works

1

HilltopAds sends the click

A visitor clicks or opens your ad. HilltopAds opens your ClickFlare campaign URL and fills in its macros: the click ID in token, the price in price, plus the zone, campaign and country.
2

ClickFlare stores the HilltopAds click ID

ClickFlare saves the value of token as the visit’s External ID, records the cost, and redirects the visitor to your lander or offer.
3

The conversion reaches ClickFlare

Your affiliate network or store posts the conversion back to ClickFlare, matched on the ClickFlare click ID.
4

ClickFlare posts it back to HilltopAds

ClickFlare fires the HilltopAds postback, replacing {external_id} with the stored HilltopAds click ID and {payout} with the revenue. The currency is fixed to USD in the template, and your advertiser ID goes in advertiserId. HilltopAds matches the postback to the original click.
The mirror to keep straight: in the campaign URL you write ClickFlare’s parameter (token) and HilltopAds’ macro ({{token}}). The template does this for you. In the postback URL you write HilltopAds’ parameter (token) and ClickFlare’s token ({external_id}). HilltopAds macros use double braces. ClickFlare tokens use single braces. Never mix them.

Before you start

  • Set up your own tracking domain. Run the campaign and the postback on your own custom domain. Shared domains get flagged by networks and blocked by browsers. See Custom Domains.
  • Have an offer ready in ClickFlare, and its affiliate network set up to post conversions back to ClickFlare. See Creating an Offer and Adding an Affiliate Network.
  • Find your HilltopAds advertiser ID. HilltopAds requires it in every postback. It is in the Trackers section of your HilltopAds account, inside your unique postback URL. You will paste it into the template’s postback in Step 2.
  • Decide which conversions HilltopAds should receive. HilltopAds optimizes on conversions, and bills CPA campaigns on them. If your funnel has several steps, decide now which one is the conversion. See Tracking several events.

Step 1 – Create the campaign and the HilltopAds traffic source

  1. Go to Campaigns and click New.
  2. In Traffic Source, open the dropdown and click + New Traffic Source.
  3. Type hilltop in the search box and select the HilltopAds template.
  4. Enter a Name, for example HilltopAds.
  5. Leave Cost currency on USD unless your HilltopAds account is billed in another currency.
The template fills in the Parameters table for you: The HilltopAds template's Parameters table in ClickFlare, with HilltopAds' macros pre-filled Each tracking field becomes a column you can group reports by. zoneid is the one you will use most. It tells you which publisher zones convert, so you can blacklist or whitelist zones in HilltopAds.
Don’t change or remove the externalId row. Without token={{token}} in the campaign URL, HilltopAds has no click ID to receive back, and no conversion reaches HilltopAds.
The template only passes three tracking fields. HilltopAds offers more macros you can add: To add one, click Add Parameter, give it a name and parameter (for example adid), and enter the HilltopAds macro as the TS Token, double braces included. ClickFlare assigns the next free tracking field. {{adid}} is worth adding if you test several creatives.

Step 2 – Set up the postback

The postback is what sends conversions to HilltopAds. It lives on the traffic source, so every campaign that uses this HilltopAds traffic source sends conversions the same way.

Get your advertiser ID from HilltopAds

  1. In HilltopAds, open the Trackers section of your advertiser account.
  2. Find your unique postback URL. HilltopAds builds it with your advertiser ID in the advertiserId parameter.
  3. Copy the advertiser ID.

Add it to the traffic source in ClickFlare

  1. Back in the New Traffic Source form, scroll to Passing conversion info to traffic source.
  2. Turn on Traffic source postback URL. The template’s postback appears:
The Traffic source postback URL switched on, showing the HilltopAds template's postback It already sends the click ID ({external_id}) and the payout ({payout}) as ClickFlare tokens, and the currency as USD. It has a placeholder for your advertiser ID.
  1. Replace REPLACE with your HilltopAds advertiser ID. This is the only change you need. The result:
  1. In the dropdown on the left, choose the ClickFlare event that should fire the postback. The dropdown lists the Default Events (Conversions, Clicks, Visits) and your Custom Conversions. Keep Conversions to send every conversion. If your final action is a custom conversion (for example purchase), choose that instead.
  2. Click Save. You are back in the campaign editor with the HilltopAds traffic source selected.
Replace REPLACE with your advertiser ID before you save. HilltopAds requires it in every postback, and without it the conversions may not be credited to your account.
The template fixes currency=USD. ClickFlare’s {payout} is in your ClickFlare account currency. If your ClickFlare payouts are not in USD, change USD to that currency code. See Multicurrency in ClickFlare. To learn what each postback token does, see How to Configure a Traffic Source S2S Postback URL.

Step 3 – Finish the campaign and copy its URL

  1. Name the campaign.
  2. Set the Cost Model to Not Tracked, so ClickFlare uses the price HilltopAds passes. See Cost.
  3. Choose Redirect or Direct tracking. Redirect is the usual choice for HilltopAds’ popunder and banner traffic.
  4. Click Next and, on Destination, add your lander (optional) and your offer.
  5. Save, open Tracking, select your own tracking domain and copy the campaign URL.
The campaign URL already contains every HilltopAds macro from the template, for example token={{token}} and zoneid={{zoneid}}. If you use a lander, its call-to-action must link to the ClickFlare click URL, not to the offer directly. Otherwise the visit reaches the offer without a ClickFlare click ID, and the conversion cannot be traced back to HilltopAds. See Creating a Campaign in ClickFlare.

Step 4 – Create the campaign in HilltopAds

  1. In HilltopAds, go to Manage Campaigns and click Add Campaign.
  2. Choose the ad format, traffic channel, targeting and bid as usual.
  3. Paste the ClickFlare campaign URL into the Final Destination URL field.
  4. Save the campaign and submit it for moderation.
Paste the URL exactly as ClickFlare gives it. HilltopAds replaces each double-brace macro when the ad is clicked.

Step 5 – Test the integration

  1. In HilltopAds, open the Trackers section and go to Test Conversion.
  2. Follow HilltopAds’ test flow, then complete the offer the way a real visitor would.
  3. Check the result in Test Conversion. If HilltopAds doesn’t register the conversion, check the advertiser ID in the postback first.
  4. In ClickFlare, go to Logs → Postback Status and filter by the campaign. A successful postback to trackhta.com confirms ClickFlare sent it.
A postback only fires for a visit that came through HilltopAds with a real {{token}} value. If you open the ClickFlare campaign URL directly in your browser, token arrives empty and there is nothing for HilltopAds to match.

Tracking several events

HilltopAds separates conversions from micro-conversions. A conversion is the action HilltopAds bills CPA campaigns on and optimizes for. A micro-conversion is an earlier step, such as a registration, that HilltopAds shows in stats for analysis. HilltopAds identifies a micro-conversion by a goal parameter in the postback. A conversion must not include a goal.
  1. In ClickFlare, create a custom conversion for each step, for example registration and purchase.
  2. Map the main postback (no goal) to your final event, for example purchase.
  3. Click + Another postback URL for each micro-conversion. Give it the HilltopAds URL with a goal value, for example goal=reg, and map it to its ClickFlare event, for example registration.
  4. Use the same advertiser ID in every postback.
  • Only the postback without a goal counts as a conversion. Keep exactly one of those per funnel.
  • Name goals after the step, for example reg, first_time_deposit, add_to_cart. HilltopAds doesn’t limit the number of goals.
  • Micro-conversions are for analysis. Optimize on the conversion that matters most.
  • HilltopAds’ own guides differ on the parameter name for the event (goal in the tracker example, label in the general example). Check the format in your Trackers section, or ask HilltopAds support, before relying on it.
If HilltopAds should only learn from your final sale, keep a single postback and map it to that event. Earlier steps still show in ClickFlare. They just don’t reach HilltopAds.To send a postback only for some conversions, for example only those above a certain payout, use Event filter under the postback to add conditions.

Cost

The template passes cost with every visit. The cost row sends HilltopAds’ {{price}} macro, and ClickFlare records it as the visit’s cost. HilltopAds fills {{price}} with the price of one impression on CPM campaigns, or one click on CPC campaigns. On the campaign, set the Cost Model to Not Tracked so ClickFlare uses the cost passed in the URL.
On popunder, one impression is one visit, so the CPM price per impression is the right cost per visit. On CPM banner and video campaigns, many impressions happen for each click, but ClickFlare only records the clicks. The cost per click is then understated. Compare ClickFlare’s Cost column with your HilltopAds spend after launch. If it doesn’t match, switch the Cost Model to CPC with your real cost per click, or correct the spend with a manual cost upload.
For HilltopAds CPA campaigns, set the Cost Model to CPA, with your price per conversion. When the recorded spend differs from your HilltopAds spend, correct it with a manual cost upload. See Cost Models. ClickFlare has no cost-tracking API integration for HilltopAds. The cost in the URL is the source of truth.

Delayed revenue

If you run search arbitrage (RSOC or AFD) behind HilltopAds, the feed reports revenue hours or days after the click. To pass that revenue to HilltopAds once it arrives, see Sending Delayed Revenue to Traffic Sources.

Troubleshooting

  • advertiserId is still REPLACE, or the ID is wrong. Copy it again from the Trackers section.
  • The campaign URL in HilltopAds is missing token={{token}}, or the macro was edited. Copy the URL from ClickFlare again.
  • The postback uses a HilltopAds double-brace macro instead of ClickFlare’s {external_id}. ClickFlare doesn’t know HilltopAds macros and sends them as literal text.
  • Traffic source postback URL is off on the HilltopAds traffic source.
  • Disable sending postbacks to traffic source is on in the campaign.
  • The postback is mapped to a different event than the one the conversion logged. Check Logs → Event Logs to see which event was recorded.
  • Check Logs → Postback Status: a failed request shows the status code HilltopAds returned.
The template sends price={payout}, so it was removed or edited. Restore &price={payout}&currency=USD.If the conversions arrive in ClickFlare without a payout, {payout} is empty too. Fix the payout in the affiliate network’s postback to ClickFlare, or set a payout on the offer.
The macros were not replaced, usually because the URL was edited or pasted somewhere HilltopAds doesn’t process macros. Paste the campaign URL from ClickFlare unchanged, with the double braces. See Traffic Source Tokens Arriving Empty.
For the general checklist, see Conversions not showing.
FREQUENTLY ASKED QUESTIONS
Q1: Can I use the same HilltopAds traffic source for all my HilltopAds campaigns?
A1: Yes. The postback and advertiser ID are set once on the traffic source, and every campaign using it sends conversions the same way. Create a second HilltopAds traffic source only if a campaign needs a different postback, for example different goals.
Q2: HilltopAds lists Voluum, Binom, RedTrack and other trackers, but not ClickFlare. Is that a problem?
A2: No. The ClickFlare template already has the postback format. You only replace REPLACE with your advertiser ID from the Trackers section.
Q3: Why is it {{token}} in the campaign URL and {external_id} in the postback?
A3: They are two halves of the same value. HilltopAds fills {{token}} with its click ID when it sends the visit, and ClickFlare stores it. In the postback, ClickFlare fills {external_id} with that stored value. HilltopAds expects it back in its own token parameter.
Q4: Some older HilltopAds guides use {{ctoken}}. Should I?
A4: No. Use {{token}}, as the template does. It is the click ID macro HilltopAds’ current tracker guides list.
Q5: Should I use Redirect or Direct tracking with HilltopAds?
A5: Redirect is the usual choice and works with every HilltopAds format. Use Direct only if HilltopAds must see your lander’s domain as the destination. See Direct Campaign Tracking.

Traffic source postbacks

Every token you can use in a postback.

Custom conversions

Split leads and sales into separate events.

Cost models

How CPC, CPA and RevShare costs are calculated.

Conversions not showing

The general checklist when postbacks don’t arrive.