Page Load Testing – Background vs Inline Images

I was recently working to speed up a website and was getting horrible load times for relatively small images (50k) off of a large amazon ec2 server. I decided to create two simple pages and test if using background-images was making a noticeable difference. My two test variants look like this:

inline image test page

Source for background image test page

You will notice that I kept the same number of elements (of the same type) on each of the pages. I left the source blank for the background image test variant to prevent polluting the test.

results: inline image test page

results: background image test page

The version with background images actually gave me a “DOM Ready” after .0225 seconds – while the fully loaded page load time was roughly the same as the inline image version. Could using all background images speed up firing of $.document(ready)? It turns out background-images are only downloaded after the element (containing div, span etc) is available. This prevents blocking from all the round trips required to get images.

Full test results can be seen here and here. Additional reading can be found here:

Track IP Addresses In Google Analytics

UPDATE: Apparently this is against Analytic’s TOS. So if you are thinking about collecting this data it might be wise NOT to.

Now that Google Analytics allows multiple custom variables it is much easier to track your users ip addresses. Simply insert the following code in your analytics tag:

pagetracker._setCustomVar(1, "IP", "<?php echo $_SERVER['REMOTE_ADDR']; ?>", 2);

To break down each variable:

  • SLOT – 1 refers to the Index or “slot” – you can have up to five slots
  • NAME – IP Address names the variable “IP Address” in Analytics
  • VALUE – The php script echos the visitor’s ip address as the value for the above named variable
  • SCOPE – The final “1” defines the scope of the variable. Possible scopes include:
    • 1 – visit level
    • 2 – session level
    • 3 – page level (default value)

There is a lag of about 12-24 hours before the IP addresses will show in analytics. To access this data click on Visitors->Custom Variables. A variable titles “IP” should appear in the list. Click on it to get detailed statistics. It should look something like this:


Google Analytics with IP Tracking


Go here to read more about Custom Variables in Google Analytics.

UPDATE: Apparently this is against Analytic’s TOS. So if you are collecting this data it might be wise NOT to.

The applicable section is:

“7. PRIVACY . You will not (and will not allow any third party to) use the Service to track or collect personally identifiable information of Internet users, nor will You (or will You allow any third party to) associate any data gathered from Your website(s) (or such third parties’ website(s)) with any personally identifying information from any source as part of Your use (or such third parties’ use) of the Service. You will have and abide by an appropriate privacy policy and will comply with all applicable laws relating to the collection of information from visitors to Your websites. You must post a privacy policy and that policy must provide notice of your use of a cookie that collects anonymous traffic data.”