
At a glance
How it works
1
Adcash sends the click
A visitor clicks your ad. Adcash opens your ClickFlare campaign URL and fills in its macros: the click ID in
clickid, the cost in redirection_cost, plus the zone, banner, supply source, country and other details.2
ClickFlare stores the Adcash click ID and cost
ClickFlare saves the value of
clickid as the visit’s External ID, records the cost for the visit, 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 Adcash
ClickFlare fires the Adcash goal postback, replacing
{external_id} with the stored Adcash click ID and {payout} with the revenue. Adcash matches it to the original click and counts it against the goal.The mirror to keep straight: in the campaign URL you write ClickFlare’s parameter (
clickid) and Adcash’s macro ([clickid]). The template does this for you. In the postback URL you write Adcash’s parameter (cid) and ClickFlare’s token ({external_id}). The template does this too. Adcash macros use square brackets. ClickFlare tokens use curly 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.
- Have access to Tracking in your Adcash account. The postback reports to an Adcash conversion goal, which you create there. You need the goal’s advertiser ID and goal ID in Step 2.
- Decide which conversions Adcash should receive. Adcash optimizes on what you send it. If your funnel has several steps (lead, then sale), decide now whether to send one event or several. See Tracking several events.
Step 1 – Create the campaign and the Adcash traffic source
- Go to Campaigns and click New.
- In Traffic Source, open the dropdown and click + New Traffic Source.
- Type
adcashin the search box and select the Adcash template. - Enter a Name, for example
Adcash. - Leave Cost currency on USD unless your Adcash account is billed in another currency.

zone and ssp are the ones you will use most: they tell you which publisher zones and supply sources convert, so you can block or bid up zones in Adcash.
To pass more Adcash data, click Add Parameter, give it a name and parameter, and enter the Adcash macro, in square brackets, as the TS Token. ClickFlare assigns the next free tracking field. All ten tracking fields are already used by the template, so replace a row you don’t need (such as Advertiser ID) rather than adding one. Check the macros your Adcash account offers before adding them.
Step 2 – Set up the postback
The postback is what sends conversions to Adcash. It lives on the traffic source, so every campaign that uses this Adcash traffic source sends conversions the same way. The Adcash template includes the postback URL. It needs two values from your Adcash account: your advertiser ID and the ID of the goal the conversions count against.Create a goal in Adcash and note its IDs
In Adcash, conversions are tracked against goals. Each goal has its own postback URL.- In Adcash, go to Tracking → Goals and create a new goal.
- Fill in the mandatory fields: a goal name and the action category (for example Lead or a sale-type category). Leave a fixed value empty if you want to send the real payout.
- Choose the server-to-server (S2S) postback option.
- Click Get tracking code. Adcash shows the goal’s postback URL. It looks like this:
- Copy the value after
advertiser=(your advertiser ID) and the value afterid=(the goal ID).
{external_id} and {payout} there. Only the two IDs matter for ClickFlare.
Complete the template’s postback in ClickFlare
- Back in the New Traffic Source form, scroll to Passing conversion info to traffic source.
- Turn on Traffic source postback URL. The template fills in the URL:

