Introduction
Before you track, you need to have something TO track.
You'd think that getting an offer URL out of your affiliate network and into your tracking software would be simple, right? Copy-paste, done.
But as we all know, it's not as easy as that - and while old hands at the affiliate game have internalised most of this stuff, newer affiliates often find this step a huge stumbling block.
So, as the STM Ultimate Guide To Tracking kicks off, we're starting with the basics: how to get a properly-formatted offer URL from your affiliate network, every time, no problem.
How To Use This Guide
To use this guide, you'll need to know two things: what tracking system you're using, and what software your affiliate network runs.
This guide currently covers formatting tracking URLs for CPVLab and Prosper 202. If you're using the Stack That Money mobile tracker, use the directions for Prosper 202. If you're using POFpro, follow the directions for Prosper 202 but replace [[subid]] with {subid:}.
If you want to see guides for other tracking systems, do ask!
If you want more detail on WHY we're doing this and how the system works, not just what to do, read this section first.
As for affiliate networks, here's a guide to which tracking system is used by which network:
Cake
To get a properly-formatted offer URL out of Cake:
1) Click on the link for the offer. It should bring up a screen that looks like this:

2) Click on "Creatives".
3) If there is a single link below "Unique Link", copy it. It should be in the format
http://someURL?somequerystring&s1=
http://ubernetwork.com/?a=1431&c=2114&s1=
http://someURL?somequerystring&s1=Campaign14
http://someURL?somequerystring&s1=Campaign14&s2=[[subid]]
http://someURL?somequerystring&s1=Campaign14&s2=
HasOffers
To get a properly-formatted offer URL out of HasOffers:
1) Click on the offer link. Scroll down to "Generate Tracking".
2) Choose the landing page you want to use from the options in the dropdown box next to "Offer URL", or leave this on "Default".
3) Tick "Affiliate Sub ID". Below the text box that appears, click "More Sub IDs"
In the "Affiliate Sub ID" text box, give your campaign a unique name. Don't use the name of your angle or traffic source, though - use something like "Campaign14". (If you're confused why we're doing this, see Why Add Campaign Names To Subids?)
4) In the "Affiliate Sub ID 2" box, enter "[[subid]]" if you're using Prosper, and a random character if you're using CPVLab.
5) Click "Update" below the "Affiliate Sub ID 2" text box.
6) If you're using CPVLab, delete the random character you entered for your Sub ID 2. You should now have a URL like
http://ubernetwork.com/aff_c?offer_id=494&aff_id=2750&aff_sub=Campaign14&aff_sub2=
http://ubernetwork.com/aff_c?offer_id=494&aff_id=2750&aff_sub=Campaign14&aff_sub2=[[subid]]
Neverblue
1) Click on the offer link. Click on the "Search Creatives" tab. (If you can't see this tab, check that you have accepted the terms and conditions of the offer.)
If there are multiple creative options (usually multiple landing pages) choose the one you want to use for this offer URL, or ask your affiliate manager which one you should use. You can preview landing pages from Neverblue by clicking on the IMG button next to the URL field.
6) In the text field to the right of "Use SubID:", above the URL field, for the creative you wish to use, give this campaign a unique name. Don't use the name of your angle or traffic source - use something like "Campaign14". (If you're confused why we're doing this, see Why Add Campaign Names To Subids?)
6) In the text field to the right of "Use SubID2:", add a random character.
6) Copy the URL from the URL field below the Subid fields. You should end up with a URL that looks like
http://someURL.com/click/?s=2331&c=6293496&subid=Campaign14subid2=s
http://someURL.com/click/?s=2331&c=6293496&subid=Campaign14subid2=[[subid]]
http://someURL.com/click/?s=2331&c=6293496&subid=Campaign14subid2=
How All This Stuff Works And Why You Do It
Why do we need to do all this work?
Affiliate networks provide us a link that tracks every click on it, and associates it with our affiliate ID. That's what one of the variables in the clickthrough link they provide means: it's our unique ID as an affiliate.
Tip: if you get kicked off an offer, your affiliate manager will sometimes be able to provide you a new affiliate ID to use if you can convince them that you've solved your quality problems. This is definitely worth asking about for those "aargh, that campaign was just becoming profitable!" moments, but do make sure you've made an effort to fix your quality first!
In a HasOffers URL, for example, "aff_id=" is the part of the URL that tells the network which affiliate is sending the traffic. "offer_id=" is the ID of the offer, which tells them where to send that traffic after it arrives at their tracking system.
So far, so simple - and if all we want to do is send traffic to our affiliate network and have them pay us for the stuff that converts, we can just use the URL as they provide it.
The tricky bit comes when we want to track what ads actually work best.
To do that, we need to assign each visitor a unique ID, and then note which visitors actually sign up to our offer. However, in order to do that, we need to let our affiliate network know what the ID we've given each visitor.
That's where all the manual editing of URLs comes in. Tracking programs automatically add the ID of each visitor - known as a "Sub ID" - when people click on our links, but they need to know where to put that ID. Prosper 202 will add in the Sub ID to replace [[subid]] in the link we give it, wheras CPVLab just adds the subid onto the end of the URL.
And tracking systems don't all expect the same variable for subid, either. HasOffers looks for a variable called "aff_sub" or "aff_sub2" etc, wheras Cake just looks for "s1", "s2", etc.
So we have to modify our URL to tell our tracking software where to put the ID of each visitor, and then we have to modify it further to make sure that our tracking software is giving our affiliate network the ID in a form it understands.
Why Add Campaign Names To Subids?
One of the major pains in our collective ass as affiliate marketers is being kicked off offers. Adding a campaign name to your offer URL can help avoid this.
If an offer owner can see that there's a single campaign name in common with any low-quality leads you're sending, they will sometimes just ask you to pause that campaign ID rather than asking your network to kick you off the offer. Thus, it's always a good idea to identify each campaign you're sending traffic from, in case it ends up being low-quality.
(They can also ask for MORE high-quality traffic if one campaign does particularly well there.)
Unfortunately, this doesn't always work - often offer owners just won't track subids in that detail. But sometimes it can save your ass.
And that's it!
If you have any questions or comments, please do post them below.
Network AMs and owners: if you're using a non-standard platform and you'd like to have a section in this guide for people using your network, post a guide below, and I'll link it from the index.
Other tracking platforms: if anyone wants to go through and suggest modifications for other tracking platforms, please do post 'em below, and I'll link to them from this guide so people can easily see how to modify the URLs they get to fit with each platform's requirements.
Hope that was helpful, and if there's anything more you'd like to know, or anything that's not clear, or that you think might be wrong, please do let me know!
Thanks to David and Sean at Adsimilis, Jaimmie at F5, and Jos at Neverblue for all their help proofreading this guide and checking that I didn't get anything wrong!
Thanks caurmen, this is an awesome addition, it seems to be a hangup for so many people getting going.
Thanks caurmen, this is indeed an ultimate guide!
Super detailed guide for the guys starting out and having problems setting up links.
Hi caurmen,
In cupid network, they used these
data1
data2
does that mean I should do this?
http://someURL?somequerystring&data1=Campaign14&data2=
can I apply the same concept to the network too?
now cupid is on custom platform, not sure it still work?
any help? Thanks.
Are data1 and data2 your subids? If so, that sounds like that should work.
You might want to check with your AM at cupid to be sure.
Hi Caurmen,
Like to check again.
Example
http://someURL?somequerystring&s1=Campaign14&s2=
Is it possible I use s2 without s1?
Example,
http://someURL?somequerystring&s2=
Or do I always have to specify s1 before I can use s2?
Any help? Thanks.
Eric, I've used just &s2= with any trouble
It depends on the tracking system and the affiliate network. Personally I'd recommend using S1 - it's very little extra work, can save you some technical headaches in some cases, and gives you a little extra data.
But check with your AMs to know for sure.
In Prosper what are the placeholders c1 c2 c3 etc for? What do they represent?
I think I figured out that they represent information from the traffic source. Is that right?
There was a seperate post on this which I think answered your question, but in brief: C1 to C4 are for whatever information you want to pass. Often traffic sources will be able to pass additional info, which you can pass in them (like POF's {age:} parameter, for example), but you can also just use them for your own reference.
@caurmen - How do I mark my URLS by traffic source, in case i have quality issues with the advertiser? Do I pass it in the link I get from the affiliate network... or when I create a link in my tracking platform (I use prosper).
Wow, I'm confusing myself. Example time:
Should it be..
http://ubernetwork.com/?a=1431&c=2114&s1=whatever&s2=TRAFFICSOURCE&s3=[[subid]]
http://bigcashwebsite.com/?something&c1={age:}&c2={state:}&c3=TRAFFICSOURCE&kw=whatever
The difference here is basically whether you want your affiliate network to see the traffic source indicator or not.
If you're concerned about quality, I'd pass the traffic source in the subid - but DON'T NAME THE SOURCE. So, rather than "POF", just say "Traffic Source1" or something.
That way, if you have quality issues, your AM can tell you which traffic source is causing problems (if the advertiser tracks subids - *sigh*), but they don't know where you're getting the traffic.
I have another question related to CPVLAB...since CPV Lab will blank out and restrict any other directories on its domain to protect anyone from viewing the software itself, should I have one domain for just CPV Lab and a different domain for landing pages, (and NOIPFRAUD client)? I just thought of this and was wondering if it would be an issue.. Ive been getting some strange results when clicking on my offer links from my landing page, a blank page shows up and says "no click" on it.. driving me nuts.
This is awesome. Can this guide be expanded to imobitrax and
@rockythecat - I'll put it on the request list for later in the year! No promises, but we'll see what we can do.
What is the type of tracker Motamy uses? They look different then these links.
Matomy? I think they're using what used to be MobAffTracker.
[Q UOTE=caurmen;135732]Matomy? I think they're using what used to be MobAffTracker.[/QUOTE]
Any chance of a write up on that pretty please?
I'll put it down on the to-dos! It probably won't happen immediately, but I might see if any of the guys over there have a write-up or would be willing to do one.
Ok or HitPath if I am putting up Christmas wishes. w4 uses them
actually, one question I have having a bit of trouble with...
in prosper, for every banner I would add the &s1 &s2 tokens at the end of every banner URL in the ad network like for example:
http://awesomelandingpagesite.com/usa/lp1/index.php&s1=300x250&s2=xhamster&s3=NTVA&s4=banner1
CPVLab you can set your own custom tokens....prosper was c1,c2,c3. it's cake that uses s1 s2 s3,etc. Make sure to grab the CPVLab user guide. It's got setting up custom tokens in it.
EDIT:

Here's an example. pretty self explanatory I think. In short the variables can be anything you want them to be.
Not sure if this has been answered before or maybe I just missed it. How can I track ads? I know how to use the sub ids, but it seems to track static data.
For example: I have 5 ads. HappyAd1, HappyAd2, HappyAd3, HappyAd4, and HappyAd5
With CPVLaps s1=Campaign1 ... So what will s2= ?
I kind of think, I need to add a new offer for each banner. But, when I get hundreds of ads, that won't be very efficient. I know there's another way. Besides, using that method I don't think there is a way to link the ad to any URL, since CPVLabs only gives one link.
If you're using CPVLab, have a look at the link in my signature to our CPVLab guide - it includes explicit instructions on how to track individual ads.
Let me know if that doesn't answer the question, and I'll go into more detail!
I'm looking to track individual ads from Traffic Junky. I can see stats, and conversions on my stats page, but I don't understand where in the URL I need to input something that will track and differentiate between Ad1, Ad2, or Ad3.
No worries!
You'll be pleased to hear this is actually really simple. In "Step 4: Add Link To Traffic Source.", when you add the link you've got into your traffic source, just replace the bit of the link that says "EDIT" with the name you want to give each banner.
So, for example, when you add the link for your first banner, you'd replace "EDIT" with "Ad1". For the second banner, you'd replace "EDIT" with "Ad2", and so on.
Does that make sense?
Yes much better, sucks I spent all day to figure out sometime to simple but extremely important. Thanks Alot!
HiCaurmen - what about Mundomedia .. i checked that they use DirectTrack and I do not know what to fill in within the CPVLAB to track the offers that i plan to launch..please help. My AM doesn't know either..
Virtually the only thing that changes with the affiliate network is how subids are structured in your offer URL. It's either subid1=&subid2= or s1=&s2= or c1=&c2= etc.
Just follow this guide, and this one if you haven't already - http://stmforum.com/forum/showthread...Campaign-Setup
Then, for your offer URL, put the MundoMedia affiliate link in that they give you, make sure it ends with ....subid2= (or similar!) and then tick pass subid to offer.
I don't use Mundo but I'm sure someone will chime in and tell you what the link should look like.
Not quite sure how you generated that first link but it looks like the subids are passed as &subid1=something&subid2=something_else&subid3=... .
So you're link would likely be:
suscotrk.com/mt/v244y264a4y233v244y2t2/?subid1=something&subid2=
Where CPVLab would append the click ID to then end, so the links users go through would end up looking like:
suscotrk.com/mt/v244y264a4y233v244y2t2/?subid1=something&subid2=kf823njdsf902jc0sdfkio2
Again, am not 100% on what Mundo uses. In the 'get affiliate links' part of Mundo you may be able to add subids to the link, or there may be information about how extra details should be passed in the link.
how do you setup the dest url and the postback for hitpath networks?
http://someURL?somequerystring&s1=Campaign14&s2=[[subid]][[c1]]
You want PoF to pass age in the advert URL.
You do this using the {age:} token I believe - what you need to put in the URL is defined by PoF and not tracking202.
So, add this to your tracking202 URL by appending "&c4={age:}" to it or whatever c-value is appropriate. PoF will automatically change this to "&c4=17"
Question about HasOffers with Cpv Lab
In HasOffers it lets me add a SubId..
but i have to assign a name or number to it, so i just added the number 1: &aff_sub=1
And this is what my AFF link looks like now:
http://OFFER.com/aff_c?offer_id=5555...5555&aff_sub=1
1. So what should my postback in CPV lab look like this??
http://MYPOSTBACK.com/adclick.php?subid={aff_sub}
In CPV Lab you should change your link to end with ...&aff_sub=
Then you need to make sure append Click ID to offer is ticked (or whatever this option is called!).
As a result, your *real* offer URLs, i.e. that which a user gets sent to in a live campaign, will be:
hxxp://offer.com/aff_c?offer_id=5555&aff_id=5555&aff_sub=qwertyuiop 12345
Then, your postback to CPV Lab that you configure at the network will be as you posted.
When you have this going, once you get some clicks moving through, make sure to check at your network that the aff_sub values coming through look like click IDs, i.e. aren't blank or look weird like "aff_subqwertyuiop12345".
HI there i just signed up with trafficvance and i am having some problems understanding what they are asking of me. they sent me this email
"Can you just ask them in which macro they placed our postback? We just need to know which subid field to append to our Trafficvance links with the &subid={token} part.
If they placed the pixel in the c3= subid for example, we would then append our Tvance links with &c3={token} so the CPVLab servers can communicate the leads to our servers.
Thanks,"
I use mobooka as my network and my link is set as "http://mobclx.com/?x=xxx&x=xxx&s2="
Hope someone can help clear this up. thankyou
Is there a guide somewhere that explains how to do this with Clickbank?
Clickbank's tracking sucks.
If you want to integrate with a tracker you need to use their instant notification service.
See http://stmforum.com/forum/showthread...ions-to-Voluum and http://stmforum.com/forum/showthread...ion-Service%29
If you're doubting always ask your account manager to doublecheck and confirm/verify the link for you. Most networks nowadays work with publisher IDs so that they can optimize the traffic on a specific site/traffic source level. That way you don't have to work with different URLs per source which can be confusing, but you can still optimize the traffic on the site level. Just ask the network to share that info with you and based on that you can optimize everything there is.
Is it still necessary to do this, or is there an easier way to do it. Since it is 2015 and Volumn has been released. My questions is which tracker do I use Volumn or this one?
7) Copy that URL and paste it into your "Offer URL" box in Prosper 202 or CPVLab. If you're using CPVLab, make sure that you have "Pass SubID to Offer" ticked in your campaign setup.
Hi caurmen, I am not able to find the column Pass SubID in my CPV Lab window... may I know where is it located? thanks
@edric2233 -
@arsenal86 - It's a checkbox, not a column - that should help you find it!
I'm going through the mobile cookbook course and I need your help to set up my tracking link in
adworkmedia affiliate network:
this is the link in the aff network: http://www.adworkmedia.com/go.php?ca...4542&id=1&sid=
as I understand my link should be like this: http://www.adworkmedia.com/go.php?camp=11565&pub=54542&id=24776&sid=b1india&s id2={{{bidhash}}}
to put it in the destination URL in decisive.is
Am I correct in this phase?
@slimedia - what affiliate network are you using? The URL you post looks correct at a first glance, but it depends on how the sid parameter works. Alternatively, try testing it and seeing what comes through on the affiliate network's reporting platform.
What Happens if you put
THis
http://www.mb102.com/lnk.asp?o=8854&...3&a=175445&s1=
Into Your Offer URL in CPVlabs without the s2?
http://www.mb102.com/lnk.asp?o=8854&...&s1=camp14&s2=
If you're passing unique subids, they'll get passed as s1. That messes up many affiliate networks' systems, so the chances are you then get a pissed off Skype message from your AM :-)