11 Reasons Your Website Loads Slowly

11 reasons for slow loading websites hero image

While there are a number of reasons your site may be performing slowly, the majority of explanations can be traced back to poor website optimization, website design, caching, and network optimization. In this article, we will explore each of these reasons and provide examples and basic instructions for overcoming site slowness.

Topics Include:

Is your website slow? Learn the components of a fast website
Infographic explaining the elements of a fast website

1. Unoptimized Code

While many different coding languages and technologies are used to develop websites, three resources that can be found within many modern websites are JavaScript, CSS, and a database. Developers use these tools to build engaging websites and store important data. Unfortunately, some websites use code that is poorly optimized, making their pages take longer to load and leading to an unsatisfactory user experience.

Optimizing JavaScript

JavaScript is the programming language responsible for many of the interactive, responsive features you see on modern websites. Slick animations, dynamic menus, and engaging visual elements are commonly developed using JavaScript. If this code is poorly implemented into a website, it can cause some page elements to delay the loading of the entire page. 

To resolve this, try using JavaScript inline within the HTML site code itself, rather than having the site code refer to a separate JavaScript file. More information about this type of issue can be found in the later section of this article entitled Excessive HTTP Requests.

Render Blocking Scripts

Occasionally, a slow website can result from a poorly-written script. A script is a list or series of commands that can be used to execute tasks within applications. If the script is improperly written, the site might get stuck trying to execute the commands, thus delaying the loading of other page elements.  This can be avoided through the use of asynchronous loading. Asynchronous loading allows JavaScript to load independently from the rest of the page or defer it entirely until after the page has finished loading.

Unoptimized JavaScript can interfere with the normal functioning of other page elements, further slowing down your website. Using tools such as GTmetrix can help you pinpoint the files that are causing problems and allow you to investigate further.

Optimizing CSS

Just as with JavaScript, CSS is a tool used in the creation of web pages. And just like JavaScript, unoptimized CSS can cause sites to load more slowly. Fortunately, resolving this can be done in much the same way as optimizing your JavaScript code. 

To reduce the number of files the site needs to find in order to load, combine multiple CSS files into a single master file, or at least a smaller number of files. 

To help the site avoid needing to refer to an external file for CSS, use CSS code directly inline with the HTML site code.

Optimizing Databases

MySQL and other database systems can suffer from something called “overhead”, which is a term used to describe the bloat of log data and other entries that accumulate over time. When too much overhead is present, the database can perform more slowly and even time out entirely. This means a slower, less reliable website.  

Fortunately, of all three of the optimizations discussed so far, optimizing databases is perhaps the easiest. Many modern web servers use phpMyAdmin, a tool that allows for database modification directly in a web browser. Optimizing a database with phpMyAdmin is as easy as logging in and using the Optimize function on the database of choice.

2. Lack of Image/Video Optimization

While it is tempting to use high-resolution images or videos on your website, it is important to remember that these demanding page elements take longer to load. This can be due to images that are too large, or too high-quality. 

To overcome these limitations, you should make sure images are not larger than necessary. For example, if your image is displaying at 400 x 600 pixels it should not be uploaded as 768 x 1024. Since it is unnecessarily large it will result in one of two things:

  1. You will have to resize the image before it loads, for example using PHP. This not only causes a delay, but it uses your server’s resources.
  2. The visitor will load the full-sized image (768 x 1024) which takes time.

In this example, you should resize the 768 x 1024 image to 400 x 600 on your computer using an image editor and then upload it to your website or server.

Along with resizing images, you should optimize them using one of a variety of data compression techniques. For example, you can ensure your web host has Brotli compression available on their server instead of Gzip which can result in faster load times.

Unfortunately, compressing video is a bit harder, so you may want to consider hosting those externally on a site such as YouTube or Vimeo and then embedding those into your web page. 

As a general rule, images over 1MB in size are considered too large for an optimized site.

3. Load Spikes

