The easiest way to speed up your website is to invest in a better server.
The second best way to speed up your website is to not have 3 meg GIFs of cats on the page.
But what about after that?
I took a typical Travelfish feature story page, with a standard Adload and went through a series of steps to see just how quickly I could get it to load. You’ll see that the problem of a lagging load are quickly taken out of your hands.
All results are via the smart cookies at Pingdom
Load time 2.43 seconds
Pagesize 1.2 meg
Step 1: Remove all social sharing buttons
Theoretically effects ability of readers to share content on other networks.
Load time 3.54 seconds
Pagesize 1.1 meg
Step 2: Switch Adsense ads to async
No downside I’m aware of. That the code wasn’t already async was my oversight.
Load time 3.53 seconds
Pagesize 1.0 meg
Step 3: Reduce Jpg images from 80% to 60%
Slight change to image quality. More noticeably on retina screens. This was the biggest single improvement.
Load time 2.05 seconds
Pagesize .915 meg
Step 4: Split images across four S3 subdomains
This would have more of an effect if I had say a dozen images as there could be more parallel downloading. In this case a bit of a non issue.
Load time 2.01 seconds
Pagesize .916 meg
Step 5: Remove GAM to basic Adsense code
Removes ability for me to set an artificial floor on the ads displayed. Immediately started seeing weightloss ads. This change would have a revenue implication.
Load time 1.79 seconds
Pagesize 1.0 meg
Step 6: Dump to a plain HTML page
Removes ability to serve dynamic content.
Load time 1.15 seconds
Pagesize .918 meg
Step 7: Remove all ads
Obvious revenue implication!
Load time 0.715 seconds
Pagesize .614 meg
Step 8: Remove Facebook like code
Ego/social proof buttons no longer shown – this should have gone in step 1 – I forgot.
Load time 0.647 seconds
Pagesize .466 meg
Step 9: Remove Google search suggestion from the search box
Readers lose search suggestion.
Load time .416 seconds
Pagesize .361 meg
Step 10: Remove Google Analytics
Obvious loss of traffic measurements.
Load time 0.357 seconds
Pagesize .345 meg
So in ten steps I’ve improved load time from 2.43 seconds to .357 seconds — not too shabby. In the process though, I’ve removed all sharing, tracking and revenue opportunities. This is not exactly a win win situation.
Off the top of my head takeaways.
1) Any changes while still serving Adsense are difficult to measure as Adsense can serve wildly varying ads that will impact the Pingdom results. On one load I saw an Adsense cumulative load of around 700meg!
2) The “easiest” improvement was reducing the image quality. But there seems little point in doing this when Adsense can dump something massive in. The second easiest way is to remove ads. Great for readers — not so hot for the bottom line.
3) Google (and Facebook to a lesser extent) really need to consider adopting some of the “best practises” they keep advising everyone else to.