I have spent a week trying to see if I can write a nifty little DotNet site to help test out some of the SEO things I am doing.
One thing that I found out that was taking ages was to see where a web site is coming in the search results.
To give an example, Google analytics gives a wealth of information, and lets you know where people are coming to your site from, and all manner of things you can analyse. Also the Google webmaster tools are a fantastic wealth of information about how the bots are analysing the site, and what is right and wrong.
Of course this isn't what the customer cares about though. What the customer wants to know is when I type in "XXX" where does my site come up in the results? and when will it be in the top 10? This took a while to test.
I have already mentioned that one customer was http://www.professionalacademy.com and they wanted to be coming higher in the searches for CIM, CIM course, and marketing course so that they dont have to rely on Adwords.
Now to test this, they want to also know where they come in www.google.com, www.google.co.uk, www.yahoo.com, www.yahoo.co.uk, www.msn.com, and www.msn.co.uk
So to perform one test I would go into www.google.com type in CIM, get the results, and then do a search on "professionalacademy" to see how far down the list the website is mentioned. I then do it for the other 5 search engines, and then I have to go through all search engines again for the other 2 search phrases. That is 18 full searches and positions to find just to test 3 search phrases.
This just takes up far too much time, and most time is then spent on testing than on actual SEO. This is then made worse when there are 10 search phrases to test for all 6 search engine URLs.
So I went away and started a nice little ASP.NET project to do it automatically for me.
Here is a list of the problems and why no body else should really bother doing the same.
Google JAVA Search API
Firstly to mention the Google JAVA Search API. This is the replacement of the old Google SOAP API. Now if you could use the old SOAP API then you could do a search, get 100 results in as XML and search through them for your position. The trouble is however if you didnt get an API Key before December 2006 then you cannot get one now and are tied in to using the JAVA API. The JAVA API doesnt allow a return of 100 results to be read by your program. It shows 8 results that are displayed inside their own JAVA viewer plugin. I dont know if Google are trying to stop SEO people just running searches to test the position of their website but I cannot now find a way to do it, outside of the original manual way.
Yahoo search API.
There are 2 ways to search using the Yahoo way. A plug in SDK, or a webservice (WSDL). Neither way gives accurate results. After putting the search terms in, and playing around with settings and flags I just cannot get CIM to show professionalacademy in the same place as if I go onto www.yahoo.com and www.yahoo.co.uk and perform the same test manually.
msn Seach API
Microsoft have got a plug in SDK run by Microsoft Live which is similar to the Yahoo one. It also has the same problems. I have managed to match the results up on one www.msn.com world search. But I have also found that a world search on www.msn.com shows different results to a world search on www.msn.co.uk, the same as a uk search on www.msn.com will show a different list to a uk search on www.msn.co.uk
After looking into all of these problems a little bit more I was put in touch with somebody who had done testing of their own, and they came up with similar results to me. Their posting of the search results is here.
Now after it took me a day to write the testing web site but another 4 days to try and hone in the search results to what a search engine actually shows an average user, I am afraid that I have to come to the conclusion that these searching APIs arent really worth playing with. A customer will not believe your testing if what you say doesnt match what they will see when they go onto the website and type in a search term and check the position themselves. They will then rubbish all of the rest of the testing that these APIs bring up.
I now believe that perhaps if I can, I should try and enter the website search engines themselves. Perform the POST that a Submit button would do, and then parse the HTML that is returned. This would then match totally what a customer would see when they double check my testing.
I will keep a record on here if I can write such a test environment becaues I believe that this could become useful to others, and might be a software tool worth putting up on our website.
L.
No comments:
Post a Comment