We use cookies to personalize content, to provide social media features and to analyze our traffic. We also share information about your use of our site with our social media, advertising and analytics partners. For information on how to change your cookie settings, please see our Privacy policy. Otherwise, if you agree to our use of cookies, please continue to use our website.

You Can't Hunt What You Can't See

My monthly article for SEL Does your PPC program drive more sales than it's credited for? The answer is certainly "yes", but the sources and volume of under-reporting might surprise you. If you drive your program through your web analytics software you may be missing 10 - 30% of the sales! This is not the fault of the software as much as it is the convenience of using javascript tags for tracking. In past years, part of the problem came from browsers not happy about running 3rd party javascripts, but those problems have been fixed. The problem now is not with javascript flakiness as much as when the script is run. Almost everyone wisely puts the javascript tracking in the footer of their web pages. The reason? You don't want the customer to have to wait for the javascript to run before loading the rest of the page. If there is any problem, you want the page to load and the footer to hang so that the user can shop unimpeded. Herein lies the rub. Because it's in the footer the javascript can only cookie the browser after the whole page loads. For heavy, slow, image-laden pages, customers often move on to the next page before the footer loads. If the user sits on that subsequent page long enough to fire the javascript the problem will be that you've lost the url parameters that allow your tracking system to know the source of the traffic. That user is now flagged as "untracked" even though they came through a paid advertisement. We know this happens and understand the scale of the problem because it shows up whenever we do data audits with clients, but also because we sometimes employ both our standard tracking and a javascript tag when we're studying marketing channel allocation for our PPC clients. The problem isn't that orders we see are tracked to other programs; it's that the sales we know came through a PPC ad aren't tracked to any marketing program. Knowing this, you might say: "Well, if I have a sense that this happens 20% of the time, can't I just adjust my advertising efficiency thresholds by 20% to compensate?" Yes, you can, but the problem is that some destination pages are more susceptible to this problem than others, either because they load more slowly, or because users are more likely to navigate off of them quickly. This will disproportionately penalize some types of keywords over others resulting in lost opportunity as those ads are mistakenly bid down the page. A better way to track high-dollar marketing programs is through use of a fast redirect. The redirect is fast if, and only if the redirect server doesn't have to do a database look-up. If the server has to look up the destination url the redirect will be slow and the server will bog down during traffic bursts. We pass the final destination url to our redirector as an encoded parameter so the redirect takes less than 0.1 seconds and the volume of redirects is almost irrelevant. Using a redirector provides much more robust tracking, but can/should be cause for concern as well. With all of that valuable traffic passing through a third party box it's valid, indeed essential to ask: "what happens if the box goes down?" We stressed out about this, too. Our approach was to build in multiple redundancy by having multiple redirectors. To keep these independent, these servers are located across the country, and use different internet backbones. All the servers share the work, and are self-checking and self-correcting. If a data center becomes unavailable -- say, due to a server failure (almost never), or due to DC connectivity problems (very rare), or due to routing hiccups somewhere on the web (not rare, but brief) -- we use smart DNS to reroute traffic to the healthy machines within a minute. No system is 100% perfect, but this redundancy and automatic checking provides extremely high uptime. Handling order allocation issues can be done on the fly, with the confirmation page tag sending marketing allocation along with the order details, or through a back-feed of order ids and marketing channel credited. Any competent search agency can then base its bidding and reporting on only those sales your system has flagged as paid search or unknown. We see all the costs associated with PPC advertising, but we don't see all the sales generated. While this post may cause some eyes to glaze over, understand that this is not minutia by any stretch of the imagination. Better tracking technology plugs a big hole, but others remain. Users drop cookies, use multiple browsers, and sometimes search on one machine but place the order on another after shopping around. We can track spillover to the call center, but measuring foot traffic driven to the stores remains elusive. However, those who throw up their hands and conclude that direct marketing metrics shouldn't be applied to search simply aren't trying hard enough.
Join the Discussion