Thursday, July 29, 2010

How web beacons perform web analytics data collection

How does web beacons work? if you have asked the question any time and would like to know still, read on !

If you are looking forward to know how does an analytics tag work or what is a web beacon, this post might help you.
A web beacon is usually a 1X1 pixel transparent image which gets embedded into a web page or an email message which acts as a way to exchange data between the client and the web analytics data collection server.

Lets see how web beacons really work and transfer data to the server.

Web beacons through javascript tags

The usual web analytics data collection method being used is by means of javascript tags. Each web page which need to be analyzed or tracked contains few lines of javascript code. Following is an example of statcounter code (which is taken out of this page itself, as I use statcounter as one of the web analytics tool. Its free!!)









Let me explain what this code does.

In first 4 lines of this code, few statcounter account related variables are being initialized (such as sc_project, sc_invisible etc). The last part of the code is inclusion of an external js file from the statcounter.

The code from statcounter does many things. For example it finds out the referring URL to the current page you are viewing, the page’s URL, title of the page, your browser’s resolution, your IP address etc etc).

Now comes the web beacon. The web analytics data is collected by the script from statcounter. And at the end of this initial process of collecting information, the data need to be passed to the statcounter server. This is achieved by use of a web beacon or image plug. An image request URL is formatted appending all the variables and values which need to be passed. Javascript outputs an tag with this URL as the src attribute. When the browser renders this image, the script at statcounter.com collects the data present in the query string and sends out the 1X1 transparent image as the response (it was a request for an image – remember that).

Web beacons as part of a mobile specific web page

You would have seen a

Intro into Web Analytics

What is Web Analytics ?

Web Analytics refers to collection and analysis of website visitor activity data, to derive at key business decisions, corrective actions etc.

First and foremost thing in web analytics is the user data, how it is collected etc. There are various ways the user data is collected (Mind, each view of a page like the one you are reading now is being recorded by web analytics tools. I am using tools called StatCounter and Google Analytics at the moment).

How Website Visitor Data is being recorded ?

There are various methods which can be used to collect the visitor activity data in a website. The oldest among them is the server logs. A webserver keeps a log of the visitor requests, pages etc, This is the raw form of web analytics data.

The most commonly used method of web analytics data collection method as of date is by using web beacons. A web beacon is nothing but a transparent 1X1 image pixel which gets embedded into each web page being tracked. I will explain how web beacons work in detail in another post.

The most sophisticated method of website visitor data capture is using packet sniffers. A packet sniffer sniffs the data packets being sent from web server to the client system and records it.

Why you need Web Analytics ?

Whether big or small online business taken into consideration, the common objective would be increasing the sales/revenue through the online medium. In this point, it is very much required that the business is aware whats happening in the website, how useful is the website to the users, is the number of visitors increasing and how many leave the site without completing the enquiry/sales section and why. Web Analytics can provide answers to all of these and can also give you business recommendations on the corrective actions if necessary.

Web Analytics: Understanding the Uniqueness of a Visitor with Web Cookies and IP Addresses

Web cookies or HTTP cookies is an individual unique id or value stored by a user’s web browser. Web cookies can be used for verification/authentication, storing site preferences, shopping cart contents, the identifier for a server-based session.web analytics, visitor analytics, google analytics, cookies

Cookies consist of one or more individual unique id or value pairs containing bits of information, which may be encrypted for information privacy and data security purposes. Cookies used to maintain data related to the user during navigation, possibly across multiple visits. The cookies are sent as an HTTP header by a web server with a unique session identifier. The web browser will send back that session identifier unchanged each time it accesses that server.

Cookies used to track internet users’ web browsing habits. This can also be done in part by using the IP address of the computer requesting the page or the referrer field of the HTTP header, but cookies allow for a greater precision. For example, if a user requests a page of the site, but the request contains no cookie, the server presumes that this is the first page visited by the user; the server creates a random string and sends it as a cookie back to the browser together with the requested page. From this point on, the cookie will be automatically sent by the browser to the server every time a new page from the site is requested; the server sends the page as usual, but also stores the URL of the requested page, the date/time of the request, and the cookie in a log file. By looking at the log file, it is then possible to find out which pages the user has visited and in what sequence.

Without cookies, each visit to a Web page or part of a Web page is an inaccessible event, mostly not linked to all other views of the pages of the same site. The cookie setter can specify a deletion date, in which case the cookie will be removed on that date. If the cookie setter does not specify a date, the cookie is removed once the user quits his or her browser. Cookies can also be limited in scope to a specific domain, sub domain or path on the web server which created them.

