Load Time, the UX Factor: Facts and Measures
Published on Jun 21, 2007 (updated Dec 23, 2024), filed under development (feed). (Share this on Mastodon or Bluesky?)
This and many other posts are also available as a pretty, well-behaved ebook: On Web Development.
This post is partially outdated.
Load time of websites seems to remain our industry’s stepchild: One script library here, an unoptimized logo there, plus a complementary video and a 75 KB analytics script on top, voilà , “take this, visitor, 540 KB pleasure for you while I don’t care that these 540 KB will take 1 minute and 18 seconds of your time to download” (based on an optimal 56 kbit/s connection).
The vision is real-time surfing, not spending bandwidth improvements. Here are some things to consider for fast websites.
Facts
10 seconds is about the limit for keeping the user’s attention focused on a dialog, according to Jakob Nielsen’s and other studies. This still holds true, and you can compare this with your own reaction to wait. Consider it boring subjective time, and you’ve got a mix that lets users leave, quickly.
At the moment, almost 20% of U.S. households still use a narrowband Internet connection, according to Leichtman Research Group (via WebSiteOptimization.com).
The average web page size increases by 20 KB per year, according to this author’s empirical data [I don’t know what I meant here]. Users keep on being forced to wait, albeit slightly less due to increasing connection speeds.
Measures
First, please monitor your site’s load time.
Most importantly, develop and adhere to a philosophy that keeps things simple and that emphasizes (less to no) latency as an important UX factor. People don’t like to wait, and bad performance is an attribute and problem of your website, not of the Internet.
Use HTML elements according to their semantics. Switching from table to CSS layouts might save 50% to more than 60% HTML file size. (Expect easier site maintenance, too.)
Question all page elements. Is it really necessary to include your full bio with high-res photographs on every page (nothing against photos, quite the contrary)? Do you really need these (undesirable) “Valid…” buttons? Do you really need that long Delicious bookmarks list in the sidebar? And so on.
If you’re unsure: Test your site with users (especially when you don’t usually do any testing); in case of emergency, ask a friend or family member to contact you via your site or to comment on a post (and sound the alarm when they cannot because of the omnipresent blogroll). Guerrilla testing is better than no testing.
Now that you abandoned certain page elements, optimize and compress the rest using a
Enable and optimize caching, though I’ll hand you over to Mark Nottingham and the (somewhat strange) Vancouver Webpages now.
You might want to check your website’s performance again and probably continue reading over at Christian Heilmann and Martin Kliehm, too. Load time has an impact, and there’s almost nothing more beautiful than a website that loads quickly.
(In case you wonder about this site’s performance—its server’s probably several thousand kilometers away. Let’s track this, too.)
Update (August 18, 2008)
I cannot but point out two recommendable books on this matter as well: On the one hand the “classic” from Steve Souders, High Performance Web Sites (I should write more about the book), on the other hand recently published Website Optimization by Andy King, who shares more performance tips on the book website.
About Me
I’m Jens (long: Jens Oliver Meiert), and I’m a web developer, manager, and author. I’ve worked as a technical lead and engineering manager for small and large enterprises, I’m an occasional contributor to web standards (like HTML, CSS, WCAG), and I write and review books for O’Reilly and Frontend Dogma.
I love trying things, not only in web development and engineering management, but also in other areas like philosophy. Here on meiert.com I share some of my experiences and views. (I value you being critical, interpreting charitably, and giving feedback.)