A few months ago, shortly after Google announced the move to Secure Search for logged-in users, John Doherty and I spent a Saturday defiantly kicking around ideas on how to get our referrer data back. The result was John’s SEOMoz post entitled “Getting Rankings into GA using Custom Variables.” John explains some applications for taking educated guesses on what the referrer might have been based on rankings. However at SMX West I talked about a more exciting application of capturing this data – Dynamic Messaging Based on Ranking to Improve Conversions!
Although, in most cases, being in the coveted number one spot will get you the most traffic for a given keyword, it is not always the best position to maximize conversion especially in e-commerce spaces. People are naturally inclined to shop around and make sure they are getting the best deal, so they are very likely not to convert on the first result that they click. In fact, as they click through different results in a given, SERP, their need state in the customer decision is very likely to change.
This is a compelling idea to consider since typically SEO classifies keywords as just informational, transactional and navigational. Those classifications are quite cut and dry and don’t leave much room for a keyword to serve more than one purpose. The simple fact is that oftentimes keywords that are informational can become transactional and vice versa due to the general ambiguity of language. As such the idea that being deeper in the funnel on the same keyword is not one that is typically considered.
The Customer Decision Journey
The Customer Decision Journey as it applies to SEO is traditionally thought of as happening across multiple queries. It is accepted thought that users typically start from a broad informational query like [flowers in Philadelphia] which then grows into a transactional query like [buy flowers in Philadelphia]. However, that is not always the case since a query typically classified as just informational such as [flowers in Philadelphia] could also be classified as the Awareness, Familiarity or Consideration need states in the Customer Decision Journey. Similarly [buy flowers in Philadelphia] can be both the Consideration and Purchase need states. Therefore a user potentially changes need states as they move through the results of one keyword.
The first result may educate the user about the product or service. At that point they are already familiar enough that by the time they view the third result they may enter the Consideration phase and finally be compelled to Purchase.
So if you track your rankings in analytics, you can truly understand what need state your user is in at each given position and also where you convert best.
You might be thinking “But rankings are different for everyone!” You’re absolutely right! That’s exactly why we want to track them against conversions and not just relying on logged out, impersonalized, fresh searches that every rankings tool attempts to mimic. From there we can then take action.
Obviously you’re not going to fire up Scrapebox and get a bunch of spammy links to make your site drop in the rankings, so what can we do? By now you should know enough about me to know that I’m about to show you how to do magic!
The solution is to change the messaging of the page based on the ranking. There’s a variety of ways to do this, but let’s borrow from the Groupon and Progressive business models here. ProTip: Make sure you cookie the user for consistency. Otherwise they will see the same messaging or conflicting messaging based on ranking shifts and the effect will immediately be lost.
The Time Constraint
If you don’t convert well in position #1, this is a good opportunity to use employ the Groupon model or Time Constraint Messaging. Tell the user that this deal is only available for the day 30 seconds so they are far more hesitant to leave the page and go check out other results.
If you don’t convert well in position #2 then it’s clear that the user is shopping around so it’s a good time to employ the Progressive Insurance model or Challenge Messaging and show price comparisons to keep the users on your site. This is a good place to use the “Lowest Price Guaranteed” messaging that hotel chains use profusely.
If it ain’t broke don’t fix it. In positions where the site converts very well, do not employ anything extra as there is no reason to. However there is definitely an opportunity to A/B Test messaging based on rankings to see what can boost conversions so certainly do that!
Updated rankingsPush() Code
I’ve updated the original rankingsPush() code in three ways.
- It now will check for rankings from all Google properties, not just Google.com
- It now uses the Session-level scope rather than the Visitor-level scope because that caused some issues with data capture in Custom Variables across multiple visits. See Adrian Vender’s insightful comment on the original post for more information.
- It now returns the ranking number for further use throughout the page.
You can find the code in my Github Repository.
Running this function you now have your rankings in real-time so you can use them with jQuery UI to progressively enhance the page. For those that don’t develop, you basically want to have a section above the fold that reacts based on this number, so you run the function at load and when this function gives you the number then your site shows the corresponding messaging.
The site should be designed in such a way that the absence of this messaging is not vital to the page and something fills in that spot anyway. If you are worried that this is cloaking, let me assure you that it’s not. Implemented properly Google would consider it just progressive enhancement which they do support.
That’s all I have for you this time folks, just another quick, easy and powerful way for you to get the most out of your optimization efforts. As always feel free to shoot me a tweet and let me know how it goes for you or if you need help! Aside from that check me out at LinkLove London on March 30th at the Congress Centre!
If this is the first time we’ve met, I’d suggest you check out some of these posts as well: