# Request count

> Request count is the number of HTTP requests a browser makes to load a page. Every file, from a script to an icon, is one request.

- **Check ID:** P8
- **Area:** [Performance](https://be1st.ai/glossary/performance)
- **Tool:** [SEO + Security + Performance](https://be1st.ai/tools/ssp-audit)
- **Page:** https://be1st.ai/glossary/performance/request-count

## Why it matters

A high number of requests slows down page loading, especially on high-latency mobile networks. Render-blocking requests (CSS, synchronous JS) must complete before content can be displayed. Caching, bundling, and sprite techniques reduce the number of requests.

## In practice

A typical WordPress site with 15 plugins generates 80-120 HTTP requests. Google.com needs fewer than 20 requests. If your website requires 95 requests (30 scripts, 25 images, 15 CSS, 25 other), on a mobile network it can take up to 8 seconds.

## How be1st checks it

Counts the total number of HTTP requests needed to load the page. The ideal count is fewer than 50. Each request adds latency due to DNS, TCP, and TLS handshakes. Even with HTTP/2 multiplexing, a high number of requests has a negative impact on performance.

[SEO + Security + Performance](https://be1st.ai/tools/ssp-audit), Performance tab.

Every check ends as: Pass, Warning, Fail.

## Sources

- [Keep request counts low and transfer sizes small](https://developer.chrome.com/docs/lighthouse/performance/resource-summary) (Chrome for Developers)
- [Prevent unnecessary network requests with the HTTP Cache](https://web.dev/articles/http-cache) (web.dev)
- [Web Performance](https://developer.mozilla.org/en-US/docs/Web/Performance) (MDN Web Docs)

## Related terms

- [CSS coverage](https://be1st.ai/glossary/performance/css-coverage): CSS coverage is the share of a page's downloaded CSS that the page actually uses. The rest is unused code the browser still has to process.
- [JS coverage](https://be1st.ai/glossary/performance/js-coverage): JS coverage is the share of a page's downloaded JavaScript that actually runs on the page. Unused code still costs download and parsing time.
- [Response time (TTFB)](https://be1st.ai/glossary/performance/response-time-ttfb): Time to First Byte (TTFB) is the time from sending a request to receiving the first byte of the server's answer. It shows how fast the server and the network respond.
- [HTML size (performance)](https://be1st.ai/glossary/performance/html-size): HTML size is the weight of a page's HTML document in kilobytes. The browser has to download and parse all of it before it can show the page.
- [External resources](https://be1st.ai/glossary/performance/external-resources): External resources are the separate script and stylesheet files a page loads. Each one is another download that can delay rendering.
- [Inline CSS](https://be1st.ai/glossary/performance/inline-css): Inline CSS is styling written directly in the HTML, in `<style>` blocks or style attributes, instead of in a separate stylesheet file.