web browsers cookies, web servers, visitors loyaltyIf more than one browser is used on a computer, each usually has a separate storage area for cookies. Hence cookies do not identify a person, but a combination of a user account, a computer, and a Web browser. Thus, anyone who uses multiple accounts, computers, or browsers has multiple sets of cookies. Likewise, cookies do not differentiate between multiple users who share the same user account, computer, and browser.

Users may be tracked based on the IP address of the computer requesting the page. This method has been available since the introduction of the World Wide Web, as downloading pages requires the server to know the IP address of the computer running the browser, if any is used. The server can track this information whether or not cookies are used. However, these addresses are typically less reliable in identifying a user than cookies because computers and proxies may be shared by several users, and the same computer may be assigned different IP addresses in different work sessions.

Tracking by IP addresses can be reliable in some situations, such as the case of always-on broadband connections which retain the same IP address for long periods of time, so long as the power stays on. Both cookies and IP addresses have their strengths and weaknesses for determining the uniqueness of a visitor. It is impossible to be 100% accurate Analysis.

Wednesday, July 28, 2010

Cookie basics

What is a Cookie?

Cookies, HTTP Cookies, Web Cookies or Tracking Cookies are small pieces of data stored by a website on client system. This data is sent back to the web server which initially set the cookie for any additional hit to the web server.

What are the uses of cookies ?

Cookies are majorly used for user authentication and carrying the active session across different page visits by a visitor in a visit session.

Say user A has a login at xyz.com. There is a login page where A enters his login details and goes ahead browsing pages in XYZ.com. Now cookies can be a method by which xyz.com distinguish user A as the same person visiting different pages at xyz.com.

Web analytic tools use cookies to calculate unique visitors.

How a cookie is set ?

Cookies can be set by javaScript or any server sided script.

JavaScript cookie example

Setting a cookie
document.cookie = “COOKIE NAME”+”=”+”COOKIE VALUE”+ “;expires=”+”EXPIRY DATE”+”;domain=”+”DOMAIN”;

COOKIE NAME is a string as a name for cookie, Value is a piece of data, EXPIRY DATE is created by using Date.toGMTString() method of javascript. Expiry value and domain are optional.

Reading a cookie

Reading a cookie is not straight forward. All the cookies set for a domain are available in document.cookie variable as a string. We need to have utility functions to read a specific cookie.

PHP Example

Setting cookie
bool setcookie ( string $name [, string $value [, int $expire [, string $path [, string $domain [, bool $secure [, bool $httponly ]]]]]] )

Reading a cookie

The cookie is directly readable from the $_COOKIE global variable as $_COOKIE[$name]

Same origin policy related to browsers and cookies

In simple terms the explanation of same origin policy would be, if xyz.com sets cookie, only javascript code in a page at xyz.com or a server sided script at xyz.com can only read the cookie. This is a browser policy. If www.xyz.com sets the cookie, the same way only www.xyz.com page js code / server sided script can only read cookie.

Same cookie over all subdomains

If you would like to share the same cookie data across all subdomains of a site, say xyz.com, the domain parameter in a setCookie function should be .xyz.com (dot at the start of the base domain name. No www’s in it !!)

References

HTTP Cookie on WikiPedia

Wednesday, July 21, 2010

31 Ways to Promote Your Blog for Free

LINK BUILDING:

1. Exchange links with other bloggers
2. Use BlogRush
3. Submit to RSS directories
4. Submit to blog directories
5. Submit to general directories
6. Start a 2nd blog and link to yourself
7. Create and give away blog themes (with a link to your blog in the footer)
8. Create free plugins
9. Create link bait
10. Participate in blog carnivals
11. Comment on DoFollow blogs
12. WordPress Backlinks Plugin (link removed due to possible security issues)

COMMUNITY:
13 Join communities at MyBlogLog
14 Join communities at Bumpzee
15 Join communities at Blog Catalog
16 Start a community at any of these sites
17 Comment on other blogs in your niche
18 Email your friends and contacts about a new blog post that may interest them
19 Email your readers to say “thank you”
20 Email other bloggers to introduce yourself
21 Link out to other blogs

SOCIAL MEDIA:
22 Digg
23 del.icio.us
24 StumbleUpon
25 Reddit
26 Netscape
27 Magnolia
28 MySpace
29 Facebook
30 YouTube FORUMS:
31 AuthorityBlogger

