We wish Google was doing much more to protect their advertisers (i.e. me) from click fraud. In September we wrote a blog post titled “Where is Google showing your ads?” because our use of the ClickDimensions solution made it painfully obvious that our Google display network ads were being shown on web sites that had absolutely nothing to do with the keywords our campaigns were targeting (Microsoft CRM marketing solution ads showing on auto enthusiast web sites?). As a result of that observation we altogether stopped using Google’s display network in combination with keywords. When I asked my Google contact about it she admitted that you have to keep an eye on where your ads are being shown.

However, we still advertise with Google using other targeting methods and we still try and keep an eye on where our ads are being shown. But, who was time for that? Well, yesterday we happened to notice a large group of visits coming from the same referring web site. Our ads were being shown on that web site at a high rate (and high cost to us) but a visit to the site revealed that the site is a bogus site set up just for the purpose of click fraud. Click fraud is when people create sites to show your ads and then generate clicks on your ads so they will get paid from Google.

Once we detected the rogue site we were able to go into our Google account and exclude it from showing our ads. However, it made us think about how to more easily detect this sort of click fraud. Using Microsoft CRM and ClickDimensions we built a click fraud detection dashboard and now can check it occasionally to look for anomalies. Here are the steps you can take to do this:

1 – Always make sure to end the URLs in your Google ads with a unique parameter. We use the parameter ‘adwords’ at the end of all our Google ads. So, the URL that people are directed to will look like this http://www.yourdomain.com/?s=adwords (the ? indicates a parameter is coming, the ‘s’ is the name of the parameter – ‘s’ for source or you could write out the word source if you want). By adding that unique parameter it will be easy to create views in CRM that allow you to see exactly which visits have come from your Google ads

2 – Create a few CRM views of visits from Google ads. These will be views of visits where the entry page field of the visit record contains your unique parameter (i.e. adwords). I created views for ‘Visits from Google Ads today’, ‘Visits from Google Ads yesterday, ‘Visits from Google Ads this week’ and ‘Visits from Google Ads last 15 days’.

3 – Create CRM charts to display your views graphically

4 – Create a dashboard to display all your charts in one place. With this in place you will be able to quickly see any anomalies happening in your visits.

Below is our click fraud detection dashboard. On the top row we see the visits for this month that have come from Google ads. This view shows us the visits by day and we can immediately see a spike on February 21 and a mini-spike on February 19. This tells us we need to dig deeper.

On the second row we can see the top 10 visits by referring host for today, yesterday, this week and the last 15 days. This shows us when a specific site is bringing a lot of visits. Now, we always expect to see a lot of visits from the host ‘googleads.g.doubleclick.net’ because this is a mechanism Google uses to serve ads on sites in their network. And, you can usually see the host of these visits in the keywords field on the visit record. So, we could also build charts for that and go even deeper. For now let’s keep it simple. Notice in three of the charts we can see a site that was bringing a lot of visits. This alerts us to check that site and see if it is legitimate. Of course, it was not a legitimate site so we blocked it in our Google account yesterday and this is why it does not appear on the chart for today’s visits.

With this dashboard in place it will be much easier to keep an eye on what is happening. We won’t need to look at it every day but a glance once a week should reveal any problems and then we can go to Google and ask for credit. I did that yesterday and hope to hear from them today? J