Identifying IE browser usage correctly

How was IE browser usage being captured?
The user agent string that IE identifies itself with includes the name and version number. For eg, IE 7 user agent will include MSIE 7.0, IE 8 will include MSIE 8.0 and so forth.
The Splunk query that we used extracted this “name followed by version” token and derived usage statistics.

Why did my team re-analyze at the browser usage statistics?
For a particular client, we noticed heavy and consistent traffic from IE 7.Our Splunk query suggested around 550 users using IE 7, while the client claimed to have migrated to higher versions of IE.

What was the observation after analysis of raw HTTP headers sent by IE?
IE 8 onwards Microsoft started shipping every newer version of IE along with “compatibility mode”. If a page was working in IE 7 and breaks after IE 8 upgrade, user can switch to “compatibility mode”.
However, in this mode, IE 8 (and all higher versions) user agent contains name and version as “MSIE 7.0”.  Hence, the higher traffic identified from IE 7.More on this here.
Also, IE 8 onwards Microsoft started including the layout engine name and version (“Trident”) in the user agent. And thankfully, it sends that information irrespective of the mode IE is operating in.
More on this here and here.

How we changed our strategy to identify IE versions?
The Splunk query was modified to include a regex which can identify:
1.       MSIE – without any “trident” text in the user agent. This should give us all the “real” IE7 requests
2.       MSIE – mandatorily followed by “trident” text to indicate version greater than IE7 with or without compatibility mode.
If the request has MSIE 7.0 and Trident both, identify the IE version using Trident version number. Find that mapping here.

Did the browser usage stats change after this?
Yes! We found out that only one user out of around seven thousand production users, used IE 7 in last 5 weeks.  

Isn't Microsoft awesome?
I’ll leave that to your judgment. 

Comments

  1. This is very helpful, IE is really weird in its compatibility mode.
    I am sharing one of my experience
    I was testing my website in compatibility mode and I found different results in IE's compatibility mode and actual downgraded version.
    In compatible mode its working and its failing to load in downgraded version.
    My observation for testing compatibility we should test on actual downgraded version instead of in compatibility mode.

    ReplyDelete
  2. Nice read! My experience with IE compatibility mode has been real bad. It is never the same as the actual version!

    ReplyDelete

Post a Comment

Popular posts from this blog

Introduction to functional programming

Comparison operators in JavaScript