Custom Timing Data

Subscribe to our monthly newsletter to get the latest updates in your inbox

Sometimes Less is More

Google Analytics allows for custom timing data to be collected and analyzed through a feature called User Timings. Adding real-timing numbers to your business discussions will help you make better decisions. Below are two examples where custom timing data and subsequent optimization helped a business’s bottom line. The data was collected through Google Tag Manager and dataLayer pushes but can also be collected through a direct Universal Analytics (analytics.js or gtag.js) implementation.

AJAX Component Performance

AJAX components have become more popular over time and provide visitors with useful or contextual functionality. For example:
  1. A widget on a site’s home page allows visitors to perform tasks immediately such as select flight dates.
  2. Display product inventory on a PDP.
  3. Calculate shipping without reloading a page.
Like any part of your website, an additional page component adds load time, is now another piece to maintain, and increases demand on your web server & databases. And just like any part of your website, optimization over time is important. Below is a screenshot from a report that shows that a homepage ajax component loaded over forty thousand times in one day. A timing hit was sent to Google Analytics after the component was loaded and ready.     The timing data can be further broken down by variable and label. In this case, the variable was to indicate the load was complete and the label was the version of the AJAX component.     The reduced load time for version 1.6 was the result of improvements to the AJAX component at many levels: frontend, backend, and hosting. While it was a lot of work, the end result is clear and measurable: a faster loading component means visitors get a working page faster and are able to begin the task at hand. It wouldn’t be difficult to complement this data with other reports that attribute increased component usage and, ultimately, business success to the version change.

Suggested dimensions for deeper analysis:

  1. Browser
  2. Browser version
  3. Operating system
  4. Device type
  5. User type - repeat visitors will have cached data and faster load time.
  6. Custom dimensions such as Page Type or Customer Type.

Form Completion Time

Forms are a surprisingly under-optimized asset and often lead to heated debates. Is it too long? Are we asking the right questions? Are we losing an opportunity to get more information? Are we annoying the user? How long does it take to complete? This blog post can at least help you with the last question! My standard approach is to record the time when a visitor first interacts with the form (any field) and then record the time when they hit submit. The difference between the two times is the value I send to Google Analytics. More technical details on this later. The below screenshot shows a Contact page form was submitted 4,861 times in an average time of over seven seconds.     Again, the timing data can be further broken down by variable and label. In this case, the variable was to indicate the form was submitted and the label was the version of the form.     The reduced completion time for version 2.2 was the result of better example values in the form fields. Over a second was reduced in form completion time, and the conversion data confirms visitors completed the critical business goal at a better rate. At the end of the day, marketing efforts are showing a better ROI because of a faster and easier form experience. Suggested dimensions for deeper analysis:
  1. Browser
  2. Browser version
  3. Operating system
  4. Device type
  5. Marketing source—for example, is paid traffic converting at a better rate or is it wasted money?
  6. Custom dimensions such as Customer Type.
A few thoughts:
  • Your developers can help you with the time recording and difference measurement.
  • The completion time can also be sent as a custom metric for use in other reports.
  • A similar setup and analysis could be done for Average Checkout Complete Time, starting from viewing the Shopping Cart to loading the Checkout Complete page.
    • Your developers would likely need to measure the time on each page and store it in a cookie or preferably Web Storage.


There are some sampling considerations with User Timing data. You may want to measure timing on several fronts but will have to keep the daily limits in mind. The data can also be throttled at the collection level with either Google Tag Manager or directly coded Universal Analytics (analytics.js or gtag.js). One possible workaround would be to send the timing data as Events instead of Timing hits.  Note that the Events will count toward your overall property or view hit limit and won’t have the same out-of-box metrics and calculations.  

Other Uses

Another good use of this approach would be to measure load time for mobile apps or screens within the mobile app. Speed is definitely a very strong factor in mobile app use and growth so measurement and analysis will go a long way.  


Sometimes less is more and especially with web & mobile, less loading or engagement time can mean more business success. Customers are already at your website or app and know what they want. Getting out of their way with a faster experience will only help!