You can view also:
http://writetodone.com/2008/11/06/branding-101-how-to-promote-your-blog-like-the-big-guys-do/
http://www.seomoz.org/ugc/20-ways-to-increse-blog-visibility-by-lijo

Tuesday, July 20, 2010

Website Usability Checklist

Search engine optimization and other online marketing techniques get targeted traffic to your website. As per research, a visitor spends an average of less than 8 seconds on the web page. So, you have just less than 8 seconds for the visitor to do what you want them to do. Or else they will go away. So, you need to also pay proper and more attention how the website is treated by different visitors and the major portion of your visitors find the website navigation easy and comfortable. They should be able to use the site easily and should understand the content.

This is a simple usability checklist for the website.

1. Have the navigation links easily visible. Visitors should know where they are and should easily find out where they have to go next. Also, they should know what all additional pages are there apart for the page they are on.
2. The navigation links should be consistent and at the same place on all the pages. Visitors may get annoyed of the links appear and disappear unpredictably. The best practice is to use include files for the navigation system. This will ensure the changes made to this are effected on all the pages.
3. Use appropriate anchor text. As the anchor text is important for search engine optimization, do not stuff them with main keywords without considering to which page it will lead to after clicking. Make the anchor text more meaningful at the same time so that the visitor will know where they will be moved to on clicking. Don’t keep them guessing as to where the link is going to take them.
4. It is a normal practice to highlight the anchor text so that it conveys the message that the visitor has to click it. Usually, the anchor text is underlined or used in a different font or bold font. It is always a best practice to use CSS to emphasize the text links.
5. You can use JavaScript or other scripting language to create menus for the navigational links. Just take care that the visitor can easily navigate through the link structure in the menu.
6. Home page link is a must in the list of navigation items you have. Also, the logo should always be linked to the home page.
7. Include site search box on every page of the website. If the visitor can’t find what they need, they should be easily guided to the search box. Moreover, if you refer the search keywords, you will know what information is searched more number of times and what should be made easily available to the visitor. Thus, prominently displaying the search box will help in improving a website.
8. Always use breadcrumbs to let the visitor know on which page he is on and how they have navigated to the page.
9. Always have your main content and call-to-action lines on the top or above the fold. Do not expect the visitor to scroll down, read and then click.
10. Use proper background color and font color so that it gels with your brand and branding. Moreover, the content should be easily readable by the visitors.
11. Always use ALT and TITLE attributes to all images. Some browsers may block images so in this case the visitor can read the ALT text.
12. Have a custom error page that will help a visitor when clicked on a broken link or type the address incorrectly. The custom error page should be in synch with the website design and structure.
13. Have a feedback form to always dope you with you information that will help you to increase the performance of the website. Try to improve the usability depending on the feedback you receive. The users of the site can tell you exactly how they are feeling about it.

Your website is designed just not for you but, for the ones who use it – your visitors who are your customers. A site that confronts to users’ expectations, makes them more comfortable and more compelling to visit again. Good usability is always critical to website’s business.

More Than 100 Free Twitter Tools For You

