{"id":479452,"date":"2021-10-13T14:01:00","date_gmt":"2021-10-13T12:01:00","guid":{"rendered":"https:\/\/wp-rocket.me\/?p=479452\/"},"modified":"2024-07-05T11:06:59","modified_gmt":"2024-07-05T09:06:59","slug":"reduce-http-requests-speed-wordpress-site","status":"publish","type":"post","link":"https:\/\/wp-rocket.me\/blog\/reduce-http-requests-speed-wordpress-site\/","title":{"rendered":"How to Make Fewer HTTP Requests on WordPress and Speed Up Your Site"},"content":{"rendered":"<p>Are you experiencing a slow WordPress site? Too many HTTP requests could be the source of the problem.&nbsp;Reducing your site&#8217;s page load time by making fewer HTTP requests improves how quickly users can access that content and impacts their overall web browsing experiences. <a href=\"https:\/\/wp-rocket.me\/blog\/guide-to-page-speed-optimization-for-wordpress\/\">Page loading speeds matter<\/a>, and it directly affects how users feel about using an app or website.<\/p><figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"500\" src=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/reduce-http-request-with-wp-rocket.png\" alt=\"Reduce HTTP requests with WP Rocket\" class=\"wp-image-3709996\" srcset=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/reduce-http-request-with-wp-rocket.png 800w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/reduce-http-request-with-wp-rocket-310x195.png 310w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/reduce-http-request-with-wp-rocket-768x480.png 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><\/figure><p>But what are HTTP requests? How many should be made per page? How many requests are <em>you<\/em> currently dealing with? Stay with us: in this article, <strong>we\u2019ll define HTTP requests, explain why they matter, how to measure them and how to keep them low<\/strong>.&nbsp;<\/p><h2 class=\"wp-block-heading\">What Are HTTP Requests?<\/h2><p>HTTP is a communication protocol used to deliver content and data (HTML files, CSS, images, videos, etc.) on the Internet. The World Wide Web is an expansive place with a lot of information hosted on servers, right? If you want to access this content, your browser needs to send <strong>requests<\/strong> and receive responses. Without the requests, there is no effective communication between you and the server.&nbsp;<\/p><p>An HTTP request can also be seen as a layer of communication between the user and the server. The message sent by the client is called HTTP (Hypertext Transfer Protocol), which helps to structure request messages effectively in three parts: request line, header, and body.&nbsp;<\/p><figure class=\"wp-block-image size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"600\" src=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/HTTP-requests-between-the-web-browser-and-the-server.png\" alt=\"HTTP requests between the web browser and the server\n\" class=\"wp-image-3710005\" style=\"width:800px;height:600px\" srcset=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/HTTP-requests-between-the-web-browser-and-the-server.png 800w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/HTTP-requests-between-the-web-browser-and-the-server-260x195.png 260w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/HTTP-requests-between-the-web-browser-and-the-server-768x576.png 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption class=\"wp-element-caption\">HTTP requests between the web browser and the server<br><\/figcaption><\/figure><p><br>As you can see, every time you visit a site, some HTTP requests are made to display the content. Consequently, the more HTTP requests made on a page, the longer it will take to load.&nbsp;<\/p><p>You may be wondering, how many HTTP requests are \u201ctoo many\u201d HTTP requests? Let\u2019s go over some key figures so you know where to position your WordPress site:&nbsp;<\/p><ul class=\"wp-block-list\"><li>Outstanding performance: getting HTTP requests <strong>below 25 per page<\/strong><\/li>\n\n<li>Healthy performance: keeping HTTP requests <strong>under 50 per page<\/strong><\/li>\n\n<li>Average HTTP requests on the web:&nbsp;<strong>70 HTTP requests<\/strong><\/li><\/ul><figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"478\" src=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Requests-per-page-on-mobile-and-desktop-between-2017-and-2021-\u2014-Source-.png\" alt=\"Requests per page on mobile and desktop between 2017 and 2021 \u2014 Source: httparchive.org\n\" class=\"wp-image-3710014\" srcset=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Requests-per-page-on-mobile-and-desktop-between-2017-and-2021-\u2014-Source-.png 800w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Requests-per-page-on-mobile-and-desktop-between-2017-and-2021-\u2014-Source--310x185.png 310w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Requests-per-page-on-mobile-and-desktop-between-2017-and-2021-\u2014-Source--768x459.png 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption class=\"wp-element-caption\">Requests per page on mobile and desktop between 2017 and 2021 \u2014 Source: <a href=\"https:\/\/httparchive.org\/reports\/state-of-the-web#reqTotal\">httparchive.org<\/a><br><\/figcaption><\/figure><figure class=\"wp-block-table\"><table><tbody><tr><td>To sum-up:<br><br>\u2705 HTTP requests are not all bad.&nbsp;<br><br>\u2705 Your WordPress site needs them to render the content and to look good.&nbsp;<br><br>\u2705 You don\u2019t need as many HTTP requests as you have (keep them under 50 per page).<br><br><strong>\u2696\ufe0f <\/strong>It\u2019s all about balance: have as few HTTP requests as possible without sacrificing the user experience.<\/td><\/tr><\/tbody><\/table><\/figure><p>It\u2019s important to keep your site healthy because too many HTTP requests will slow down your site. We explain why in the next section.&nbsp;<\/p><h2 class=\"wp-block-heading\">Why You Should Reduce HTTP Requests<\/h2><p>You should make fewer HTTP requests to maintain great speed and performance. Yahoo said that \u201c<a href=\"https:\/\/developer.yahoo.com\/performance\/rules.html\">80% of the end-user response time is spent on the front-end<\/a>\u201d. In other words, your performance is mainly affected by images, stylesheets, and scripts, which all are rendered thanks to HTTP requests.&nbsp;<\/p><p>They are a key component to displaying content, but chatting back and forth between the server and the user takes time to load. This roundtrip of data is called the round-trip response time (RTT):&nbsp;<\/p><figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"602\" src=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/RTT-the-time-it-takes-for-a-server-to-respond-to-a-file-request-sent-when-someone-visits-your-site.-.png\" alt=\"RTT: the time it takes for a server to respond to a file request when someone visits your site. \n\" class=\"wp-image-3710028\" srcset=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/RTT-the-time-it-takes-for-a-server-to-respond-to-a-file-request-sent-when-someone-visits-your-site.-.png 800w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/RTT-the-time-it-takes-for-a-server-to-respond-to-a-file-request-sent-when-someone-visits-your-site.--259x195.png 259w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/RTT-the-time-it-takes-for-a-server-to-respond-to-a-file-request-sent-when-someone-visits-your-site.--768x578.png 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption class=\"wp-element-caption\">RTT: the time it takes for a server to respond to a file request when someone visits your site.&nbsp;<br><\/figcaption><\/figure><p><br>Another reason to make fewer HTTP requests is to keep your <a href=\"https:\/\/wp-rocket.me\/google-core-web-vitals-wordpress\/\">Core Web Vitals<\/a> healthy, especially your Largest Content Paint (LCP) KPI.&nbsp;<\/p><p>LCP determines how fast the first meaningful piece of content loads. It\u2019s all about speed-perception from the users.&nbsp;<\/p><figure class=\"wp-block-table\"><table><tbody><tr><td>\ud83d\udcd6 Here&#8217;s a guide you should read: <a href=\"https:\/\/wp-rocket.me\/google-core-web-vitals-wordpress\/improve-largest-contentful-paint\/\">How to improve your LCP score on WordPress<\/a>.<\/td><\/tr><\/tbody><\/table><\/figure><p>Three factors affect the LCP score of your WordPress site: slow server response times, render-blocking JavaScript and CSS, and slow resource load time. Therefore, reducing your number of HTTP requests is the key to faster pages. The fewer HTTP requests your website makes, the quicker it can load the most important content (LCP) to the user.&nbsp;<\/p><p><strong>To sum-up:&nbsp;<\/strong><\/p><figure class=\"wp-block-table\"><table><tbody><tr><td>A lot of files on your WordPress site?&nbsp; \u2192 You get a lot of HTTP Requests<br><br>Big and heavy files? \u2192 You get longer HTTP Requests<br><br>Longer HTTP requests \u2192 Increase the actual loading time<br><br>Reduce your HTTP requests \u2192 Positive impact on your LCP<\/td><\/tr><\/tbody><\/table><\/figure><p>And remember, if users can access your content faster, you increase the chances of having them stay on the page and interact with your site. Interacting also means that they could be buying your products\u2026 And not only you avoid the frustration of visitors, but Google will also love your site.&nbsp;<\/p><p>That takes us to the next crucial question: how many HTTP requests is <em>your<\/em> WordPress site making?&nbsp;<\/p><h2 class=\"wp-block-heading\">How to Test and Measure the HTTP Requests of Your Site<\/h2><p>There are some online tools simulating HTTP requests on your WordPress site, namely:&nbsp;<\/p><ul class=\"wp-block-list\"><li><a href=\"https:\/\/gtmetrix.com\/\">GTmetrix<\/a> (<em>you need to have a free account to access your page details<\/em>) \u2014 simply put the URL of your site, run the audit and open the \u201cSummary<strong>\u201d<\/strong> tab. Scroll down to the last section called \u201cPage Details\u201d to find out how many requests your page is making.&nbsp;<\/li><\/ul><figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"988\" src=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Finding-the-Total-Page-Requests-\u2014-Source-GTmetrix.png\" alt=\"Finding the Total Page Requests \u2014 Source: GTmetrix\n\" class=\"wp-image-3710039\" srcset=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Finding-the-Total-Page-Requests-\u2014-Source-GTmetrix.png 800w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Finding-the-Total-Page-Requests-\u2014-Source-GTmetrix-158x195.png 158w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Finding-the-Total-Page-Requests-\u2014-Source-GTmetrix-768x948.png 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption class=\"wp-element-caption\">Finding the Total Page Requests \u2014 Source: <a href=\"https:\/\/gtmetrix.com\/reports\/wp-rocket.me\/Yspzxs8U\/\">GTmetrix<\/a><br><\/figcaption><\/figure><p><br>The waterfall tab is a great way to see how long individual HTTP requests take on your site:<\/p><figure class=\"wp-block-image size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"541\" src=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Requests-with-their-loading-times-.png\" alt=\"Requests with their loading times \u2014 Source: GTmetrix\n\" class=\"wp-image-3710046\" style=\"width:800px;height:541px\" srcset=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Requests-with-their-loading-times-.png 800w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Requests-with-their-loading-times--288x195.png 288w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Requests-with-their-loading-times--768x519.png 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption class=\"wp-element-caption\">Requests with their loading times \u2014 Source: GTmetrix<br><\/figcaption><\/figure><p><br>You can also look at the HTTP requests coming from a specific plugin, such as Elementor:<\/p><figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"346\" src=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Identifying-the-heaviest-files-by-plugin-\u2014-source-GTmetrix-.png\" alt=\"Identifying the heaviest files by plugin \u2014 Source: GTmetrix \n\" class=\"wp-image-3710054\" srcset=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Identifying-the-heaviest-files-by-plugin-\u2014-source-GTmetrix-.png 800w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Identifying-the-heaviest-files-by-plugin-\u2014-source-GTmetrix--310x134.png 310w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Identifying-the-heaviest-files-by-plugin-\u2014-source-GTmetrix--768x332.png 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption class=\"wp-element-caption\">Identifying the heaviest files by plugin \u2014 Source: GTmetrix&nbsp;<br><\/figcaption><\/figure><figure class=\"wp-block-table\"><table><tbody><tr><td>\ud83d\udca1 GTmetrix is powered by Lighthouse technology. If you want to learn more about the Lighthouse KPIs, we have a detailed tutorial focusing on <a href=\"https:\/\/wp-rocket.me\/lighthouse-performance-score-wordpress\/\">how to improve Lighthouse performance score<\/a>.&nbsp;<\/td><\/tr><\/tbody><\/table><\/figure><ul class=\"wp-block-list\"><li><a href=\"https:\/\/tools.pingdom.com\/\">Pingdom<\/a> \u2014 simply put your URL into the box to find out how many HTTP Requests your page calls for:<\/li><\/ul><figure class=\"wp-block-image size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"574\" src=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/HTTP-requests-pingdom.png\" alt=\"HTTP requests \u2014 Source: Pingdom\n\" class=\"wp-image-3710061\" style=\"width:800px;height:574px\" srcset=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/HTTP-requests-pingdom.png 800w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/HTTP-requests-pingdom-272x195.png 272w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/HTTP-requests-pingdom-768x551.png 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption class=\"wp-element-caption\">HTTP requests \u2014 Source: <a href=\"https:\/\/tools.pingdom.com\/#5ef677c00b800000\">Pingdom<\/a><br><\/figcaption><\/figure><ul class=\"wp-block-list\"><li><a href=\"https:\/\/wordpress.org\/plugins\/query-monitor\/\">Query Monitor <\/a>\u2014&nbsp; a free debugging tool to identify plugins or scripts slowing down page loads. The <strong>HTTP API Calls<\/strong> panel shows you information about HTTP requests performed during the page load.<\/li><\/ul><figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"595\" src=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Admin-panel-\u2014-Source-Query-Monitor.png\" alt=\"Admin panel \u2014 Source: Query Monitor\" class=\"wp-image-3710070\" srcset=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Admin-panel-\u2014-Source-Query-Monitor.png 800w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Admin-panel-\u2014-Source-Query-Monitor-262x195.png 262w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Admin-panel-\u2014-Source-Query-Monitor-768x571.png 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption class=\"wp-element-caption\">Admin panel \u2014 Source: Query Monitor<\/figcaption><\/figure><h2 class=\"wp-block-heading\" id=\"make-fewer-http-requests\">10 Ways to Make Fewer HTTP Requests to Your Website (Manually and With a Plugin)<\/h2><p>Fewer HTTP requests mean fewer bytes to download, but it can be daunting to start this optimization. Don\u2019t worry. Thanks to our list of techniques below, you\u2019ll be able to reduce your HTTP requests. For each tactic, we will always give two solutions: using a WordPress plugin and a manual one.&nbsp;<\/p><h3 class=\"wp-block-heading\">1. Combine CSS &amp; JavaScript <\/h3><p>Impact: High \ud83d\ude80\ud83d\ude80\ud83d\ude80<\/p><p>An easy way to reduce HTTP requests is by combining multiple JS and CSS files.&nbsp;<\/p><p>With your WordPress theme and plugins, many CSS stylesheets and JS need to be loaded.&nbsp; This requires the browser to load all these resources to render web pages, meaning multiple HTTP requests.&nbsp;&nbsp;<\/p><figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"400\" src=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Combining-JS-and-CSS.png\" alt=\"Combining JS and CSS \u2014 Source: KeyCDN\n\" class=\"wp-image-3710078\" srcset=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Combining-JS-and-CSS.png 800w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Combining-JS-and-CSS-310x155.png 310w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Combining-JS-and-CSS-768x384.png 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption class=\"wp-element-caption\">Combining JS and CSS \u2014 Source: KeyCDN<br><\/figcaption><\/figure><p><strong>Combining CSS and JS using online tools:<\/strong><\/p><ul class=\"wp-block-list\"><li><a href=\"http:\/\/code.google.com\/p\/minify\/\">Minify<\/a> \u2014 Combines multiple CSS or JavaScript files.<\/li>\n\n<li><a href=\"http:\/\/rakaz.nl\/code\/combine\">Combine<\/a>&#8211; PHP script combined with URL rewriting to concatenate and compress CSS and JavaScript files.<\/li>\n\n<li><a href=\"https:\/\/csscompressor.net\/\">csscompressor.net<\/a> (CSS only) \u2014 Online CSS compressor, quick and free to use.<\/li>\n\n<li><a href=\"https:\/\/jscompress.com\/\">jscompress.com<\/a> (JS only) \u2014 This JavaScript compression tool allows you to combine JavaScript files into one file.&nbsp;<\/li>\n\n<li><a href=\"http:\/\/farhadi.ir\/works\/smartoptimizer\">SmartOptimizer<\/a> \u2014 A PHP library that enhances your website performance by optimizing the front end using concatenation techniques.&nbsp;<\/li>\n\n<li><a href=\"http:\/\/github.com\/Schepp\/CSS-JS-Booster\">CSS-JS-Booster<\/a> \u2014 Concatenates, minifies, and gzips CSS and JavaScript files.<\/li>\n\n<li><a href=\"http:\/\/the-echoplex.net\/csscrush\/\">CSS Crush<\/a> \u2014 Concatenates and minifies CSS files.<\/li>\n\n<li><a href=\"https:\/\/csscompressor.net\/\">csscompressor.net<\/a> (CSS only) \u2014 online CSS compressor, quick and free to use.<\/li>\n\n<li><a href=\"https:\/\/jscompress.com\/\">jscompress.com<\/a> (JS only) \u2014 This JavaScript compression tool allows you to combine JavaScript files into one file.&nbsp;<\/li><\/ul><p><strong>Uploading your new combined CSS &amp; JS files to your WordPress site:&nbsp;<\/strong><\/p><p>Our goal is to put all the separate requests together into a single file.&nbsp;<\/p><ul class=\"wp-block-list\"><li>Simply copy\/paste all of your CSS code into one main file and re-upload the file to the server (do this only if you are comfortable with your WordPress files)<\/li>\n\n<li>If you are using C-panel:<ul class=\"wp-block-list\"><li>Log in to your cPanel<\/li>\n\n<li>Go to your \u2018File Manager\u2019<\/li>\n\n<li>Click on the folder that contains your WordPress site<\/li>\n\n<li>Create a folder in your root directory with the new combined file&nbsp;<\/li><\/ul><\/li><\/ul><p><strong>Combining CSS &amp; JS files using a plugin (the quickest and safest way):&nbsp;<\/strong><\/p><ul class=\"wp-block-list\"><li><a href=\"https:\/\/wp-rocket.me\/features\/\">WP Rocket<\/a>: combines minified files into one file per file type (CSS or JavaScript)&nbsp;<\/li><\/ul><figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"413\" src=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Combine-CSS-fles.png\" alt=\"Combine CSS Files - WP Rocket\" class=\"wp-image-3710085\" srcset=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Combine-CSS-fles.png 800w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Combine-CSS-fles-310x160.png 310w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Combine-CSS-fles-768x396.png 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption class=\"wp-element-caption\">Combine CSS files &#8211; WP Rocket<\/figcaption><\/figure><figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1181\" height=\"459\" src=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/combine-js-files-1.png\" alt=\"Combine JS files - WP Rocket\" class=\"wp-image-3710107\" srcset=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/combine-js-files-1.png 1181w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/combine-js-files-1-310x120.png 310w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/combine-js-files-1-768x298.png 768w\" sizes=\"(max-width: 1181px) 100vw, 1181px\" \/><figcaption class=\"wp-element-caption\">Combine JS files &#8211; WP Rocket<\/figcaption><\/figure><ul class=\"wp-block-list\"><li><a href=\"https:\/\/wordpress.org\/plugins\/autoptimize\/\">Autoptimize<\/a>: helps you with the concatenation of your scripts (CSS or JavaScript).<\/li><\/ul><h3 class=\"wp-block-heading\">2. Combine Images with CSS Sprites <\/h3><p>Impact: High \ud83d\ude80\ud83d\ude80\ud83d\ude80<\/p><p>CSS sprites are a great way to reduce the number of HTTP requests made for image resources. All CSS files on your site are render-blocking, meaning that the more CSS files are loaded, the more likely this will slow down your site.&nbsp;<\/p><p>To avoid this, you should optimize the images on your site and combine them into a single file. Once this is done, time to lean towards the CSS sprites technique: use CSS to display just a part of that image file where it\u2019s needed. This technique improves site performance where many small images, logos, or icons are used. <\/p><p>You can learn more in our dedicated article on <a href=\"https:\/\/wp-rocket.me\/blog\/combine-images-css-sprites\/\">combining images using CSS sprites in WordPress<\/a>.<\/p><figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"95\" src=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Good-image-candidates-in-red-\u2014-Source-Yahoos-homepage.png\" alt=\"Good image candidates in red \u2014 Source: Yahoo\u2019s homepage\n\" class=\"wp-image-3710122\" srcset=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Good-image-candidates-in-red-\u2014-Source-Yahoos-homepage.png 800w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Good-image-candidates-in-red-\u2014-Source-Yahoos-homepage-310x37.png 310w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Good-image-candidates-in-red-\u2014-Source-Yahoos-homepage-768x91.png 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption class=\"wp-element-caption\">Good image candidates in red \u2014 Source: Yahoo\u2019s homepage<br><\/figcaption><\/figure><p><strong>Combining images with CSS sprites using web-based tools:<\/strong><\/p><ul class=\"wp-block-list\"><li><a href=\"https:\/\/spritegen.website-performance.org\/\">CSS Sprite Generator, Editor, and Code<\/a><\/li>\n\n<li><a href=\"https:\/\/cssspritestool.com\/\">CSSspritestool<\/a><ul class=\"wp-block-list\"><li>Go to the <a href=\"https:\/\/cssspritestool.com\/\">CSSspritestool<\/a> site to combine multiple images into one using the drag-and-drop builder.&nbsp;<\/li>\n\n<li>You get a combined image file, along with some CSS code for each image that you upload.<\/li>\n\n<li>Upload the combined image file to your WordPress site<\/li>\n\n<li>Add the CSS code to your WordPress site using the Customizer<\/li>\n\n<li>Display each image where you want using HTML<\/li><\/ul><\/li><\/ul><h3 class=\"wp-block-heading\">3. Optimize Images (and Delete the Non-Important Ones) <\/h3><p>Impact: High \ud83d\ude80\ud83d\ude80\ud83d\ude80<\/p><p>While there is no existing WordPress plugin allowing you to specifically combine images with CSS sprites, you can still use some incredible plugins to <a href=\"https:\/\/wp-rocket.me\/blog\/image-optimization-wordpress\/\">optimize your images<\/a>. Images are a must-have for the user experience, but here\u2019s the catch: each image on your site is a separate HTTP request! Consequently, choose them wisely and consider only having images bringing value to your content.<\/p><p>Optimizing images means reducing their weight without compromising quality. There is no point in having a light image blurred where the content can\u2019t even be identified, right?&nbsp;<\/p><p>Here are some resizing tools you can use:&nbsp;<\/p><ul class=\"wp-block-list\"><li>Photoshop<\/li>\n\n<li>GIMP \u2014 Free, Windows &amp; Mac<\/li>\n\n<li>IrfanView \u2014 Free for Windows<\/li>\n\n<li>Preview for Mac \u2014 Already installed!<\/li><\/ul><p>To optimize your images automatically, we recommend you to use a WordPress plugin:&nbsp;<\/p><ul class=\"wp-block-list\"><li><a href=\"https:\/\/imagify.io\/\">Imagify<\/a> \u2014 <em>by WP Media, the same company behind WP Rocket. <\/em>Optimize up to 20 MB of images for free per month.&nbsp;<\/li>\n\n<li><a href=\"https:\/\/wp-rocket.me\/blog\/best-image-optimization-plugins-wordpress\/#optimole\">Optimole (Image optimization &amp; Lazy Load by Optimole)<\/a>&nbsp;<\/li><\/ul><p>Read our dedicated article to discover more <a href=\"https:\/\/wp-rocket.me\/blog\/best-image-optimization-plugins-wordpress\/\">image optimization plugins<\/a>.<\/p><p><em>Note<\/em>: optimizing images won\u2019t directly reduce the number of HTTP requests, but it will reduce their size and make them load faster.&nbsp;<\/p><div id=\"om-ulrdquoprwqcywqbbgci-holder\"><\/div>\n\t<script>(function (d, u, ac) {\n\t\t\tvar s = d.createElement('script')\n\t\t\ts.type = 'text\/javascript'\n\t\t\ts.src = 'https:\/\/a.omappapi.com\/app\/js\/api.min.js'\n\t\t\ts.async = true\n\t\t\ts.dataset.user = u\n\t\t\ts.dataset.campaign = ac\n\t\t\td.getElementsByTagName('head')[0].appendChild(s)\n\t\t})(document, 20440, 'ulrdquoprwqcywqbbgci')<\/script><h3 class=\"wp-block-heading\">4. Enable Lazy Load on Images <\/h3><p>Impact: High \ud83d\ude80\ud83d\ude80\ud83d\ude80<\/p><p>Implementing \u201clazy load\u201d means postponing the loading of images outside the browser viewport. In simple words, if your visitor doesn\u2019t scroll all the way down, images placed at the end of the page won&#8217;t even be loaded. Thanks to the <a href=\"https:\/\/wp-rocket.me\/blog\/lazy-loading-wordpress-5-5\/\">lazy load script<\/a>, you reduce the number of HTTP requests because you <em>only<\/em> load the images above the fold.&nbsp;<\/p><p><strong>Implementing lazy loading script manually:&nbsp;<\/strong><\/p><p>First, you need to determine how you will load your images: are you using the &lt;img&gt; tag or CSS?&nbsp; Web.Dev explains very well <a href=\"https:\/\/web.dev\/lazy-loading-images\/\">how to implement the lazy load script for both methods<\/a>.&nbsp; You also need to check if the element is in the viewport using the <a href=\"https:\/\/developers.google.com\/web\/updates\/2016\/04\/intersectionobserver\">Intersection Observer API<\/a>.<br><br>This is how the lazy load can look like respectively on an image and on an iframe:&nbsp;<\/p><p>&lt;img src=&#8221;image.jpg&#8221; alt=&#8221;&#8230;&#8221; loading=&#8221;lazy&#8221;&gt;&lt;iframe src=&#8221;video-player.html&#8221; title=&#8221;&#8230;&#8221; loading=&#8221;lazy&#8221;&gt;&lt;\/iframe&gt;<\/p><p><strong>\u200b\u200bUsing a lazy load plugin to apply the script automatically:<\/strong><\/p><ul class=\"wp-block-list\"><li><a href=\"https:\/\/wordpress.org\/plugins\/rocket-lazy-load\/\">Lazy Load by WP Rocket<\/a> (Free) \u2014 displays the content only when visible to the user.&nbsp;<\/li>\n\n<li><a href=\"https:\/\/wp-rocket.me\/features\/\">WP Rocket<\/a> \u2014 comes with the lazy load features. It\u2019s a premium plugin that comes with many other advantages such as caching, cleaning your code, etc.)&nbsp;<\/li>\n\n<li>If you are looking for <a href=\"https:\/\/wp-rocket.me\/blog\/best-lazy-load-plugins-wordpress\/\">more lazy load plugins<\/a>, have a look at our article.&nbsp;<\/li><\/ul><h3 class=\"wp-block-heading\">5. Minify HTML, CSS, and JavaScript <\/h3><p>Impact: Medium \ud83d\ude80\ud83d\ude80<\/p><p>Minifying your code means removing unnecessary whitespace, comments, and extra characters from a file to make it lighter. This technique can be applied to JavaScript, CSS, and HTML files. Of course, it\u2019s all about cleaning up the code that is not crucial for final users.&nbsp;<\/p><figure class=\"wp-block-table\"><table><tbody><tr><td>Example of non-minified JS<\/td><td>Example of a minified JS&nbsp;<\/td><\/tr><tr><td><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/lh3.googleusercontent.com\/xtSmYtHoxIGMlR-PrlHsVFMZZnNjkIfIgPCsr6IiKZtAwdzVETvWxoAlT4VGzo901ePnCtZVCIUztMzPs0QIkNzqCrG6o6FoxwHYdrJWuY_DnZVwmWUx9HasmSuE7Yt9UwXm9US_=s0\" width=\"286\" height=\"243\"><\/td><td><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/lh6.googleusercontent.com\/yZompOihV-bnupgeu-RP3qZP6-4pYETSvda6PVPayP0YXHd6DkgugXjxoPYFkVYu1YuQdiLtPAbC4S6cc5i9V-atlE9MRJIXxU_6JI82Sg18Xeah5i3sc9rubBcI7TuKgP7s8DRq=s0\" width=\"286\" height=\"87\"><\/td><\/tr><\/tbody><\/table><\/figure><p><strong>Minifying your code manually<\/strong>:<\/p><p><em>Before you edit the file, download a copy from your server to save it on your computer for safekeeping.<\/em><\/p><ul class=\"wp-block-list\"><li>Minifying HTML: open your code sheet and remove comments (&lt;!\u2013 \u2026 \u2013&gt;), extra spaces, line-breaks, and similar content<\/li>\n\n<li>Minifying CSS: remove extra spaces and comments from CSS files (\/* \u2026 *\/) Shorten ID, class, or variable names as much as possible<\/li>\n\n<li>Minifying JS: remove the JS comments (\/\/) and extra spaces from the source code. Turn arrays into objects whenever possible, optimize your conditional statements, and find answers to basic constant expressions.<\/li><\/ul><p><strong>Minifying your code using an online tool<\/strong>:<\/p><ul class=\"wp-block-list\"><li>Use a code editor like Sublime text to edit the file<\/li>\n\n<li>Paste your code in one of those online tools: Closure Compiler, CSS nano, JS nano, UNCSS. (We have a <a href=\"https:\/\/wp-rocket.me\/blog\/best-free-css-and-javascript-minification-tools\/#section-3\">full list of free minifying codes<\/a> for you to check out).&nbsp;<\/li>\n\n<li>Replace your old code with the new minified code and upload it back to your site<\/li><\/ul><p><strong>Using a WordPress plugin to minify your code<\/strong>:<\/p><ul class=\"wp-block-list\"><li><a href=\"https:\/\/wp-rocket.me\/features\/\">WP Rocket<\/a> \u2014 minify your CSS and JS automatically. All you need to do is to check two boxes. WP Rocket has a dedicated section for file optimization.&nbsp;<\/li><\/ul><figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"161\" src=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Minify-CSS-file-option.png\" alt=\"Minify CSS files - WP Rocket\" class=\"wp-image-3710132\" srcset=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Minify-CSS-file-option.png 800w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Minify-CSS-file-option-310x62.png 310w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Minify-CSS-file-option-768x155.png 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption class=\"wp-element-caption\">Minify CSS files &#8211; WP Rocket<\/figcaption><\/figure><figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"97\" src=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/MinifyJS-files.png\" alt=\"Minify JS files - WP Rocket\" class=\"wp-image-3710139\" srcset=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/MinifyJS-files.png 800w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/MinifyJS-files-310x38.png 310w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/MinifyJS-files-768x93.png 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption class=\"wp-element-caption\">Minify JS files &#8211; WP Rocket<\/figcaption><\/figure><h3 class=\"wp-block-heading\">6. Replace Heavy Plugins with Lightweight Ones <\/h3><p>Impact: Medium \ud83d\ude80\ud83d\ude80<\/p><p>Your site\u2019s slow loading speeds could result from one or two plugins that are overworking your WordPress site with too many HTTP requests. For classifying a plugin as lightweight, you should look at: code quality &amp; professionalism, the features, how efficiently the code executes them, and the file size.&nbsp;<\/p><p><strong>How to flag the slow plugins of your WordPress site?&nbsp;<\/strong><\/p><p>Let&#8217;s say you are hesitating between two contact forms plugins (A and B). Use our 5 steps to run your diagnosis:&nbsp;<\/p><ol class=\"wp-block-list\"><li>Run a performance test using Pingdom to check your number of HTTP requests \u2014 write down your score<\/li>\n\n<li>Activate plugin A and run your test again- write down your score<\/li>\n\n<li>Deactivate plugin A and install plugin B to do the same audit<\/li>\n\n<li>Compare how many HTTP requests have been added for each plugin<\/li>\n\n<li>Choose the one with fewer HTTP requests and delete the slow one!<\/li><\/ol><p><strong>Using a plugin to identify which plugins are slowing down your site with too many HTTP requests:<\/strong><\/p><ul class=\"wp-block-list\"><li>The <a href=\"https:\/\/wordpress.org\/plugins\/query-monitor\/\">Query Monitor plugin<\/a> can be used to identify which plugins are harming your site and help you remove them<\/li><\/ul><figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"325\" src=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Identifying-the-slow-plugins-with-the-Query-Monitor-Plugin.png\" alt=\"\" class=\"wp-image-3710150\" srcset=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Identifying-the-slow-plugins-with-the-Query-Monitor-Plugin.png 800w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Identifying-the-slow-plugins-with-the-Query-Monitor-Plugin-310x126.png 310w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Identifying-the-slow-plugins-with-the-Query-Monitor-Plugin-768x312.png 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption class=\"wp-element-caption\">Identifying the slow plugins with the Query Monitor Plugin \u2014 Source: <a href=\"https:\/\/onlinemediamasters.com\/how-to-find-wordpress-plugins-slowing-down-your-site\/#review\">Onlinemediamaster<\/a><br><\/figcaption><\/figure><h3 class=\"wp-block-heading\">7. Load Scripts Only When Needed (and Only on Specific Pages) <\/h3><p>Impact: Medium \ud83d\ude80\ud83d\ude80<\/p><p>Another way to make fewer HTTP requests is to selectively disable scripts and plugins from specific pages\/posts that don\u2019t need to load.&nbsp;<\/p><p><strong>Use a WordPress plugin to load script only when needed:&nbsp;<\/strong><\/p><ul class=\"wp-block-list\"><li><a href=\"https:\/\/perfmatters.io\/\">Perfmatters<\/a><strong> \u2014 <\/strong>allows you to <a href=\"https:\/\/perfmatters.io\/docs\/disable-scripts-per-post-page\/\">disable a script on a page or post<\/a>.<\/li><\/ul><figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"551\" src=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Choose-where-to-not-execute-the-script-with-the-script-manager-tool-.png\" alt=\"Choose where to not execute the script with the script manager tool   \u2014 Source: Global View of Perfmatters\" class=\"wp-image-3710157\" srcset=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Choose-where-to-not-execute-the-script-with-the-script-manager-tool-.png 800w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Choose-where-to-not-execute-the-script-with-the-script-manager-tool--283x195.png 283w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Choose-where-to-not-execute-the-script-with-the-script-manager-tool--768x529.png 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption class=\"wp-element-caption\">Choose where to not execute the script with the script manager tool &nbsp; \u2014 Source: Global View of Perfmatters<\/figcaption><\/figure><ul class=\"wp-block-list\"><li><a href=\"https:\/\/wordpress.org\/plugins\/wp-asset-clean-up\/\">Asset Cleanup Pro<\/a><strong> \u2014 <\/strong>which is a bit less user-friendly but does the job too.<\/li><\/ul><figure class=\"wp-block-image size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"254\" src=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Asset-Cleanup-Pro.png\" alt=\"Asset Cleanup Pro\" class=\"wp-image-3710166\" style=\"width:800px;height:254px\" srcset=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Asset-Cleanup-Pro.png 800w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Asset-Cleanup-Pro-310x98.png 310w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Asset-Cleanup-Pro-768x244.png 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption class=\"wp-element-caption\">Asset Cleanup Pro<\/figcaption><\/figure><h3 class=\"wp-block-heading\">8. Reduce External Scripts \/ HTTP Requests <\/h3><p>Impact: Medium \ud83d\ude80\ud83d\ude80<\/p><p>Loading every third-party script is an extra HTTP request that the browser makes, slowing down page performance (here&#8217;s <a href=\"https:\/\/wp-rocket.me\/blog\/third-party-scripts\/\">how you can reduce the impact of third-party scripts<\/a>). Keeping track of all your third-party integrations is crucial to understanding which external assets slow down your site speed. We have been explaining how to reduce <em>your<\/em> HTTP requests. Let\u2019s not be impacted by the external ones, right?&nbsp;<\/p><p>Too many HTTP requests will often force resources to be fetched from the network, and we don\u2019t want this for our performance.<\/p><p>External scripts mainly come from Google Analytics tags, Facebook Pixels, YouTube videos, social sharing buttons, and A\/B testing tags.&nbsp; Identifying all files that are adding requests is highly recommended.&nbsp;<\/p><p><strong>Using tools to identify the heaviest external scripts:<\/strong><\/p><ul class=\"wp-block-list\"><li>&nbsp;Performance tools like These Chrome DevTools, PageSpeed Insights, and WebPageTest can help you identify them.&nbsp;<\/li><\/ul><figure class=\"wp-block-image size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"502\" src=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Identifying-the-external-scripts-that-slow-down-my-site-DevTools.png\" alt=\"Identifying the external scripts that slow down my site \u2014 Source: Chrome DevTools\n\" class=\"wp-image-3710176\" style=\"width:800px;height:502px\" srcset=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Identifying-the-external-scripts-that-slow-down-my-site-DevTools.png 800w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Identifying-the-external-scripts-that-slow-down-my-site-DevTools-310x195.png 310w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Identifying-the-external-scripts-that-slow-down-my-site-DevTools-768x482.png 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption class=\"wp-element-caption\">Identifying the external scripts that slow down my site \u2014 Source: Chrome DevTools<br><\/figcaption><\/figure><p><strong>Optimizing the third party requests manually<\/strong>:<\/p><p>Now that you have identified which external scripts affect performance, you can use the <em>async<\/em> or <em>defer <\/em>attribute on them:&nbsp;<\/p><p><strong>&lt;<\/strong><strong>script <\/strong><strong>async<\/strong><strong> <\/strong><strong>src=<\/strong><strong>&#8220;script.js&#8221;&gt; &lt;<\/strong><strong>script <\/strong><strong>defer<\/strong><strong> <\/strong><strong>src=<\/strong><strong>&#8220;script.js&#8221;&gt;<\/strong><\/p><p>If you want to learn more about using both attributes, we recommend reading Web.Dev, which lists <a href=\"https:\/\/web.dev\/efficiently-load-third-party-javascript\/\">all the steps to <\/a>efficiently load third-party JS.&nbsp;<\/p><p><strong>Using a plugin to reduce your external scripts impact on performance:&nbsp;<\/strong><\/p><ul class=\"wp-block-list\"><li>WP Rocket help you reduce the impact of third-party code in many ways:<ul class=\"wp-block-list\"><li>Hosting Google Analytics files and tags locally.<\/li>\n\n<li>Prefetching DNS requests, meaning that external files will load faster.<\/li>\n\n<li>Preloading fonts to help browsers discover Google fonts faster in your CSS files.<\/li><\/ul><\/li><\/ul><figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"634\" src=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Prefetching-DNS-and-preloading-fonts-\u2014-Source-WP-Rocket-.png\" alt=\"Prefetching DNS and preloading fonts \u2014 Source: WP Rocket \n\" class=\"wp-image-3710183\" srcset=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Prefetching-DNS-and-preloading-fonts-\u2014-Source-WP-Rocket-.png 800w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Prefetching-DNS-and-preloading-fonts-\u2014-Source-WP-Rocket--246x195.png 246w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Prefetching-DNS-and-preloading-fonts-\u2014-Source-WP-Rocket--768x609.png 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption class=\"wp-element-caption\">Prefetching DNS and preloading fonts \u2014 Source: WP Rocket&nbsp;<br><\/figcaption><\/figure><ul class=\"wp-block-list\"><li>\u200b\u200bDeferring your third-party JS such as ads and analytics, just tell your browser what he should load first.&nbsp;<\/li><\/ul><p>For the story, <a href=\"https:\/\/medium.com\/p\/a0a1000be5#4123\">Telegraph recently deferred all of their scripts<\/a> and improved the ad charging time by an average of four seconds.&nbsp;<\/p><h3 class=\"wp-block-heading\">9.&nbsp;Use a CDN <\/h3><p>Impact: Medium \ud83d\ude80\ud83d\ude80<\/p><p>A Content Delivery Network (CDN) refers to geographically distributed servers that serve content from the closest location possible. No matter where a user is, they can access your site&#8217;s contents quickly and efficiently. Every HTTP request made by them will be served from the nearest location possible.&nbsp;<\/p><p><strong>Best CDNs available on the market:&nbsp;<\/strong><\/p><ul class=\"wp-block-list\"><li><a href=\"https:\/\/rocketcdn.me\/\">RocketCDN<\/a><\/li>\n\n<li><a href=\"https:\/\/www.cloudflare.com\/\">Cloudflare CDN<\/a><\/li><\/ul><p>We also wrote <a href=\"https:\/\/wp-rocket.me\/blog\/cdn\/#section-2\">a guide to help you choose the right CDN<\/a> for you.&nbsp;<\/p><h3 class=\"wp-block-heading\">10. Defer Render-Blocking JavaScript and CSS <\/h3><p>Impact: Medium \ud83d\ude80\ud83d\ude80<\/p><p>Is this resource very useful, or is it OK to load it later? The immediate need to use the resource will determine if the resource is render-blocking or not. To eliminate render-blocking JavaScript and CSS, you need to use the defer option or the async option.&nbsp;&nbsp;<\/p><p><strong>Manually removing the render-blocking resources<\/strong>:<\/p><p>First, run an audit on Google PageSpeed Insights and check your opportunities section. If you have a section \u201cEliminate render-blocking resources\u201d, then you probably need to do something just like in our example below:&nbsp;<\/p><figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"624\" src=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Opportunities-section-\u2014-Source-PSI.png\" alt=\"Opportunities section \u2014 Source: PSI\n\" class=\"wp-image-3710192\" srcset=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Opportunities-section-\u2014-Source-PSI.png 800w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Opportunities-section-\u2014-Source-PSI-250x195.png 250w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Opportunities-section-\u2014-Source-PSI-768x599.png 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption class=\"wp-element-caption\">Opportunities section \u2014 Source: PSI<br><\/figcaption><\/figure><p><br>To eliminate this issue manually, you need to use the defer and async attributes.&nbsp;<\/p><p>Here\u2019s an example of the defer attribute to defer JS:<br><br><em>&lt;script defer src=\u201d\/example-js-script\u201d&gt;&lt;\/script&gt;<\/em><\/p><p>Follow our in-depth tutorial explaining <a href=\"https:\/\/wp-rocket.me\/google-core-web-vitals-wordpress\/eliminate-render-blocking-javascript-css\/#section-4\">how to eliminate render-blocking resources using both scripts<\/a> manually.&nbsp;<\/p><p>If you want something more straightforward, simply use a WordPress plugin.<\/p><p><strong>Using a WordPress plugin to defer JS and CSS<\/strong>:<\/p><ul class=\"wp-block-list\"><li><strong>WP Rocket \u2014 <\/strong>which helps you with <a href=\"https:\/\/wp-rocket.me\/blog\/deferred-loading-of-javascript\/\">deferring your JS files<\/a> in the simplest way. <strong>&nbsp;<\/strong>The plugin also offers the \u201cOptimize CSS delivery\u201d feature that constitutes the render-blocking resources.<strong> <\/strong>You can also exclude any JS or CSS file from being deferred if you need it.&nbsp;<\/li><\/ul><figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"820\" height=\"265\" src=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/06\/Load-JS-deferred-feature-1.png\" alt=\"Load JS deferred - WP Rocket\n\" class=\"wp-image-3528361\" srcset=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/06\/Load-JS-deferred-feature-1.png 820w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/06\/Load-JS-deferred-feature-1-310x100.png 310w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/06\/Load-JS-deferred-feature-1-768x248.png 768w\" sizes=\"(max-width: 820px) 100vw, 820px\" \/><figcaption class=\"wp-element-caption\">Load JS deferred to eliminate render-blockinbg resources &#8211; WP Rocket<\/figcaption><\/figure><p><\/p><figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1213\" height=\"390\" src=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/06\/optimize-css-delivery-WP-Rocket.png\" alt=\"Optimize CSS delivery - WP Rocket\" class=\"wp-image-3455867\" srcset=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/06\/optimize-css-delivery-WP-Rocket.png 1213w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/06\/optimize-css-delivery-WP-Rocket-310x100.png 310w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/06\/optimize-css-delivery-WP-Rocket-768x247.png 768w\" sizes=\"(max-width: 1213px) 100vw, 1213px\" \/><figcaption class=\"wp-element-caption\">Optimize CSS delivery to eliminate render-blockinbg resources &#8211; WP Rocket<\/figcaption><\/figure><figure class=\"wp-block-table\"><table><tbody><tr><td>\ud83d\udca1 Fixing your HTTP requests is an excellent start to speed up your WordPress site. <br><br>However, \u201creducing HTTP requests\u201d is not the only performance optimization you should focus on. If you want your site at lightning speed, follow our complete guide about <a href=\"https:\/\/wp-rocket.me\/blog\/guide-to-page-speed-optimization-for-wordpress\/\">page speed optimization<\/a>.<\/td><\/tr><\/tbody><\/table><\/figure><h2 class=\"wp-block-heading\">How to Reduce HTTP Requests with a Plugin<\/h2><p>A plugin like WP Rocket helps to reduce HTTP requests and to speed up your site significantly. Let\u2019s run a performance audit of a WordPress site with and without WP Rocket. You\u2019ll see after the comparison that it\u2019s one of the <a href=\"https:\/\/wp-rocket.me\/best-wordpress-caching-plugin\/\">best caching plugins for WordPress<\/a>.&nbsp;<\/p><figure class=\"wp-block-table\"><table><tbody><tr><td>\ud83d\udcd6 If you are fairly new to this topic or have never run a performance audit before, check our detailed guide related to <a href=\"https:\/\/wp-rocket.me\/blog\/how-to-test-wordpress-site-performance-measure-speed-results\/\">testing your WordPress site\u2019s performance and speed<\/a>.<\/td><\/tr><\/tbody><\/table><\/figure><p>We will use GTmetrix to measure the following KPIs:<\/p><ul class=\"wp-block-list\"><li>Overall performance grade (A to F)<\/li>\n\n<li>Core Web Vitals scores (<a href=\"https:\/\/wp-rocket.me\/google-core-web-vitals-wordpress\/improve-largest-contentful-paint\/\">LCP<\/a>, <a href=\"https:\/\/wp-rocket.me\/google-core-web-vitals-wordpress\/improve-cumulative-layout-shift\/\">CLS<\/a>, and <a href=\"https:\/\/wp-rocket.me\/google-core-web-vitals-wordpress\/improve-interaction-to-next-paint\/\">INP<\/a>)\u00a0 + TTI and TBT <\/li>\n\n<li>Number of HTTP requests (Total page requests)<\/li><\/ul><p>In terms of content, my WordPress site contains some text, a few social media icons, 8 images, an embedded video from YouTube, a map with a pin (from Google Maps), and 3 testimonials from clients with their photos.&nbsp;<\/p><div class=\"wp-block-image\"><figure class=\"aligncenter size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"2118\" src=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/test-site.png\" alt=\"\" class=\"wp-image-3710211\" style=\"width:491px;height:1299px\" srcset=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/test-site.png 800w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/test-site-74x195.png 74w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/test-site-768x2033.png 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption class=\"wp-element-caption\">Test site<\/figcaption><\/figure><\/div><h3 class=\"wp-block-heading\">Scenario 1 \u2014 Measuring Performance and HTTP Requests &#8211; No WP Rocket&nbsp;<\/h3><p>Let\u2019s have a look at the performance results using GTmetrix. They are not very encouraging, and I got an \u201cE\u201d for my overall performance grade:&nbsp;<\/p><figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"490\" src=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/General-report-with-Grade-E-No-WP-Rocket.png\" alt=\"General report with Grade E (No WP Rocket) \u2014 GTmetrix\n\" class=\"wp-image-3710220\" srcset=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/General-report-with-Grade-E-No-WP-Rocket.png 800w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/General-report-with-Grade-E-No-WP-Rocket-310x190.png 310w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/General-report-with-Grade-E-No-WP-Rocket-768x470.png 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption class=\"wp-element-caption\">General report with Grade E (No WP Rocket) \u2014 GTmetrix<br><\/figcaption><\/figure><p><br>We notice that <strong>my page is making 140 HTTP requests<\/strong> and that 42.9% of them are due to JS. It takes 10.2s for my page to be fully loaded, and the size of the page is 5.11 MB.&nbsp;<\/p><figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"536\" src=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Page-details-page-size-and-HTTP-requests.png\" alt=\"Page details (page size and HTTP requests) - source: GTmetrix\n\" class=\"wp-image-3710226\" srcset=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Page-details-page-size-and-HTTP-requests.png 800w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Page-details-page-size-and-HTTP-requests-291x195.png 291w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Page-details-page-size-and-HTTP-requests-768x515.png 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption class=\"wp-element-caption\">Page details (page size and HTTP requests) &#8211; source: GTmetrix<br><\/figcaption><\/figure><figure class=\"wp-block-table\"><table><tbody><tr><td><strong>KPIs<\/strong><\/td><td><strong>Score (No WP Rocket)<\/strong><\/td><\/tr><tr><td>GTmetrix Overall Grade&nbsp;<\/td><td>E<\/td><\/tr><tr><td>Performance&nbsp;<\/td><td>55%<\/td><\/tr><tr><td>Largest Contentful Paint (LCP)<\/td><td>2.7s<\/td><\/tr><tr><td>First Contentful Paint (FCP)<\/td><td>2.4s<\/td><\/tr><tr><td>Cumulative Layout Shift (CLS)<\/td><td>0.53 ms<\/td><\/tr><tr><td>Time to Interactive (TTI)<\/td><td>3.6s<\/td><\/tr><tr><td>Total Blocking Time (TBT)<\/td><td>51ms<\/td><\/tr><tr><td>Time To First Byte (TTFB)<\/td><td>806 ms<\/td><\/tr><tr><td>Fully Loaded Time&nbsp;<\/td><td>10.2s<\/td><\/tr><tr><td>Page Size&nbsp;<\/td><td>5.11 MB<\/td><\/tr><tr><td>Total Page Requests<\/td><td>140&nbsp; <strong>(Best-in-class score: &lt; 50<\/strong>)<\/td><\/tr><\/tbody><\/table><\/figure><p><strong>The main recommendations from GTmetrix are the following:&nbsp;<\/strong><\/p><ul class=\"wp-block-list\"><li>Efficiently load third-party JS (defer JS,&nbsp; establish early connections to the required origins and apply lazy-load on embedded third-party resources)<\/li>\n\n<li>Eliminate render-blocking resources (Consider delivering critical CSS and JS inline and deferring all non-critical JS\/styles. Learn more about <a href=\"https:\/\/wp-rocket.me\/blog\/critical-css\/\">what critical CSS is in our article<\/a>)<\/li>\n\n<li>Optimize my code (combine and minify JS and CSS \/ optimize CSS delivery)<\/li>\n\n<li>Implement page caching<\/li><\/ul><figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"640\" src=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Issues-flagged-by-GTmetrix-while-auditing-my-site.png\" alt=\"Issues flagged by GTmetrix while auditing my site\n\" class=\"wp-image-3710235\" srcset=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Issues-flagged-by-GTmetrix-while-auditing-my-site.png 800w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Issues-flagged-by-GTmetrix-while-auditing-my-site-244x195.png 244w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/Issues-flagged-by-GTmetrix-while-auditing-my-site-768x614.png 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption class=\"wp-element-caption\">Issues flagged by GTmetrix while auditing my site<br><\/figcaption><\/figure><p><br>Guess what? This is <strong>exactly <\/strong>what <a href=\"https:\/\/wp-rocket.me\/features\/\">WP Rocket<\/a> can do for your WordPress site (amongst other things). In scenario 2, we will activate WP Rocket and check our website\u2019s health again. Good things are coming.&nbsp;<\/p><h3 class=\"wp-block-heading\">Scenario 2 \u2014 Measuring Performance and HTTP Requests \u2014 \ud83d\ude80&nbsp;With WP Rocket&nbsp;<\/h3><p>Now that WP Rocket is activated let\u2019s run another performance audit using the same page.&nbsp;<\/p><p>This time, the results are very encouraging, and we went from \u201cE\u201d to \u201cA\u201d regarding my overall performance grade:&nbsp;<\/p><figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"491\" src=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/My-new-score-A-thanks-to-WP-Rocket.png\" alt=\"My new \u201cA\u201d score thanks to WP Rocket \u2014 Source: GTmetrix\n\" class=\"wp-image-3710243\" srcset=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/My-new-score-A-thanks-to-WP-Rocket.png 800w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/My-new-score-A-thanks-to-WP-Rocket-310x190.png 310w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/My-new-score-A-thanks-to-WP-Rocket-768x471.png 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption class=\"wp-element-caption\">My new \u201cA\u201d score thanks to WP Rocket \u2014 Source: GTmetrix<br><\/figcaption><\/figure><p><br>Another impressive progress is the number of my HTTP requests that dropped <strong>from 140 to 18<\/strong> upon activation of WP Rocket (-87%).<\/p><figure class=\"wp-block-image size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"524\" src=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/wrapping-up-fewer-http-requests-with-wp-rocket.png\" alt=\"Number of HTTP requests with WP Rocket \u2014 Source: GTmetrix\n\" class=\"wp-image-3710250\" style=\"width:800px;height:524px\" srcset=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/wrapping-up-fewer-http-requests-with-wp-rocket.png 800w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/wrapping-up-fewer-http-requests-with-wp-rocket-298x195.png 298w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/wrapping-up-fewer-http-requests-with-wp-rocket-768x503.png 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption class=\"wp-element-caption\">Number of HTTP requests with WP Rocket \u2014 Source: <a href=\"https:\/\/gtmetrix.com\">GTmetrix<\/a><br><\/figcaption><\/figure><p><br>Globally speaking, <strong>all my KPIs are better, and my website is much faster when using WP Rocket:<\/strong>&nbsp;<\/p><figure class=\"wp-block-table\"><table><tbody><tr><td><strong>KPIs<\/strong><\/td><td><strong>Score \u2014 No WP Rocket&nbsp;<\/strong><\/td><td><strong>Score \ud83d\ude80 With WP Rocket<\/strong><\/td><\/tr><tr><td>GTmetrix Overall Grade&nbsp;<\/td><td>E<\/td><td>A<\/td><\/tr><tr><td>Performance&nbsp;<\/td><td>55%<\/td><td>91%<\/td><\/tr><tr><td>Largest Contentful Paint (LCP)<\/td><td>2.7s<\/td><td>1.5s<\/td><\/tr><tr><td>First Contentful Paint (FCP)<\/td><td>2.4s<\/td><td>542 ms<\/td><\/tr><tr><td>Cumulative Layout Shift (CLS)<\/td><td>0.53 ms<\/td><td>0.37 ms<\/td><\/tr><tr><td>Time to Interactive (TTI)<\/td><td>3.6s<\/td><td>1 s<\/td><\/tr><tr><td>Total Blocking Time (TBT)<\/td><td>51ms<\/td><td>20 ms<\/td><\/tr><tr><td>Time To First Byte (TTFB)<\/td><td>806 ms<\/td><td>487 ms<\/td><\/tr><tr><td>Fully Loaded Time&nbsp;<\/td><td>10.2s<\/td><td>2.3s<\/td><\/tr><tr><td>Page Size&nbsp;<\/td><td>5.11 MB<\/td><td>604 KB<\/td><\/tr><tr><td>Total Page Requests<\/td><td>140&nbsp; <strong>(Best-in-class score: &lt; 50<\/strong>)<\/td><td>18 (<strong>Best-in-class score: &lt; 50)<\/strong><\/td><\/tr><\/tbody><\/table><\/figure><p>Our performance has globally improved with the WP Rocket cache plugin activated.&nbsp;<\/p><p>WP Rocket automatically applied almost all the techniques listed in the section &#8220;<a href=\"#make-fewer-http-requests\">How to Make Fewer HTTP Requests to Your Website<\/a>&#8220;.<\/p><p>From the WP Rocket\u2019s dashboard, you can see that my CSS code has been minified, combined, and optimized:&nbsp;<\/p><figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"490\" src=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/CSS-optimization.png\" alt=\"CSS optimization \u2014 Source: WP Rocket dashboard\n\" class=\"wp-image-3710258\" srcset=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/CSS-optimization.png 800w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/CSS-optimization-310x190.png 310w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/CSS-optimization-768x470.png 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption class=\"wp-element-caption\">CSS optimization \u2014 Source: WP Rocket dashboard<br><\/figcaption><\/figure><p><br>The same optimization has automatically been applied to my JS:<\/p><figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"744\" src=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/optimizing-JS-files.png\" alt=\"JS optimization - Source: WP Rocket dashboard\n\" class=\"wp-image-3710266\" srcset=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/optimizing-JS-files.png 800w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/optimizing-JS-files-210x195.png 210w, https:\/\/wp-rocket.me\/wp-content\/uploads\/2021\/09\/optimizing-JS-files-768x714.png 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption class=\"wp-element-caption\">JS optimization &#8211; Source: WP Rocket dashboard<br><\/figcaption><\/figure><h2 class=\"wp-block-heading\">Wrapping Up<\/h2><p><strong>WP Rocket helped to reduce HTTP requests of my WordPress site by 87%<\/strong>. In our case study, we saw that our requests went from 140 to 18 simply upon activation of the plugin. You do save time and effort!<\/p><figure class=\"wp-block-table\"><table><tbody><tr><td><strong>Without WP Rocket&nbsp;<\/strong><\/td><td><strong>\ud83d\ude80&nbsp; With WP Rocket&nbsp;<\/strong><\/td><\/tr><tr><td>140 HTTP Requests<\/td><td>18 HTTP Requests (-87%)<\/td><\/tr><tr><td><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/lh5.googleusercontent.com\/L1mNnAoVPimPcU2suz3fYwcJS8p1lpos2zTsXZYKqE6vVPKS9kYdSoHLHcj87X7JDvqzslsf2pKCcSGs6NU1ID8DlC0i4iavJmNQqRBoaRc0y3X1rWZPHlkv6LnsneUPoai4hWyG=s0\" width=\"286\" height=\"179\"><\/td><td><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/lh4.googleusercontent.com\/kOGPB8jN7QgK_1zy8N2a6w1fuPDFRkA6VrIleTt-9OdpgHUZiF0vDc86dD_4LXk-0hKKwgc9Hp4o542k3DXE1yaIjljeVa0DWbb8Ik9MsJ3nFhcrLpXa4_hYxyAyvdYBbihG3su9=s0\" width=\"286\" height=\"188\"><\/td><\/tr><\/tbody><\/table><\/figure><p>To maintain a great performance of your site, it\u2019s recommended to maintain the HTTP requests under 50. WP Rocket is a great automatic tool to never go over that number! It will boost performance by reducing and eliminating unnecessary HTTP requests \u2014 without any technical knowledge required on your part.&nbsp;<\/p><p>Work less and get better performance results thanks to <a href=\"https:\/\/wp-rocket.me\/pricing\/\">WP Rocket<\/a> today! We do have a 14-day money-back guarantee: if you are not satisfied, we refund you. Come on, give it a try and tell us how your HTTP requests are doing in the comments.&nbsp;&nbsp;<\/p>","protected":false},"excerpt":{"rendered":"<p>Want to make your site load faster? Reducing the number of HTTP requests your site makes can speed it up. <\/p>\n","protected":false},"author":188114,"featured_media":1483312,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"kia_subtitle":"","footnotes":""},"categories":[63],"tags":[],"class_list":["post-479452","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-wordpress-cache"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v23.4 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>How to Make Fewer HTTP Requests on Your WordPress Site<\/title>\n<meta name=\"description\" content=\"Want to make your site load faster? Reducing the number of HTTP requests your site makes can speed it up. Learn how here\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/wp-rocket.me\/blog\/reduce-http-requests-speed-wordpress-site\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to Make Fewer HTTP Requests on Your WordPress Site\" \/>\n<meta property=\"og:description\" content=\"Want to make your site load faster? Reducing the number of HTTP requests your site makes can speed it up. Learn how here\" \/>\n<meta property=\"og:url\" content=\"https:\/\/wp-rocket.me\/blog\/reduce-http-requests-speed-wordpress-site\/\" \/>\n<meta property=\"og:site_name\" content=\"WP Rocket\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/pages\/WP-Rocket\/631942253526829\" \/>\n<meta property=\"article:published_time\" content=\"2021-10-13T12:01:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-07-05T09:06:59+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/wp-rocket.me\/wp-content\/uploads\/1\/webpage-feature-image.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1100\" \/>\n\t<meta property=\"og:image:height\" content=\"460\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Marine Larmier\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@wp_rocket\" \/>\n<meta name=\"twitter:site\" content=\"@wp_rocket\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Marine Larmier\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"25 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/wp-rocket.me\/blog\/reduce-http-requests-speed-wordpress-site\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/wp-rocket.me\/blog\/reduce-http-requests-speed-wordpress-site\/\"},\"author\":{\"name\":\"Marine Larmier\",\"@id\":\"https:\/\/wp-rocket.me\/#\/schema\/person\/ad9f21665968e3071cede8110604959a\"},\"headline\":\"How to Make Fewer HTTP Requests on WordPress and Speed Up Your Site\",\"datePublished\":\"2021-10-13T12:01:00+00:00\",\"dateModified\":\"2024-07-05T09:06:59+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/wp-rocket.me\/blog\/reduce-http-requests-speed-wordpress-site\/\"},\"wordCount\":4141,\"commentCount\":21,\"publisher\":{\"@id\":\"https:\/\/wp-rocket.me\/#organization\"},\"image\":{\"@id\":\"https:\/\/wp-rocket.me\/blog\/reduce-http-requests-speed-wordpress-site\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/wp-rocket.me\/wp-content\/uploads\/1\/webpage-feature-image.png\",\"articleSection\":[\"Page speed and caching\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/wp-rocket.me\/blog\/reduce-http-requests-speed-wordpress-site\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/wp-rocket.me\/blog\/reduce-http-requests-speed-wordpress-site\/\",\"url\":\"https:\/\/wp-rocket.me\/blog\/reduce-http-requests-speed-wordpress-site\/\",\"name\":\"How to Make Fewer HTTP Requests on Your WordPress Site\",\"isPartOf\":{\"@id\":\"https:\/\/wp-rocket.me\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/wp-rocket.me\/blog\/reduce-http-requests-speed-wordpress-site\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/wp-rocket.me\/blog\/reduce-http-requests-speed-wordpress-site\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/wp-rocket.me\/wp-content\/uploads\/1\/webpage-feature-image.png\",\"datePublished\":\"2021-10-13T12:01:00+00:00\",\"dateModified\":\"2024-07-05T09:06:59+00:00\",\"description\":\"Want to make your site load faster? Reducing the number of HTTP requests your site makes can speed it up. Learn how here\",\"breadcrumb\":{\"@id\":\"https:\/\/wp-rocket.me\/blog\/reduce-http-requests-speed-wordpress-site\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/wp-rocket.me\/blog\/reduce-http-requests-speed-wordpress-site\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/wp-rocket.me\/blog\/reduce-http-requests-speed-wordpress-site\/#primaryimage\",\"url\":\"https:\/\/wp-rocket.me\/wp-content\/uploads\/1\/webpage-feature-image.png\",\"contentUrl\":\"https:\/\/wp-rocket.me\/wp-content\/uploads\/1\/webpage-feature-image.png\",\"width\":1100,\"height\":460},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/wp-rocket.me\/blog\/reduce-http-requests-speed-wordpress-site\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/wp-rocket.me\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Page speed and caching\",\"item\":\"https:\/\/wp-rocket.me\/blog\/wordpress-cache\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"How to Make Fewer HTTP Requests on WordPress and Speed Up Your Site\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/wp-rocket.me\/#website\",\"url\":\"https:\/\/wp-rocket.me\/\",\"name\":\"WP Rocket\",\"description\":\"Plugin d&#039;optimisation de sites WordPress\",\"publisher\":{\"@id\":\"https:\/\/wp-rocket.me\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/wp-rocket.me\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/wp-rocket.me\/#organization\",\"name\":\"WP Rocket\",\"url\":\"https:\/\/wp-rocket.me\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/wp-rocket.me\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/wp-rocket.me\/wp-content\/uploads\/1\/logo-wp-rocket-paypal-2.png\",\"contentUrl\":\"https:\/\/wp-rocket.me\/wp-content\/uploads\/1\/logo-wp-rocket-paypal-2.png\",\"width\":150,\"height\":41,\"caption\":\"WP Rocket\"},\"image\":{\"@id\":\"https:\/\/wp-rocket.me\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/pages\/WP-Rocket\/631942253526829\",\"https:\/\/x.com\/wp_rocket\",\"https:\/\/www.youtube.com\/channel\/UC1ozThXHd1IWIZ5wkshgp_Q\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/wp-rocket.me\/#\/schema\/person\/ad9f21665968e3071cede8110604959a\",\"name\":\"Marine Larmier\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/wp-rocket.me\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/0a77fe97a09a2f3875dbeb05e59c757f?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/0a77fe97a09a2f3875dbeb05e59c757f?s=96&d=mm&r=g\",\"caption\":\"Marine Larmier\"},\"description\":\"I have six years of experience writing and producing rich SEO content in the WordPress ecosystem. I worked remotely for four years at WPML while traveling the world. Based between France and New Zealand, I love traveling, yoga, sunsets, and world cuisine.\",\"sameAs\":[\"https:\/\/wp-rocket.me\/\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"How to Make Fewer HTTP Requests on Your WordPress Site","description":"Want to make your site load faster? Reducing the number of HTTP requests your site makes can speed it up. Learn how here","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/wp-rocket.me\/blog\/reduce-http-requests-speed-wordpress-site\/","og_locale":"en_US","og_type":"article","og_title":"How to Make Fewer HTTP Requests on Your WordPress Site","og_description":"Want to make your site load faster? Reducing the number of HTTP requests your site makes can speed it up. Learn how here","og_url":"https:\/\/wp-rocket.me\/blog\/reduce-http-requests-speed-wordpress-site\/","og_site_name":"WP Rocket","article_publisher":"https:\/\/www.facebook.com\/pages\/WP-Rocket\/631942253526829","article_published_time":"2021-10-13T12:01:00+00:00","article_modified_time":"2024-07-05T09:06:59+00:00","og_image":[{"width":1100,"height":460,"url":"https:\/\/wp-rocket.me\/wp-content\/uploads\/1\/webpage-feature-image.png","type":"image\/png"}],"author":"Marine Larmier","twitter_card":"summary_large_image","twitter_creator":"@wp_rocket","twitter_site":"@wp_rocket","twitter_misc":{"Written by":"Marine Larmier","Est. reading time":"25 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/wp-rocket.me\/blog\/reduce-http-requests-speed-wordpress-site\/#article","isPartOf":{"@id":"https:\/\/wp-rocket.me\/blog\/reduce-http-requests-speed-wordpress-site\/"},"author":{"name":"Marine Larmier","@id":"https:\/\/wp-rocket.me\/#\/schema\/person\/ad9f21665968e3071cede8110604959a"},"headline":"How to Make Fewer HTTP Requests on WordPress and Speed Up Your Site","datePublished":"2021-10-13T12:01:00+00:00","dateModified":"2024-07-05T09:06:59+00:00","mainEntityOfPage":{"@id":"https:\/\/wp-rocket.me\/blog\/reduce-http-requests-speed-wordpress-site\/"},"wordCount":4141,"commentCount":21,"publisher":{"@id":"https:\/\/wp-rocket.me\/#organization"},"image":{"@id":"https:\/\/wp-rocket.me\/blog\/reduce-http-requests-speed-wordpress-site\/#primaryimage"},"thumbnailUrl":"https:\/\/wp-rocket.me\/wp-content\/uploads\/1\/webpage-feature-image.png","articleSection":["Page speed and caching"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/wp-rocket.me\/blog\/reduce-http-requests-speed-wordpress-site\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/wp-rocket.me\/blog\/reduce-http-requests-speed-wordpress-site\/","url":"https:\/\/wp-rocket.me\/blog\/reduce-http-requests-speed-wordpress-site\/","name":"How to Make Fewer HTTP Requests on Your WordPress Site","isPartOf":{"@id":"https:\/\/wp-rocket.me\/#website"},"primaryImageOfPage":{"@id":"https:\/\/wp-rocket.me\/blog\/reduce-http-requests-speed-wordpress-site\/#primaryimage"},"image":{"@id":"https:\/\/wp-rocket.me\/blog\/reduce-http-requests-speed-wordpress-site\/#primaryimage"},"thumbnailUrl":"https:\/\/wp-rocket.me\/wp-content\/uploads\/1\/webpage-feature-image.png","datePublished":"2021-10-13T12:01:00+00:00","dateModified":"2024-07-05T09:06:59+00:00","description":"Want to make your site load faster? Reducing the number of HTTP requests your site makes can speed it up. Learn how here","breadcrumb":{"@id":"https:\/\/wp-rocket.me\/blog\/reduce-http-requests-speed-wordpress-site\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/wp-rocket.me\/blog\/reduce-http-requests-speed-wordpress-site\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/wp-rocket.me\/blog\/reduce-http-requests-speed-wordpress-site\/#primaryimage","url":"https:\/\/wp-rocket.me\/wp-content\/uploads\/1\/webpage-feature-image.png","contentUrl":"https:\/\/wp-rocket.me\/wp-content\/uploads\/1\/webpage-feature-image.png","width":1100,"height":460},{"@type":"BreadcrumbList","@id":"https:\/\/wp-rocket.me\/blog\/reduce-http-requests-speed-wordpress-site\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/wp-rocket.me"},{"@type":"ListItem","position":2,"name":"Page speed and caching","item":"https:\/\/wp-rocket.me\/blog\/wordpress-cache\/"},{"@type":"ListItem","position":3,"name":"How to Make Fewer HTTP Requests on WordPress and Speed Up Your Site"}]},{"@type":"WebSite","@id":"https:\/\/wp-rocket.me\/#website","url":"https:\/\/wp-rocket.me\/","name":"WP Rocket","description":"Plugin d&#039;optimisation de sites WordPress","publisher":{"@id":"https:\/\/wp-rocket.me\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/wp-rocket.me\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/wp-rocket.me\/#organization","name":"WP Rocket","url":"https:\/\/wp-rocket.me\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/wp-rocket.me\/#\/schema\/logo\/image\/","url":"https:\/\/wp-rocket.me\/wp-content\/uploads\/1\/logo-wp-rocket-paypal-2.png","contentUrl":"https:\/\/wp-rocket.me\/wp-content\/uploads\/1\/logo-wp-rocket-paypal-2.png","width":150,"height":41,"caption":"WP Rocket"},"image":{"@id":"https:\/\/wp-rocket.me\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/pages\/WP-Rocket\/631942253526829","https:\/\/x.com\/wp_rocket","https:\/\/www.youtube.com\/channel\/UC1ozThXHd1IWIZ5wkshgp_Q"]},{"@type":"Person","@id":"https:\/\/wp-rocket.me\/#\/schema\/person\/ad9f21665968e3071cede8110604959a","name":"Marine Larmier","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/wp-rocket.me\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/0a77fe97a09a2f3875dbeb05e59c757f?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/0a77fe97a09a2f3875dbeb05e59c757f?s=96&d=mm&r=g","caption":"Marine Larmier"},"description":"I have six years of experience writing and producing rich SEO content in the WordPress ecosystem. I worked remotely for four years at WPML while traveling the world. Based between France and New Zealand, I love traveling, yoga, sunsets, and world cuisine.","sameAs":["https:\/\/wp-rocket.me\/"]}]}},"_links":{"self":[{"href":"https:\/\/wp-rocket.me\/wp-json\/wp\/v2\/posts\/479452"}],"collection":[{"href":"https:\/\/wp-rocket.me\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wp-rocket.me\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wp-rocket.me\/wp-json\/wp\/v2\/users\/188114"}],"replies":[{"embeddable":true,"href":"https:\/\/wp-rocket.me\/wp-json\/wp\/v2\/comments?post=479452"}],"version-history":[{"count":0,"href":"https:\/\/wp-rocket.me\/wp-json\/wp\/v2\/posts\/479452\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wp-rocket.me\/wp-json\/wp\/v2\/media\/1483312"}],"wp:attachment":[{"href":"https:\/\/wp-rocket.me\/wp-json\/wp\/v2\/media?parent=479452"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wp-rocket.me\/wp-json\/wp\/v2\/categories?post=479452"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wp-rocket.me\/wp-json\/wp\/v2\/tags?post=479452"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}