A client recently contacted me to ask why Google AdWords was reporting conversions but the clickbank affiliate account the Google AdWords ad linked to showed zero conversions. The names have been changed to protect the innocent. That includes the site - I have no idea about websites selling pipecleaners.
The "Basic" Process
- Joe the plumber (just to be topical) searches in Google for a phrase that triggers my client's AdWords ad for bestpipecleaners.com.
- If Joe clicks the link, Google AdWords places a cookie on his machine that lasts 30 days to record the Ad that drove him to the site
- Google AdWords redirects Joe to the link in the Ad, in this case my client's clickbank affiliate link
- Clickbank creates a clickbank cookie good for 60 days to record the affiliate ID responsible for taking Joe to the clickbank destination URL, in this case, my client's landing page finally.
- Joe goes from the landing page to a few more pages and then hits the purchase button
- The purchase button goes to the clickbank checkout process
- Clickbank pulls the 60 day clickbank cookie from Joe's machine
- When he completes the sale, the affiliate ID from his cookie is credited with the sale
- Clickbank redirects Joe to the thank you page on my client's site
- The thank you page is tagged with the affiliate tracking code and Joe closes his browser and goes to fix some pipes.
Simple huh? So in this case clickbank correctly accounts for one sale from my client's affiliate ID and Google AdWords records one conversion against the Ad that convinced Joe to purchase.
The Blockage in the Pipes
Josephine the plumber searches in Google for a phrase that triggers my client's ad and follows a similar path as Joe but when she gets to the landing pages, she doesn't trust the hype, leaves the website and goes to fix some pipes.
A week later she is still trying to solve her underlying problem so she goes back to her computer and finds another website on the topic, pipecleanerreviews.com. Unbeknownst to her, this site is also an affiliate of my client and after she sees a review of my client's product, she decides it might work after all and clicks the link to visit my client's landing page again at bestpipecleaners.com. Behind the scenes, the URL she clicked on is a clickbank link with pipecleanerreviews.com's clickbank id instead of my client's clickbank id.
- Clickbank records the affiliate id as pipecleanerreviews.com in the cookie on Josephine's machine, replacing the original affiliate id of bestpipecleaners.com
- Clickbank redirects her to bestpipecleaners.com and she completes the sale
- Clickbank pulls the cookie from her machine (pipecleanerreviews.com's affiliate id) and so they get the credit for the sale
- Clickbank redirects her to the thank you page which is also tracked with pipecleanerreviews.com's conversion tracking code (in addition to bestpipecleaners.com's code), and she goes off to fix some pipes.
The problem in this scenario, is that the thankyou page has both Google AdWords conversion codes and so both AdWords accounts (bestpipecleaners.com and pipecleanerreview.com) will record a conversion, when clickbank only credited a single affiliate with the conversion.
There are many other scenarios that play out in a similar way and she might have visited many sites. In fact some of the links from my client's site bestpipecleaners.com points to pipecleanerreviews.com because it's a good idea to let people get third party opinions of your products to help them decide if it's worth buying.
To accurately measure the AdWords campaign, the first search she did was not responsible wholly for the sale but since conversions are absolute we have to decide who gets the credit. Regardless of your opinion on this, clickbank believes the last affiliate ID used should get the credit since they ultimately generated the sale. Google AdWords however has split the credit because of the conversion code existing for both affiliates on the thank you page.
The BestPipeCleaner for the job
If we want to change this behavior to make it match clickbank we have to show only the Google AdWords conversion code for the affiliate recorded by clickbank. Fortunately, Clickbank reports the affiliate ID (if there was one) in the URL as the variable cbaffi when the visitor is sent to the thank you page so it is a simple matter of detecting which affiliate ID was passed and showing the appropriate tracking code snippet. This could be a google snippet, a Yahoo PPC snippet or any other conversion code really, we just need to show one or none.
The URL will look something like this where zzzzzzz is the affiliate ID and ... means there is much more than I want to type out:
/common/thankyou.cfm?item=9&cbreceipt=xxxxxxx&time=1224443502&cbpop=yyyyyyy&cbaffi=zzzzzzz&cname=...
For my solution I propose a database table of unique affiliate IDs mapped to their tracking code snippet but if you are only dealing with a few affiliates you could manually write this out to a property list or structure if you can carefully escape any quotes or double quotes that might break your code.
- If the affiliate ID is blank or isn't passed to the thank you page, do nothing and skip to the rest of the page
- If the affiliate ID is not blank, look-up the affiliate ID in the database:
- If there are no matches do nothing and skip to the rest of the page
- If there is one result, display the conversion tracking code and then show the rest of the page
- If there are mulitple results for the affiliate ID, loop over the rows and write each snippet out then show the rest of the page
Ideally, each affiliate would have only one snippet per ID but it is foreseeable that an affiliate might be promoting your site on Google, Yahoo and several other conversion tracking channels. If you don't give them a unique affiliate ID per channel, they will record a conversion against each in the unlikely event that someone saw an affiliates Google ad, then their Yahoo ad before making a purchase. It's a complex scenario but worth noting. If you can, give them a unique affiliate ID for each separate ad medium they use (Google, Yahoo) so they can see the stats they need.
For help with your Google AdWords issues take a look thru my consulting site and contact me. If you need help with Clickbank I have to confess it's not my specialty but I can try to help.
I've also worked extensively with third party e-commerce providers to configure Google Analytics to ensure revenue is recorded against the correct referral sources which is a related issue.