How Browsers Load PagesLesson 1.4
How to read a browser waterfall chart to find performance bottlenecks
waterfall chart anatomy, queuing, stalled, DNS, connect, waiting, receiving, connection limits, request prioritization
Reading the Network Waterfall
The network waterfall in DevTools (Network tab) is the most useful performance diagnostic tool available. Each row is one request. Each colored segment is a phase of that request's lifecycle.
The key segments to understand:
- Queuing / Stalled - the request hasn't started yet. Cause: HTTP/1.1 connection limit (6 per origin), or higher-priority requests ahead in queue
- DNS Lookup - resolving the hostname. Should be near-zero after first visit due to caching
- Initial Connection / SSL - TCP + TLS setup. High here means no connection reuse
- Waiting (TTFB) - time until first byte of response. Server is processing
- Content Download - transferring the body. Proportional to file size
// Programmatically read timing data
const [entry] = performance.getEntriesByName('https://example.com/api/data');
console.log('TTFB:', entry.responseStart - entry.requestStart);
console.log('Download:', entry.responseEnd - entry.responseStart);
console.log('Total:', entry.duration);The single most actionable pattern to spot: a long Stalled bar followed by a short download. This means the file is small but waited in queue - your page has too many parallel requests on HTTP/1.1. The fix is HTTP/2 (multiplexing) or bundling smaller files.
