Bottleneck
A performance bottleneck is the part of a system that most significantly limits how quickly a website can complete a task.
Improving other parts of the system may have little noticeable effect until the bottleneck is addressed.
What It Means in Practice
A page may contain several imperfect systems at the same time.
For example:
- Images could be smaller
- CSS could be cleaner
- JavaScript could be split
- The CDN could be configured better
But if the origin server takes several seconds to return the initial page, Time to First Byte may remain the dominant bottleneck.
Fixing tiny image files first would produce limited improvement.
Where Bottlenecks Occur
Common bottlenecks include:
- Server response
- Network transfer
- Large images
- Render-blocking resources
- JavaScript execution
- Main-thread work
- Third-party services
- Database queries
- Late discovery of important assets
The limiting factor can also change after one problem is fixed.
Why It Matters
Performance work can become inefficient when teams treat every recommendation as equally important.
A Lighthouse report may contain dozens of suggestions, but only a few may meaningfully constrain the experience.
Identifying the bottleneck helps prioritize the work with the largest practical effect.
Common Problems
Common mistakes include:
- Fixing whatever audit item looks easiest
- Optimizing small assets before large constraints
- Assuming every slow page has the same cause
- Applying generic recommendations without measuring
- Continuing to optimize a component after it is no longer limiting performance
How to Improve
Measure before changing the system.
Identify where time is actually being spent, form a hypothesis about the limiting factor, make a targeted change, and measure again.
Performance optimization should be iterative because fixing one bottleneck can expose the next one.