SEO is a hot topic these days. Optimizing your website to attract many people searching on popular search engines is important to attract people visiting your site.
But what about the other search, the one at your doorstep? Kaushik writes that up to 10% of website visitors use internal searches for navigation while only 2-5% use other means of navigation. In ISEO, internal search engine optimization you are able to change the content to be displayed for relevant keywords OR just tweak the indexing or search queries.
For a start you need insight into the searches performed by your visitors. Your web application might collect internal statistics (like drupal’s) but here I want to look at Google Analytics site search feature because it is already at hand in projects I am currently working on.
For an idea what to measure I started with Avinash Kaushik’s excellent book about Web Analytics. He proposes to gather the following insights (p. 193 ff.).
Evaluation Goals, gather information about …
- The overall usage of your search
- how many visitors use your search?
- how many searches are performed overall?
- Your sites top keywords (in contrast to the long tail)
- do they deliver adequate search results?
- if not, do people use synonyms you have not covered?
- do they look for content you don’t have
- are they missing shiny yellow buttons and search instead – so you want to rethink your layout
- Click density for search results, SERPs viewed for each keyword
- are relevant results listed at the top?
- Bounce rate from SERPs
- do visitors like your search results?
- Conversion rate for keywords
- measure success of internal search as a traffic channel
Now I have statistics that give hints how to optimize internal search and that help to estimate the success of this effort.
Possible optimizations
- Add popular keywords and/or metadata (synonyms) to content and consider it in search queries
- add content people ask for (or build “landing” pages)
- Manually mark relevant content for popular keywords as “editor’s choice” and display it on top of your SERPs before the normal search results
- Consider visits or visits for a certain keyword in your search algorithm and rank successful content first
In order to test the success of featured search results a site overlay on the SERPs showing clicks is very helpful.
When Google (re?)launched the internal site search analysis in Analytics Kaushik wrote a very nice blogpost about what can be measured and why. As Kaushik is the Analytics Evangelist of Google it is no wonder that the statistics provided by Analytics cover the insights he proposes in his book.
Not mentioned in the book is to look at where people used the search on your website. Analytics provides this report which is helpful to detect unsufficient content. The keywords searched for from a particular page should probably be covered in that page.
Internal Site Search Metrics in Google Analytics can be used to segment other traffic data, for example to evaluate how well your content fits customers of a certain traffic source. The keywords they use for search might be helpful to optimize landing pages.
Implementing Google Analytics internal site search feature
Enable the site search feature in a website profile under “Main Website Profile Information”. Currently Analytics only supports GET searches. Simply state the parameter(s) of your keyword and optionally a search category and you are done. You can tell Analytics to strip out search parameters of the url so traffic for
http://mydomain/search.php?q=foo
and
http://mydomain/search.php?q=bar
is counted under
http://mydomain/search.php
Google provides a guide to set up the internal site search feature.
For those who have problems setting up internal site search because their search uses POST or nice URLs (e.g. http://mydomain.com/search/cool+gadgets) I propose to write virtual urls for SERPs. You compile a GET url in your search application or in javascript that contains search parameters and categories, e.g.
http://skate-connection/search/node/training+beginner
becomes
http://skate-connection/search?q=training+beginner&cat=node
On SERPs urchinTracker() (or pageTracker._trackPageview() for the new ga.js) is called with a virtual URL:
urchinTracker('/search?q=training+beginner&cat=node')
or
pageTracker._trackPageview('/search?q=training+beginner&cat=node')
Now Analytics can evaluate the internal search.
This way you can also track AJAX searches. Just track the virtual url in your XHR callback.










Marc Zacher




Post a Comment