How to use server timing to diagnose backend speed on your Shopify store

By Philip Dematis · 11/26/2025 · 4 minutes read
how-to-use-server-timing-to-diagnose-backend-speed-on-your-shopify-store
When you only look at Lighthouse scores or front-end tweaks, you can miss a big part of the story. Learn how to measure site speed using the Server-Timing header.

Most Shopify speed tips focus on images, apps, and scripts, but there's a quieter bottleneck: the time your server needs to generate the first HTML document.

Shopify exposes backend processing time in the Server-Timing header, and with a simple browser check you can see if your theme is slow before anything is even rendered.

Why backend speed matters on Shopify

When someone visits a page on your Shopify store, the browser first waits for the initial HTML document. Until that document arrives, nothing meaningful can be drawn on the screen. No layout, no images, no product information.

This is why backend speed matters:

  • The HTML document is always required. Every visit, every page view, every device.

  • If generating that document is slow, every other optimization is capped.

  • A user staring at a blank or near-blank screen will often leave, even if everything else is well optimized.

Two Shopify sites can behave very differently here. One might generate the HTML in around 10 ms. Another might take 200 ms or more. It is all "just milliseconds", but they add up across pages and users.

There are different benchmarks and studies around this, but a common rule of thumb is that an extra 100 ms in response time can cost a small but measurable share of conversions or sales. The exact number will vary by store, but it is enough to take backend speed seriously.

What the server timing header actually shows

A couple of years ago, Shopify started including a Server-Timing header in responses for the initial HTML document. This header exposes timing data from the server side.

In Chrome DevTools, under the "Timing" section for the document request, you will usually see entries like:

  • "processing" - time spent running application logic on the server.

  • "db" - time spent talking to the database.

  • "Waiting (TTFB)" or "Waiting for server response" - how long the browser waited for the first byte to arrive.

These are not the only factors that affect user-perceived speed, but they answer one key question: "How long does Shopify need to prepare the HTML before the browser can show anything?"

If "processing" and "db" are high, your theme logic might be expensive. If "Waiting for server response" is high while "processing" is low, there could be network issues or other overhead.

The nice part is that you do not need special tools. You can check this in your browser in a minute.

Step-by-step: how to measure your store's backend time

Here is a straightforward workflow in Chrome:

  1. Open a page from your store that you care about, for example a product or collection page.

  2. Press F12 to open Chrome DevTools.

  3. Go to the "Network" tab.

  4. In the filter bar, click "Doc" so you only see document requests.

  5. Refresh the page so the list populates.

  6. Click the row that matches your page URL.

  7. Confirm under "Headers > General > Request URL" that you selected the right request.

  8. Switch to the "Timing" tab.

In the Timing view:

  • Look for "Waiting (TTFB)", "Waiting for server response", or a similar label. This is how long the browser waited for the first byte.

  • Find the "Server Timing" section below.

  • Make note of values like "processing" and "db".

Write these down for a few key templates:

  • Homepage

  • A popular product page

  • A collection page

  • Cart or checkout (where possible)

You now have a basic profile of how much time the server spends before your HTML response leaves Shopify.

Comparing against Horizon and competitors

Numbers on their own are not very helpful. They only gain meaning when you compare them.

A simple way to benchmark:

  1. Open the Horizon theme demo store in Chrome.

  2. Repeat the same DevTools process on a similar page type (product to product, collection to collection).

  3. Record "Waiting", "processing", and "db".

  4. Do the same for one or two competitor stores that feel fast in real use.

  5. Put your numbers and theirs side by side.

A few practical patterns to watch for:

  • If your "processing" time is 3–5x higher than Horizon on similar pages, your theme (or app block) logic might be heavy.

  • If your "db" time is consistently high, there could be complex data lookups or overuse of certain features.

  • If "Waiting" is much higher than both your "processing" time and the benchmarks, consider network conditions or additional upstream delays.

This comparison is useful in several situations:

  • Deciding whether a theme customization has introduced performance regressions.

  • Evaluating apps that inject heavy logic into templates.

  • Comparing a custom theme against a clean reference like Horizon.

  • Preparing evidence when you work with a developer or agency on performance.

You are not trying to match Horizon exactly. You are using it as a reference point to see if your store is in a reasonable range.

FAQ

How often should I check server timing on my store? Checking after major theme changes, new app installs, or big content updates is usually enough.

What is a "good" waiting for server response time on Shopify? There is no single perfect number, but for many stores a TTFB in the low hundreds of milliseconds or below is a healthy target. The key is to avoid being an outlier compared to comparable themes and stores.

Can I improve backend speed without touching code? Sometimes. Removing app blocks of heavy apps on the theme, simplifying templates, or reducing the number of complex sections can help. For deeper issues, you may need a developer to review theme code and data usage.

What if I am familiar with code? The next step would be to use the Shopify Theme Inspector extension. It will help you understand the exact details of where the bottleneck is.

Is front-end optimization still important if backend is slow? Yes. Users experience the full chain, from server response to rendering to interaction. Backend work does not replace front-end work, it complements it.

Do these timings affect every visitor the same way? Not exactly. Network conditions, geographic distance, and caching can change numbers per visitor. That said, high "processing" or "db" times in Server-Timing are a strong signal that your backend work is heavy in general.

Wrapping up backend speed checks in Shopify

Backend speed on Shopify is easy to overlook because it lives behind the scenes. The Server-Timing header gives you a clear window into how long your store needs to prepare the initial HTML document.

By checking those numbers in Chrome, then comparing them with Horizon and a few competitors, you get a grounded view of how your theme performs on the server side. If you see a clear gap, the next step is to dig into where that extra time comes from and address it at the theme or app level.

Share icon
Facebook logoX logoLinkedIn logo

More articles

Contact us

Start a project. Or ask us anything.

200+projects completed
100+Shopify clients
10+Shopify Plus clients
Shopify partners logoShopify Plus logo