Stop chasing TTFB: it's not the metric that's tanking your conversions
Your TTFB dashboard is green. Your conversion rate is red. If that combination sounds familiar, you're not alone, and you're not chasing the wrong fix by accident, you're chasing it because every tool you use puts TTFB front and center.
Here's the problem: TTFB and full page load metrics answer completely different questions, and treating them as interchangeable wastes engineering time on ecommerce sites where every millisecond on checkout pages has a dollar value attached.
What TTFB actually tells you
TTFB is the clock between the request leaving the browser and the first byte coming back. That window includes:
- DNS resolution (if uncached)
- TCP/TLS handshake
- Server-side work: routing, DB queries, template rendering, cache lookups
- Network transit for that first byte
On a warm HTTP/2 or HTTP/3 connection, server processing time dominates this number. Which makes TTFB genuinely useful, but only for one job: telling you when your backend is under load.
TTFB baseline: 180ms
TTFB during flash sale: 900ms
That jump isn't noise. It's your app server, DB, or cache layer running out of headroom before a single byte of HTML goes out. On WooCommerce stacks especially, a TTFB spike during a traffic surge is usually the first hard evidence that your PHP-FPM pool or database is maxed out, well before cart abandonment shows up in analytics.
Where TTFB earns its keep
- Catching server-side regressions. A slow query, an N+1 bug, a cold cache: TTFB flags these before users notice anything visually.
- Load testing and capacity planning. Watch TTFB climb under simulated load and you know exactly where your app tier breaks.
- Splitting backend vs frontend blame. Fast TTFB + slow-feeling page = stop looking at the server, start looking at JS and render-blocking assets.
Where it lies to you
A 100ms TTFB tells you nothing about what happens after that byte lands. The page can still take 6 seconds to become usable because of:
- Render-blocking CSS/JS
- Images without dimensions causing layout shift
- A tag manager script hogging the main thread
- Late-loading fonts (hello, flash of invisible text)
And here's the trap most teams miss: if a response is served from a CDN edge cache, TTFB measures the edge, not your origin. Your dashboard can look perfectly healthy while your actual application is quietly degrading, right up until a cache miss exposes it in production.
What full page load metrics tell you instead
LCP, Speed Index, fully-loaded time: these track what the user actually sees and feels. That's why Google leans on LCP and CLS for Core Web Vitals; TTFB alone was a bad predictor of both perceived speed and search ranking.
Strengths:
- Correlates with real user experience, not just server response
- Surfaces conversion killers directly (a bloated hero image, a blocking checkout script)
- Feeds into Core Web Vitals and SEO scoring
Weaknesses:
- Noisy. A regressed LCP could be caused by the backend, a new marketing pixel, an unoptimized CMS upload, or a hydration delay in your frontend framework
- Lagging indicator. You need waterfall analysis and resource timing to find the actual cause after LCP tanks in prod
- Out of infra's hands. You can run flawless high-availability infrastructure and still ship a slow LCP because a third-party payment widget is garbage
The decision framework
Stop asking "is TTFB good." Ask this instead:
if (TTFB_high && LCP_high) {
fixBackendFirst(); // nothing downstream matters until this is solved
}
if (TTFB_low && LCP_high) {
profileBrowserWaterfall(); // frontend/third-party problem
}
if (TTFB_high && LCP_low) {
// rare, but check if LCP measurement is misleading you
}
if (servingMostlyFromCDN) {
trackOriginResponseTimeSeparately(); // edge TTFB will lie to you
}
Practical ownership split:
| Situation | Metric to watch | Who owns it |
|---|---|---|
| Debugging capacity/backend regression | TTFB | Backend/infra |
| Debugging conversion drop or CWV score drop | LCP, Speed Index | Frontend + infra |
| Prepping for a sale or launch | Both, together | Whole team |
For traffic events specifically: TTFB tells you when the servers start straining, LCP tells you whether shoppers are actually feeling it. Alert on both, but don't confuse one for the other, and don't let a green TTFB dashboard talk you out of investigating a real conversion problem.
Full writeup with the complete comparison table and more edge cases: TTFB vs full page load: choosing the right metric for your ecommerce infrastructure
Originally published on binadit.com
Top comments (0)