If you are on a shared hosting environment, server load spikes are something that can happen from time to time due to multiple users all sharing the same physical hardware. While we work as hard as possible to keep these to a minimum by monitoring the servers 24/7 and taking action as soon as we see high activity, any shared hosting environment can be susceptible to this issue.

If you start to feel as though you are exceeding the limits of shared hosting, it may be time to consider upgrading to VPS hosting of the cloud or easy-to-use cPanel server variety. With a VPS, you’ll have more resources to continue expanding your online business. Best of all, since you aren’t sharing server space with other users, you have total control over your hosting experience. That being said, even a VPS platform can be hindered by unexpected load spikes. 

Contacting our support team which is available 24/7 can provide you with more insight into any ongoing service issues. We also have a server status page that can provide additional information in the event of an outage. 

4. Data Compression Not Being Used

One of the most popular forms of data compression used on modern web pages is gzip compression. This form of compression compresses each file before it is sent to the browser visiting the page, which then decompresses the file. This speeds up site loading times by decreasing the size of the data being transferred between the server and the browser. 

To get a good baseline of how your site is performing, you could use a tool called GTmetrix to evaluate information on your site and provide you with some insight into what your site may be able to improve on. Even if your site is quick, this can help you make your code faster and lighter to help with server load– allowing more individuals to be on your site simultaneously without further increasing server load.

5. Inefficient Web Design

While the above issues result from unoptimized site code, poor web design choices can result in a website that is less responsive and loads more slowly.

It can be tempting to maximize the monetary potential of your website by including space for a large number of advertisements. Unfortunately, these page elements can sometimes use complex animations or high-resolution graphics that will ultimately slow down how fast your site loads. Your best bet is to find a happy medium between a page dense with ads and a page that loads quickly.

User Experience (UX)

There are hundreds of guides for improving the user experience (UX) for every popular content management systems (CMS). These are especially beneficial for those running eCommerce sites. For example, A/B user segmentation testing for tailoring the site to users of different demographics attracts more customers. Web analytics software can help with this as well.

6. Excess Plugins

Even though plugins can turn a simple website into a feature-rich, dynamic online space, there are unseen costs associated with them. The more plugins you install, the more the server has to handle whenever the page loads. This is particularly true for plugins that create public-facing page elements that load for all visitors to the website. It is also possible for plugins to draw resources even when they are not in use. To avoid this, uninstall any plugins that you are no longer using.

7. Ineffective Caching

Caching is a feature of web servers that allows for the temporary storage of copies of frequently accessed pieces of data. When used properly, caching prevents users from needing to reload portions of the same website every time they visit the page. There are many types of caching and caching software, so it is important to identify which works best for you. We recommend using W3 Total Cache, a powerful caching plugin for WordPress websites.

8. Poor Network Optimization

Sometimes a website loads slowly due to network-related issues, not issues with the website or server. This can be the result of poor internet service or unexpected spikes in traffic. In other contexts, it may be due to the physical distance between the user and the server.

Fortunately, there are ways to optimize your network to avoid many of these obstacles. For example, some users configure a third party DNS resolver on their web browser or local router.

9. Content Delivery Network

One popular way for websites to optimize their site speed all over the world is by leveraging the services of a CDN, or Content Delivery Network. These services provide servers in data centers in various geographic locations that essentially store local copies of website data. These local copies can be more quickly accessed by users located nearby, since the data doesn’t need to travel as far. If your site has a large amount of visitors from all over the world, a CDN is likely the right choice for you.

BootstrapCDN and Cloudflare are popular examples that can vastly enhance performance.

10. Connectivity Issues

Sometimes a site loads more slowly because of an issue on the end of the internet service provider (ISP), not the web hosting provider. A home or business network may struggle to connect to a website if the ISP is experiencing an outage or technical malfunction. These types of situations are difficult to resolve, since it depends on the ISP resolving the issue. Generally, these service providers have hotlines to report outages or service degradation.

Your site may also be performing slow due to a connection issue between your computer and our network which may need further investigation. To do so, you can run ping and traceroute tests which provide more insight into what your connection is doing every step of the way.

