Blog Post

Catchpoint Insights: Capturing multi-dimensional data for more insightful performance data analysis

Catchpoint’s Insights feature offers the opportunity for our customers to gather insightful performance data for rich, multi-dimensional analysis to improve website performance. Find out more.

Metrics, metrics everywhere... a gauge here, a counter there... milliseconds, percentages... a list of variables running into pages... what is fast, what is slow...?  how on earth is one to know...?

Catchpoint’s Insights feature offers the opportunity for our customers to gather insightful performance data for rich analysis. In this blog, we’ll break down some examples and discuss why it matters.

Today we have all manner of variables around us, of differing gravity, that each have their own individual purpose in the measurement of web performance. Some of these are atomic or independent metrics, whereas others are aggregated or dependent. An important example of the latter is “Time to First Byte”.

Let’s break down TTFB

Time to First Byte, more commonly called TTFB, is “The length of time between a client making an HTTP request to when the client receives the first byte of the request’s response.” In other words, TTFB because it is the price the end user must pay to load each resource on the page, especially the first resource on a new domain. A higher TTFB translates to higher latency, which is not good, in terms of user experience, and what makes this a key metric. Google’s recommendation for TTFB is 200ms max.  

TTFB is a duration which represents the several stages in the lifecycle of a resource request. This is particularly important for the very first request of the page, which corresponds to the loading of the HTML code (no HTML code = no page to process and display). A good TTFB means all those steps are fast, and it’s (very) good!

A poor TTFB can have several causes, usually indicating weakness on the infrastructure side. Let’s now split the TTFB into the atomic metrics it is comprised of, to get to some of those root cause(s):  

Diving a little deeper into each of these metrics:  

  • DNS resolving time: Time to convert a domain name, for instance https://www.catchpoint.com/ to its IP address: 64.79.149.76.
  • Connect time: Time for the web browser to establish a connection to the server.
  • SSL time: SSL certificate negotiation (secured HTTP, mandatory since HTTP/2). Usually, SSL time is included in Connect time.
  • Send time: Time to send the request to the Web browser.
  • Wait time: Processing time on the server side, before responding to the web browser.

NB: Steps 1 to 3 only occur for the first request to a new domain.

The above example highlights something interesting. Wait Time is relatively large, begging the question why?

Wait Time encompasses all the steps that need to take place on the server before it has what it needs to send back that first byte of data to the user. While Wait Time can involve many things, it basically is comprised of Server Timing.

What is involved with Server Timing?

Server Timing is a set of headers which can be added to your application responses to produce timing data in the browser’s developer tools to yield what the Wait Time is. It can include things like CPU time, database time, file server access time, and anything else that you choose.

For example:

When it comes to performance, especially over the web, a large part of the server time is due to CDN behaviour.  

For example, some CDNs provide very useful Edge and Origin related timings, alongside Cache Hit/Miss information. Therefore, if the Wait time is relatively long, was it due to a Cache Miss (meaning the request has gone back to origin)? If so, how long did it take to get to the Edge and then go back to the Origin?

This is how this looks in the headers:

And this is how that looks in developer tools:

Now imagine having the ability to compare and contrast this wide and varied set of information within your observability platform. Or you can get Catchpoint and stop imagining and start observing.

Catchpoint’s Insights feature enables multi-dimensional analysis

Utilising Catchpoint’s amazing Insights feature, it is possible to extract information from headers, browser APIs, HTML, JSON, text, etc. and have it stored within Catchpoint’s database, and use it like any other piece of data. This includes access to your dashboards, alerts, long-term trending and deep dive analysis.

Here is a table on CDN data showing default metrics alongside the additional Insights in a single view:

Those insights are not restricted to the Server Timing header. Other useful information provided here, for instance, includes which Edge server was used to handle the request. This is gold since it enables you to quickly ascertain whether performance might be slow due to the Edge server in use being located too far away from where the request was made.

Take a look at the following Catchpoint dashboard widget, which shows performance time alongside the edge PoP location. In this case, performance from Seattle was over 1 second, very likely due to the fact that the edge server handling the request was located in Perth, Australia!

Enable better and faster triage with Catchpoint Insights

The opportunities with Insights are endless: pull data from external APIs… even the PerfScore from a Meraki device!

Not to mention Prometheus data, your own server names, custom metrics, navigation API data, SNMP polling data, and the list goes on and on. Knowledge is power and having the ability to add to the amazing levels of data available already makes Catchpoint’s digital experience observability platform extremely powerful.  

It’s not just active tests. You can also pull in additional data from Real User Observability, such as Revenue and Conversions, which approximates the net revenue lost due to a specific performance degradation!  

Take Catchpoint for a spin

The data world is your oyster with Insights: bring in additional data to enable better and faster triage and make empowered, insight-driven decisions to improve overall digital experience for your users.

Why not try out Insights for yourself? Sign up for a free 14-day trial of Catchpoint here.

User Experience Observability
Web Experience

You might also like

Blog post

Scripting with Catchpoint Recorder

Blog post

How-To: Filter Out the “Noise” With Zones and Hosts – A Catchpoint Differentiator

Blog post

Integration Spotlight: Catchpoint and Slack, More Than A Collaboration Tool

Blog post

Will Black Friday 2020 be the Same as Previous Years?