- Replace
REPLACE_ADVERTISER_IDwith the advertiser ID from the goal’s tracking code. - Replace
REPLACE_GOAL_IDwith the goal ID from the same tracking code. - Leave
{external_id}and{payout}as they are. ClickFlare fills them with the Adcash click ID and the payout. - In the dropdown on the left, choose the ClickFlare event that should fire the postback. Keep Conversions to send every conversion. If your final action is a custom conversion (for example
purchase), choose that instead. - Click Save. You are back in the campaign editor with the Adcash traffic source selected.
value={payout}, Adcash still counts the conversion but records no value for it. Keep it unless your goal uses a fixed value. If your offers pay in a currency other than your Adcash account currency, convert in ClickFlare first. 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
- Name the campaign.
- Set the Cost Model to Not Tracked. The template passes cost per visit. See Cost.
- Choose Redirect or Direct tracking. Redirect is the usual choice for Adcash’s pop-under, interstitial and banner traffic.
- Click Next and, on Destination, add your lander (optional) and your offer.
- Save, open Tracking, select your own tracking domain and copy the campaign URL.
clickid=[clickid], redirection_cost=[redirection_cost] and zone=[zone].
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 Adcash.
See Creating a Campaign in ClickFlare.
Step 4 – Create the campaign in Adcash
- In Adcash, start a new campaign and fill in the required details.
- Choose the ad format, targeting and bid as usual.
- Paste the ClickFlare campaign URL as the creative’s destination URL.
- If the campaign optimizes on conversions (a CPA goal), select the goal you created in Step 2.
- Save and submit the campaign for approval. It runs once your account has funds and the campaign is approved.
[...] macro when the ad is clicked.
Step 5 – Test the integration
Adcash lets you verify a goal before it receives real traffic. Campaigns that optimize on conversions (CPA targeting) need verified conversion tracking before they start receiving traffic.- In Adcash, open Tracking → Goals and click Verify Tracking on your goal.
- Select the campaign that uses the ClickFlare campaign URL and start the test.
- Complete the offer the way a real visitor would.
- Check the goal in Adcash. Once the test conversion arrives, the goal is marked as verified.
- In ClickFlare, go to Logs → Postback Status and filter by the campaign. A successful postback to the Adcash goal URL confirms ClickFlare sent it.
Tracking several events
In Adcash each goal is one event. To send a lead and a sale separately, create two goals in Adcash and note each goal ID. The postbacks differ only in their goalid:
- In ClickFlare, create a custom conversion for each step, for example
leadandpurchase. - On the Adcash traffic source, click + Another postback URL once per extra event.
- Map each postback to its ClickFlare event: the
leadcustom conversion to the lead goal URL,purchaseto the sale goal URL. - Verify each goal in Adcash.
Sending only one event
Sending only one event
If Adcash should only learn from your final sale, keep a single postback and map it to that event. Earlier steps (leads, add to carts) still show in ClickFlare. They just don’t reach Adcash.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’s Cost row maps Adcash’s[redirection_cost] macro to ClickFlare’s {cost} token. Adcash fills in the cost of each visit when the ad is clicked, and ClickFlare records it against that visit.
To use it, set the campaign’s Cost Model to Not Tracked. ClickFlare then reads the cost from the campaign URL instead of a fixed value, so your Cost, Profit and ROI follow what Adcash actually charged.
Check the cost in ClickFlare against Adcash’s own statistics for the first days. If they drift, for example because of adjustments Adcash makes after the click, correct the totals with a manual cost upload. ClickFlare has no Adcash cost API integration. See Cost Models and Traffic Source Cost Tracking.
Delayed revenue
If you run search arbitrage (RSOC or AFD) behind Adcash, the feed reports revenue hours or days after the click. To pass that revenue to Adcash once it arrives, see Sending Delayed Revenue to Traffic Sources.Troubleshooting
The Adcash goal won't verify
The Adcash goal won't verify
- The campaign URL in Adcash is missing
clickid=[clickid], or the macro was edited. Copy the URL from ClickFlare again. - The postback still contains
REPLACE_ADVERTISER_IDorREPLACE_GOAL_ID. {external_id}in the postback was replaced with another tracker’s token such as{clickid}. ClickFlare only knows{external_id}and sends anything else as literal text.- The goal
idin the postback belongs to a different goal than the one you are verifying. - The
external_idrow was removed from the traffic source.
Conversions show in ClickFlare but not in Adcash
Conversions show in ClickFlare but not in Adcash
- Traffic source postback URL is off on the Adcash 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 Adcash returned.
Adcash shows conversions with no value
Adcash shows conversions with no value
The postback has no payout. Check that it still contains
value={payout}, as in the template. If you pasted Adcash’s own URL over it, replace INSERT_PRICE_VALUE with {payout}.Cost is zero in ClickFlare
Cost is zero in ClickFlare
- The campaign’s Cost Model is not Not Tracked, or a fixed value overrides it.
- The Cost row was removed or edited, so
redirection_cost=[redirection_cost]is missing from the campaign URL. - The URL was pasted somewhere Adcash doesn’t replace macros.
Zone or supply source columns are empty
Zone or supply source columns are empty
The macros were not replaced, usually because the URL was edited or pasted with curly braces instead of square brackets. Paste the campaign URL from ClickFlare unchanged. See Traffic Source Tokens Arriving Empty.
FREQUENTLY ASKED QUESTIONS
Q1: Can I use the same Adcash traffic source for all my Adcash campaigns?A1: Yes, as long as they report to the same goal. The postback is set once on the traffic source and every campaign using it sends conversions the same way. Create a second Adcash traffic source if a campaign needs a different goal or event setup.
Q2: Why does the template’s postback containA2: Every Adcash postback carries your own advertiser ID and the ID of one goal. ClickFlare can’t know them, so the template leaves placeholders. Copy both from the goal’s tracking code in Adcash, as described in Step 2.REPLACE_ADVERTISER_IDandREPLACE_GOAL_ID?
Q3: Why is itA3: They are two halves of the same value. ClickFlare reads Adcash’s click ID from its ownclickidin the campaign URL andcidin the postback?
clickid parameter. Adcash expects it back in its own cid parameter. Both names are fixed. Change neither.
Q4: Should I use Redirect or Direct tracking with Adcash?A4: Redirect is the usual choice and works with every Adcash format. Use Direct only if Adcash must see your lander’s domain as the destination. See Direct Campaign Tracking.
Q5: Do I need the postback if I only buy on CPM or CPC?A5: It is optional, but recommended. Without it, Adcash cannot run conversion-based optimization, and CPA-target campaigns need verified tracking before they receive traffic.
Related
Traffic source postbacks
Every token you can use in a postback.
Custom conversions
Split leads and sales into separate events.
Cost models
How Auto, CPC and CPA costs are calculated.
Conversions not showing
The general checklist when postbacks don’t arrive.