A list of more than 100 Twitter tools which can be used for an easy tweeting around and keep you updated of the tweets. I have been spending lot of time to keep it updated. You may find some dead links, errors or typos which are unintentional. Please check the tools for credibility before using them. Also let me know if I have missed anything so that the same can be added or updated here.
1. Alex King Twitter Tool – Takes your tweets and posts them to your Wordpress blog
2. BiggerTwitter – Allows you to post longer messages, but uses a link in the tweet
3. BigTweet – Add it as a favorite and IE and send a tweet from any webpage. You can send the url or use the in-built url shortening service
4. Blackbird – It is a Twitter client for Blackberry smart phones
5. Blogo – A blog editor which also helps in search in Twitter. It also updates the status whenever you post a new article
6. CheckYesOrNo – Frame Yes/No poll questions and share it with your friends on Twitter to answer the question
7. Cullect – Helps you find and share. It is a collaborative feed reader that can be used for various accounts. You just need to sign in with your credentials say – your blog, Friendfeed or Twitter
8. Feedalizr – A desktop application that allows to share photos/videos, interact with Facebook and Twitter friends and be updated with the status messages of friends
9. FeedTwit - Get your Twitter @replies as text messages and read your RSS feeds as direct messages in your Twitter account.
10. Flotzam – A desktop application to share photos, tweets, Diggs, pokes and feeds
11. Foodfeed – Share your eating habits. Just point your tweets @having and share with other like minders
12. FreeTweets – Collection of good Twitter backgrounds
13. FriendorFollow – Know who you are following and know those folks that are not following you and vice versa
14. FuelFrog – Keep a log of your fuel and mileage. Compare your mileage with others in your area, or with the same car
15. Green Tweets - Uses semantic language analysis to identify tweets pertaining to green and environmental topics from the public Twitter stream
16. gTwitter – Is a Linux client for reading and posting to Twitter.com web service
17. iTweet – iPhone interface for Twitter
18. Jargong – Is a client application for most of the social networking, instant messaging and feeds. You can also update the tweets from this application
19. jTwitter – A mobile tool to enter updates through your mobile phone
20. KipFolio Widget – Twitter widget for KipFolio
21. LoudTwitter – Helps you to transfer your tweets directly to your blog
22. MoniTwitter – Receive updates of website via Twitter
23. PingTwitter – Add new posts of your blog as status update in Twitter
24. PocketTweets – A web-based Twitter client for Apple iPhone
25. Pwytter – Python Twitter client which can support Asian characters
26. Quotably – Nice tool. Follow the Tweets of a particular account in threaded style
27. SayTweet – Dynamic mashup to have your own pic as a badge with your status update
28. Shareaholic – Firefox plugin to share the webpage via Twitter
29. SnapTweet – Share Flickr photos on Twitter too
30. Spaz – A Twitter client for Palm Pre, Windows, Mac and Linux
31. Snitter – A desktop Twitter client built on Adobe AIR
32. StrawPoll – Tool to create polls in 140 characters
33. TeleTwitter – Open source Twitter client for Windows
34. Terraminds – Search tool to search for users and tweets
35. TopNewsTrends – Combines Google trends data with Twitter search
36. TrackThis – Track your UPS, FedEx, DHL, USPS via Twitter or Facebook
37. TreoTwit – Check and update your Twitter right from your Treo
38. Triqqr – A windows tool to submit tweets and to view profiles
39. Twappi – Provides the Twitter mood
40. Tw-autocomplete – Simple add-on for Firefox that adds auto-complete support for @-messages and DMs
41. TweetBar – Use Twitter to Firebox browser
42. TweetBurner – An url shortening service, which also provides the clicks and referrals details
43. TweetCloud – Know what is buzzing around in the twitter world
44. Tweetdeck - Adobe Air desktop application enables you to split the main feed into group specific columns allowing a broader overview of tweets
45. Tweeter – A java desktop client for Twitter
46. Tweetfeed – As name suggests. Helps in customizing the tweets online so that you can track the ones which are important to you
47. Tweetlater – Sends automated DMs to your followers
48. TweetMyPC – to connect your PC remotely to lock or shutdown, using a mobile device or another internet connected PC just by sending a tweet
49. Tweetr – A cross platform tool to submits tweets
50. TweetScan – Search tool. Search as per keyword or user name
51. TweetWhatYouEat – A food diary online and track your weight. (Hey… should help in burning your calories as well)
52. TweetWhatYouSpend – Cash tracking made simple through Twitter. Built cash journal and export to excel or csv
53. Twellow – A directory of Twitter users
54. TwerpScan – Keep an eye on growing list of friends and followers
55. Twessenger – Updates Live Messenger status as per the latest tweet
56. Twhirl – A desktop client connects you to multiple accounts – Twitter, FriendFeed, seismic and Iaconi.ca
57. Twidget – A dashboard widget that allows to update status
58. Twidroid – Twitter client for android mobile phones
59. Twiggit – Is an automated service that lets your friends on Twitter know what articles you Digg
60. Twinja – A desktop Twitter client (AIR) application that provides all the features of Twitter
61. Twinfluence - a simple tool using the Twitter API to to measure the combined influence of twitterers and their followers, with a few social network statistics thrown in as bonus
62. Twinkle – Location-aware network for iPhone and iTouch
63. Twippera – Opera browser plug-in that can update and view tweets
64. Twit4Live – Sets Live Messenger status as latest tweet
65. Twitbar – Post tweets from the GNOME deskbar
66. TwitBin – Firefox browser add-on to send and view tweets
67. TwitBox – Desktop client to view and submit tweets, supports multiple accounts
68. TwitDir – Allows user to search for users by name, location, or username
69. Twitgit – Submit and view tweets using the dashboard
70. Twitkit – A Twitter sidebar for Firefox. It has a 6-section interface, using tabs to separate content
71. Twitpic – Lets you share photos on Twitter
72. Twitr – Claims to be the #1 Twitter directory
73. Twitscoop – Twitter interface to send tweets, find friends, search and follow what is buzzing around in the twitter world. You can also save searches for future reference
74. TwitSeeker – search engine to find Twitter users as per their tweets and not as per their profile
75. Twitter100 – This app creates a collage of all your friends you are following, so that you do not miss tweets of your special friends you are following
76. Twitter For Busy People – Same as Twitter100. But, if you are following too many friends then this is better
77. Twitt(url)y – A tool to track the URLs people are talking about on Twitter
78. Twittelator – Complete iPhone Twitter client
79. TweetAhead – Schedule tweets to be posted ahead of time with a simple dashboard widget
80. Twitter CLI – A windows tool to post tweets using the command line
81. Twitter for Vim – A Linux tool to publish tweets right within Vim
82. Twitter.el – A Linux tool to publish tweets while in Emacs
83. Twitter100 – Use it to view 100 tweets at a time
84. TwitterBar – Post to Twitter from you Firefox address bar
85. TwitterBerry –Twitter for various BlackBerry devices
86. TwitterBuzz – Find out what URLs are being most linked to on Twitter
87. TwitterCard - Create a 125(w) x 125(h) pixel banner ad to put on your blog or website and display the current status
88. Twit.el – A linux tool that allows publishing of tweets in Emacs
89. twitterfeed.com – A tool which uses the latest blog feed as tweet
90. TwitterFox – Firefox extension that can publish and view tweets
91. Twittergrader – Provides you a grade based on the power of your Twitter profile
92. Twitterholic – Shows the top users and accounts on Twitter
93. Twitterless - Notifies you when somebody stops following you and lets you know who it is and the follower history is graphed out over time
94. Twitterlex – Mac OS X dashboard widget that shows the last 30 tweets which refreshes periodically
95. Twitterlicious – Update Twitter status, check replies and direct messages
96. TwitterLinkr – Collects the links posted trough Twitter
97. Twitterlocal - A tool to filter tweets based upon users’ location. It also provides the searches in RSS or XML file
98. Twittermaps – A mashup technology that allows Twitter users find each other using Google maps
99. Twitteroo – A windows tool to update and view the status
100. Twitter.PollDaddy.com - Create Polldaddy polls and post them directly to your Twitter stream
101. TwitterPost – A Mac client that submits tweets, shows your current iTunes track in your feed and more
102. Twitterrific – Mobile and desktop tool to post and view tweets
103. Twittersearch – Search Twitter and tweets using keywords
104. Twitter SPY - Displays the Twitter public timeline
105. TwitterSync for Yahoo – Syncs Twitter status with Yahoo Messenger status
106. Twittertise - Allows you to schedule your tweets in advance and track the clicks on URLs you tweet
107. Twittervision – See where in the world people are submitting tweets from in real-time
108. TwitterYM – Updates the Yahoo Messenger status taking the latest tweet
109. TwitThis – Allows your website/blog visitors easily share a page or post via Twitter
110. TwittyTunes – A FoxyTunes (Firefox extension) add-on that posts what you are currently listening to
111. Twitux – A Twitter client for the GNOME desktop
112. Twitwall - When it’s too long to tweet, but too short to blog, just TwitWall it! TwitWall is the easy-to-use, quick-to-blast-out blog companion for Twitter
113. Twitxr – Share pictures from your mobile phone. Automatically publish them on social networks and photosharing sites
114. Twonvert – Easily converts your tweets into SMS shorthand language and allows you to say more with the 140 characters
115. Twonvo – Threads your tweets
116. Twuzzer – Twitter / GoogleMaps mashup.
117. Useqwitter – e-mails when a twitter stops following you after a certain post
118. What’s Up? – Gadget that allows you to see latest tweets from your friends
119. WildSets –Twitter app for mobile phones
120. yammer – A similar mico-blogging software to Twitter. Can be used by enterprise companies and can be used as an intranet solution
121. Yoono – Receive alerts, update your status or message your friends in your browser sidebar. No need to switch from one site to another or from your browser to a desktop app. Also integrates other services: Facebook, flickr, friendfeed, major IM services
122. ZenTwitter – A GUI frontend for Twitter using zenity and curl

I thank Shannon. Most of the list is from his page. All credit goes to Shannon.