Load Time, the UX Factor: Facts and Measures
Published on JunĀ 21, 2007 (updated DecĀ 23, 2024), filed under development, performance (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 been working as a technical lead and engineering manager for companies youāve never heard of and companies you use every day, 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.)