A simple survey of screen sizes

, , ,

I got a bit frustrated the other day. I'd come across yet another site that was designed for at least a 1280-width screen, meaning it wouldn't fit on my trusty 1024-width laptop and I had to scroll horizontally. "Yada yada, first world problems", I hear you say, but considering the small effort it takes to make a web page look good at different widths (and the abundance of RWD tutorials out there now), surely it's worth web designers making such tweaks. Besides, there's got to be many other users in my position, hasn't there?

I decided to find out, so I took a sample of around 5,000 unique visitors to my demo pages at people.opera.com/danield and noted their screen sizes based on the JavaScript screen.width and screen.height properties. Of course, this audience is going to be pretty techie and not representative of the world at large, so I did the same sampling at the same time on a long-running personal site of mine aimed at new dads — a pretty non-techie audience.

Ooh, pretty graphs!

The scatter plots below show the screen dimensions for each group of users — vertical scale is screen height and horizontal scale is screen width.

Scatter plots showing screen dimensions for a sample of technical and non-technical users.

Click the image to see the original graphs and their raw data.

Top 3 screen sizes

Technical users:

  1. 1366x768 - 18.1% of users
  2. 1920x1080 - 14.2% of users
  3. 1280x800 - 9.7% of users

Non-technical users:

  1. 1366x768 - 15.5% of users
  2. 320x480 - 14.7% of users
  3. 1024x768 - 12.5% of users

Observations

  1. The first thing that stands out is that both graphs have a sort of slanted V-shape. These are two rough lines showing screens in portrait and landscape format, with a slight variation due to differing screen ratios. This indicates non-technical users tend to have a higher ratio of portrait to landscape devices than technical users.
  2. Not surprisingly, there's a high concentration of large screens or multiple monitors among techies but this is clearly not representative of a wider audience.
  3. Non-technical users have less variety in the portrait format devices they use. It looks pretty much like iPhone-size (320x480) and iPad-size devices (768x1024) rule in this group. (Note I'm ignoring manufacturer and OS in this study.)
  4. Non-technical users have notably smaller screens than technical users, on the whole, and my beloved 1024x768 screen size is indeed very popular with non-techies. Admittedly that resolution could be a horizontal tablet or a laptop but I don't care. Jason Grigsby explains very well how the distinction between such devices is rapidly disappearing.

Takeaway

This may be just a small, simple experiment, but what lessons can we learn from it? Namely that devices in use in the real world are much more varied than we might think, and much more mobile-centric than I personally expected. As web designers and developers, we often socialise with a similar crowd of colleagues, friends and those we meet at tech events. It's been said before, but it's important we look out of this bubble when designing web apps and sites. Real users out there in scary non-geek land are the ones we should be thinking of and getting feedback from if we want our creations to reach their full potential.

HTML5 canvas performance: Drawing circles300 million users and move to WebKit

Comments

woj-tek Thursday, January 17, 2013 3:56:18 PM

Riiight... so from your study:
- majority of users have >1280 horizontal
- if not, it's probably a mobile user, which most likely is being served mobile version of the site;

granted that it would be nice to have flexible layouts looking good on all resolutions but taking all of the above into consideration: "yada yada, first world problems" ;-)

Martin KadlecBS-Harou Thursday, January 17, 2013 4:02:56 PM

This is why I'm really looking forward to moment when using Flexbox without much fallbacks will be normal smile

Dominykas Blyžėdymonaz Thursday, January 17, 2013 4:15:34 PM

Don't be fooled by the screen resolution - it by far does not mean the browser size. The bigger the screen, the higher the likelihood that people don't run the browser maximized. In fact, I have a colleague who, for some reason, prefers to keep the browser at roughly 800x400 (if not less) on a 1280x1024 screen.

I personally keep the browser at ~1366x768 even when I drag it out into the second full HD monitor.

Dominykas Blyžėdymonaz Thursday, January 17, 2013 4:18:08 PM

Ah yeah, there's also the case that I also have the Opera sidebar expanded at all times (with RSS for internal wikis, etc) on my work computer - although I try to keep the main area to at least 1024.

Alexeyalex-shpak Thursday, January 17, 2013 4:30:46 PM

+1 to above comment: with sidebar on left and tab bar on right I have 830px as reported by window.innerWidth on 1280x1024 display.

Adrian Roselliaardrian Thursday, January 17, 2013 6:27:45 PM