11. Excessive HTTP Requests

Every time a file is loaded on your site, an HTTP request is made to the server. This means that the more files your site has, the more HTTP requests are sent to the server. If you have a large number of files frequently accessed on your site, you may encounter an issue with too many HTTP requests bogging down the server.

To reduce the number of files the site needs to find in order to load, try combining multiple CSS files into a single master file, or at least a smaller number of files. 

To avoid excessive HTTP Requests, consolidate your site files and consider using minification to reduce the number of site files users need to load when visiting your site.

Also, ensure the HTTPS redirects work properly. This is a quick way to improve security and search engine optimization (SEO) at once.

Trust your website to an industry leader in website hosting. Secure web hosting with InMotion Hosting and enjoy 99.99% uptime, 24/7/365 technical support, and risk-free money-back guarantee.

John-Paul Briones Content Writer II

John-Paul is an Electronics Engineer that spent most of his career in IT. He has been a Technical Writer for InMotion since 2013.

More Articles by John-Paul


  • Why is my my document not uploading for the reader? It did yesterday. This morning, an old version of my website was showing for readers. I save (by whatever term you use) whenever I make changes. Later in the morning, a more recent version was available to put up on my website, but the documents were not uploading for readers. This is totally unacceptable. What’s wrong?

    • Unfortunately, I’m unable to advise what is happening in your situation. How are you trying to upload these files you mentioned for your website? What software did you use to build your website? These details are necessary, along with the exact steps to replicate the error/issue you are experiencing in order to provide a proper diagnosis and/or resolution.

  • What can I do to make my websites load faster. I have just started with InMotion and the loading speed is conciderably less.

  • I am considering changing my host services due to ongoing slow loading of my website pages.  Is there anything you can offer before I start exploring my options? Thank you.

    • Everything we offer is on the front page of our website. However, you will need to purchase hosting in order to get the full experience. In you’re unhappy with any services, we do offer a refund.

    • I will change my hosting server too during I contact them can’t support hosting very slow I/O very low we can’t do anything for our clients.

      • We have hosting plans with enhanced performance –

        If you’re looking for ways to improve performance on our Shared server plans, please contact our Live Support.

  • I just created a account today and in the process of building it. It a wordpress woocommerce site. Right now it consist of bare basic no editing and adding information consist of like 600k of data…… Yet it slow taking like 6 secs to load the main screen… I ran comprassions a couple other sites I have work on in the past hosted on godaddy the so much faster… I going nuts this stuff a snail… What can I do if anything vectorjo.com  before cancel the account and requesting a refund…. 

    Thanx =) 


    • I recommend implementing some sort of cache plugin for your website. Additionally, check out the recommendations based on the analysis from this third party tool GTMetrix. Their website provides many insights and recommendations to assist you with improving a slow loading site.

  • I have shifted my website on Godaddy dedicated server. before shifting it was very fast. now is is very slow. please suggest what to do.

    Microsoft Windows [Version 10.0.14393]

    (c) 2016 Microsoft Corporation. All rights reserved.

    C:\Users\hp> ping infocusindia.co.in

    Pinging infocusindia.co.in [] with 32 bytes of data:

    Request timed out.

    Reply from bytes=32 time=314ms TTL=44

    Reply from bytes=32 time=327ms TTL=44

    Reply from bytes=32 time=366ms TTL=44

    Ping statistics for

    Packets: Sent = 4, Received = 3, Lost = 1 (25% loss),

    Approximate round trip times in milli-seconds:

    Minimum = 314ms, Maximum = 366ms, Average = 335ms

    C:\Users\hp> tracert infocusindia.co.in

    Tracing route to infocusindia.co.in []

    over a maximum of 30 hops:

    1 9 ms 1 ms 3 ms

    2 * * * Request timed out.

    3 120 ms 56 ms 49 ms

    4 35 ms 47 ms 38 ms

    5 47 ms 26 ms 46 ms

    6 49 ms 34 ms 51 ms

    7 56 ms 45 ms 41 ms

    8 44 ms 24 ms 37 ms

    9 73 ms 56 ms 66 ms

    10 63 ms 59 ms 71 ms

    11 75 ms 57 ms 64 ms

    12 188 ms 196 ms 191 ms

    13 206 ms 158 ms 168 ms mei-b1-link.telia.net []

    14 201 ms 207 ms 184 ms level3-ic-314743-mei-b1.c.telia.net []

    15 * * * Request timed out.

    16 317 ms 395 ms 512 ms

    17 334 ms 407 ms 404 ms be39.trmc0215-01.ars.mgmt.phx3.gdg []

    18 671 ms 315 ms 310 ms be39.trmc0215-01.ars.mgmt.phx3.gdg []

    19 * * * Request timed out.

    20 * *

    • Since you are getting packet loss, I recommend contacting your ISP and providing this as evidence.

      Thank you,

  • I found by upgrading my PHP to 7.0 that I was able to get a faster server responce time. Maybe, don’t quote me, but BoldGrid might require PHP 7.0. If so, they need to have this be the norm for all accounts.

    I’ve used other hosting providers and they (InMotion) seemed to have better plans. InMotion has better customer service (they recommended the PHP upgrade and it worked), but I need more than service help. I need you to lay out what is needed initially. I came on to InMotion to provide a client with a quick, fresh website utilizing BoldGrid (based on the good recs from developer freinds) and was happy with the easy of development. However, I’ve run into many roadblocks that almost make BoldGrid a hinderace. I could probably come up with the same layout in bootstrap in 3 hours. But this is WordPress, so I dregress.


    Anyways, upgrade your PHP.

    • Hello AJ,

      Thank you for contacting us. Since BoldGrid is powered by WordPress, “PHP 7 or greater” is recommend (source). Typically our servers are using PHP 5.6 for compatibility, but we provide a tool in cPanel to easily change your PHP version at any time.

      Yes, BoldGrid just uses bootstrap for the layout, and you could easily hand code it yourself if you have time. Let us know what issues you are having, we are happy to help you work through any roadblocks in BoldGrid or WordPress.

      Thank you,

  • Thank you Apachebooster, its working for us. The server performace has increased after we tried your product.

    • Hello Jeff,

      A really good indicator of your site performance is GTMetrix. Go to that site, and plug in your website name. You’ll see a report that explains why they believe your site is performing the way it is. Quite simply, you’re loading a ton large graphics all at once. It may seem like you’re seeing one at a time, but the website is loading them all at once. If you click on each item in the GTMetrix report, you’ll also be given information and description of each item.

      To help fix the issue, you may want to look at using gzip compression in OpenCart. You will also want to look in to using caching in Opencart. Additionally, if you want to continue using a lot of graphics on the first page, then you may want to consider a CDN to speed up the load of the graphics. I think overall however, that you may want to consider bringing down the number of graphics that are loading on the front page. All of these steps will help to lessen the load that is occurring when you first bring up your site.

      I hope that helps you get started. Please let us know if you have any further questions or comments.

      Arnel C.

    • one of the easiest and effective method is to install “Apachebooster” on the server. This will enhance the server cache and thus make the server much faster.

    • Hello Jeff,

      I’m sorry that you’re having problems with your website. However, you have given us NO information about your website or if there are any possible problems that you’re having. Can you please provide some detail about the problem? We would appreciate a URL (or account user name), any description of what you’re doing with the website when you see the problem. We would want to be able to duplicate the steps you’re taking to see the problem.

      Please provide us some further information and we would happy to help.

      Arnel C.

    • Hello Jeff,

      Sorry to hear you’re having a problem with the website speed. Unfortunately, you have given us no information that we can use to help determine your problem. Please provide a URL (or account user name) so that we can look at the website. Also, please provide any steps you’re taking so that we can duplicate the issue and see what you’re seeing.

      Please provide this information and we would be happy to help!

      Kindest regards,
      Arnel C.

Leave a Reply to Zuzu Petals Cancel reply