Way back in 2000 I tracked window sizes (viewport) against screen sizes for an article at evolt.org (also at http://adrianroselli.com/Articles/BrowserStatsII). I did this to remind web devs that window size and screen size don't necessarily equate, especially at higher resolutions. Last year I wrote up how screen size data is essentially meaningless for devs without any corresponding viewport data: http://blog.adrianroselli.com/2012/04/wheres-viewport-size-data.html

So, yeah, I'm the jerk posting links to his own stuff.

FransFrenzie Thursday, January 17, 2013 8:49:58 PM

I do not believe that I visited your page; however, I think the values you measured are effectively worthless for reasons already pointed out above.

>>> screen.width
3200
>>> screen.height
1200
>>> window.innerWidth
1013
>>> window.innerHeight
859


Incidentally, Firefox reports the size of the monitor it's on rather than the size of both monitors combined. This is on Linux.

--
[21:54:02.961] screen.width
[21:54:02.964] 1280
[21:54:06.816] screen.height
[21:54:06.818] 1024
--
[21:54:11.836] window.innerWidth
[21:54:11.839] 1280
[21:54:14.764] window.innerHeight
[21:54:14.766] 601


For me, screen.width and window.innerWidth will only potentially be the same for a horizontal resolution of 1024 or lower.

Another related matter: my mother does tend to have her window closer to the maximum size of her monitor, but typically zoomed in a little. Zoomed to 150% the values above become width = 676 and height = 573.

Constantine Vesnac69 Thursday, January 17, 2013 11:47:08 PM

When we measure display size - we forget about Win+Arrow (aka split screen) mode.
Often my browser dimentions are much lower than (a single) screen.

Originally posted by Frenzie:

Another related matter: my mother does tend to have her window closer to the maximum size of her monitor, but typically zoomed in a little. Zoomed to 150% the values above become width = 676 and height = 573.


Same with my parents.

..
But anyway, most important thing in this little survey is - "there is no average screen anymore". With all the so-well-known implications of that.

Daniel Davistagawa Friday, January 18, 2013 7:26:33 AM

Thanks for the comments, everyone.

Yes, obviously screen size is different to browser size. The point I wanted to get across is that there are a lot of real world users with smaller screens than us technical folks might expect. Consequently this means smaller browser widths, although of course there are numerous users with big screens who also have their browsers at smaller widths. In other words, web designers should not assume a nice wide space is available.

I should have made this clearer in my post. It's also demonstrated further in this blog post by @aardrian who looks at browser viewports rather than screen dimensions:
http://blog.adrianroselli.com/2013/01/my-viewport-sizes.html

FransFrenzie Friday, January 18, 2013 11:46:57 AM

Originally posted by Daniel Davis:

web designers should not assume a nice wide space is available.


Oh, I'll keep my opinion about those who assume such peculiar things to myself. *grins*

Adrian Roselliaardrian Friday, January 18, 2013 3:10:46 PM

Daniel kindly links to my blog post above, which also has Google Analytics code you can drop on your own site. However, if anyone has better code for Analytics, please let me know. The code I use does the job, but I am sure it can be tweaked.

FransFrenzie Friday, January 18, 2013 3:44:43 PM

Adrian Roselliaardrian Friday, January 18, 2013 4:20:19 PM

The script I use for GA is from http://beantin.se/post/354097397/track-viewport-google-analytics, which I note in my post, which appears to have borrowed the script for determining viewports that you link. I'm hoping for any newer scripts that might account for anything that has changed since that script was written.

FransFrenzie Friday, January 18, 2013 4:51:18 PM

It's a properly written script, so nothing needs to be changed. Also note that the table on that site was updated for IE9.

donibar angelBluei-bar Saturday, January 19, 2013 9:05:31 AM

I use 1366x768 px, it's good looking for anymore computing purpose.

praetor87 Saturday, January 19, 2013 5:45:07 PM

screen xml:id="_1024x576" count="1"

It's damn rare. Maybe i was that.

Martin RauscherHades32 Tuesday, January 22, 2013 10:50:00 PM

Could you redo the graphs with normalized resolutions? I.e. X*Y with X > Y, so for example 600x800 should be 800x600.

I think this would make sense, as you can always turn your display around...

Daniel Davistagawa Friday, February 1, 2013 12:27:29 AM

Interesting suggestion - I hadn't thought of that.
Displays can't always be turned around (e.g. my laptop and monitor) but it could be relevant for mobile. I think it's a bit out of scope for my simple survey but the raw data is linked to at the bottom of this page, for anyone who wishes to delve deeper:
http://files.myopera.com/tagawa/blog/screen-dimensions.html

netwolf Saturday, February 23, 2013 11:03:49 PM

^^ Too stupid to properly spam? Need some assistance?

Write a comment

New comments have been disabled for this post.