Skip to content

Find a lower .io price anywhere and we’ll beat it, including on 1, 2 and 3-year registrations.

New: manage your hosting from Claude & ChatGPTNew: Spark, build a website by chatting
Globalhostia
Servers

How to Speed Up Your Website: A Step-by-Step Checklist

How to Speed Up Your Website: A Step-by-Step Checklist
In this article9 sections
  1. Slow website causes: rule out the usual suspects first
  2. Step 1: Measure to speed up website performance with a baseline
  3. Step 2: Image optimisation, usually the biggest single win
  4. Step 3: Caching, so the server does less work each visit
  5. Step 4: Trim what the browser has to download and run
  6. Step 5: Check the server, database and location
  7. When hosting is the bottleneck: moving from shared to a VPS
  8. The checklist in order, with a re-test routine
  9. Frequently asked questions

To speed up website performance, measure first, then fix the biggest bottleneck: oversized images, missing caching, heavy scripts or an under-sized server. Work through them in that order and re-test after every change, so you know which fix actually helped. This checklist is written for business owners, freelancers and developers who want a clear sequence rather than a list of random tips.

Slow website causes: rule out the usual suspects first

Most slow sites are slow for one or two reasons, not ten. Before installing a plugin or changing your plan, match the symptom you see to the likely cause.

Symptom Likely cause Where to look
Page is blank for a long time, then everything appears Slow server response, no page caching, slow database queries Time to first byte in your test tool
Main banner or hero image appears late Oversized or unoptimised images, render-blocking CSS Largest Contentful Paint element
Page jumps around while loading Images without dimensions, late-loading fonts or ads Layout shift reports
Buttons respond slowly after the page looks ready Too much JavaScript, heavy third-party tags Interaction timings, browser performance panel
Fast at night, slow at busy times Shared resources exhausted, traffic spikes Hosting resource graphs, error logs
Fast for you, slow for visitors abroad Server far from your audience, no CDN Tests from several locations

The pattern matters more than any single number. A site that is slow only on the first request points to the server; a site that loads quickly but feels sluggish points to the front end.

Step 1: Measure to speed up website performance with a baseline

Without a baseline, you cannot tell whether a change helped. Spend ten minutes on this before touching anything.

  1. Pick three to five representative pages: the homepage, a key landing page, a product or service page, and (for shops) the checkout.
  2. Test each in a lab tool such as Lighthouse in Chrome DevTools or a public page-testing service. Run each test two or three times and note the typical result, because single runs vary.
  3. Record the main metrics in a simple spreadsheet with the date.
  4. If your site has enough traffic, check real-user data as well, since lab tests simulate one device and connection.

Core Web Vitals in plain terms

Core Web Vitals are Google's three user-experience measurements. According to the web.dev guidance on Web Vitals, a page is considered good when:

  • Largest Contentful Paint (LCP) is 2.5 seconds or less: how quickly the main content appears.
  • Interaction to Next Paint (INP) is 200 milliseconds or less: how quickly the page reacts to taps and clicks.
  • Cumulative Layout Shift (CLS) is 0.1 or less: how stable the layout stays while loading.

These are useful targets, but treat them as a guide to a better experience for visitors rather than a promise of any ranking outcome.

Step 2: Image optimisation, usually the biggest single win

Images are often the heaviest part of a page, and they are the safest thing to fix. Work through this list.

  • Resize to the displayed size. A 4000-pixel-wide photo shown in a 800-pixel column wastes bandwidth. Export at roughly the largest size it will actually display, allowing for high-density screens.
  • Use modern formats. WebP or AVIF are usually much smaller than JPEG or PNG at similar visual quality. Keep a JPEG fallback only if you must support very old browsers.
  • Compress sensibly. Lossy compression at a moderate quality setting is rarely visible on photos. Use PNG or SVG for logos and flat graphics.
  • Lazy-load below-the-fold images with the native loading="lazy" attribute, but do not lazy-load the main hero image, as that delays LCP.
  • Set width and height attributes on every image so the browser reserves space and avoids layout shift.
  • Preload the hero image if it is your LCP element and is referenced from CSS rather than the HTML.
  • Replace autoplay video backgrounds with a compressed poster image unless the video is essential.

On WordPress, an image optimisation plugin can convert and resize uploads automatically, but check the result: bulk-converting a large media library can take time on a busy server, so run it off-peak.

Step 3: Caching, so the server does less work each visit

Caching stores the result of work already done so it can be reused. There are four layers, and you usually want more than one.

Page caching

Dynamic sites such as WordPress build each page from database queries and PHP on every request. A page cache saves the finished HTML and serves that to anonymous visitors. This is typically the largest improvement to server response time on a CMS-driven site. Exclude the cart, checkout and logged-in account pages from the cache.

Browser caching

Static files such as images, CSS, JavaScript and fonts can be stored in the visitor's browser. Set a long Cache-Control max-age for files whose names change when their content changes (versioned or hashed filenames), and a shorter one for files that do not. The MDN guide to HTTP caching explains the headers in detail.

Object caching

For database-heavy sites such as shops and membership sites, an object cache (commonly Redis or Memcached) keeps the results of repeated queries in memory. It helps most on pages that cannot be fully page-cached.

CDN caching

A content delivery network keeps copies of static files closer to visitors. It is most useful when your audience is spread across several regions.

A common pitfall is stacking several caching plugins that fight each other. Use one page-cache solution, clear it after design changes, and test logged-out, since that is what most visitors see.

Step 4: Trim what the browser has to download and run

Once images and caching are sorted, look at the front end.

  1. Audit plugins and themes. Deactivate anything you do not use. A plugin that loads scripts on every page for a feature used on one page is a common culprit.
  2. Remove or delay third-party scripts. Chat widgets, tracking tags, heat-map tools and social embeds all add requests. Keep what you actually review; load the rest only on pages that need them.
  3. Minify and combine carefully. Minifying CSS and JavaScript reduces size. Combining files matters less on modern HTTP/2 connections and can cause breakage, so test after enabling it.
  4. Defer non-critical JavaScript so it does not block the page from rendering.
  5. Limit web fonts. Use one or two families and only the weights you need. Use font-display: swap so text stays visible while fonts load.
  6. Enable compression. Gzip or Brotli on text files is a standard server setting and usually a quick win.
  7. Confirm HTTPS and HTTP/2 or HTTP/3 are active. A properly installed SSL certificate is required for these modern protocols in browsers.

Change one thing at a time and re-test. If a setting breaks the layout, you will know exactly which one to undo.

Step 5: Check the server, database and location

If the page is slow before any content arrives, the issue is on the server side. Check these in order.

  • PHP version. Running a currently supported PHP version is generally faster and more secure than an old one. Check that your theme and plugins support it, and test on a staging copy first.
  • Database health. Clear expired transients, old post revisions, spam comments and orphaned data. Slow queries in a shop or large blog can dominate load time.
  • Resource limits. Check your hosting panel for CPU, memory and process limits being hit at busy times. Repeated limit warnings mean tuning will only go so far.
  • Server location. Distance adds latency. If most of your customers are in one region, host near them or use a CDN. You can compare locations with the data centers and network latency test.
  • Bots and abuse. A burst of automated requests can slow a site for real visitors. Look at access logs for unusual patterns and block or rate-limit them.

A useful rule of thumb: if you have optimised images, enabled caching and removed heavy scripts, but server response is still consistently slow, the hosting plan is the next thing to examine.

When hosting is the bottleneck: moving from shared to a VPS

Shared hosting is a sensible start for brochure sites and small blogs, because resources are pooled between accounts. It stops being enough when your site needs consistent resources: a growing shop, a membership site, several WordPress installs, or custom applications that need specific software.

Signs that it is time to move:

  • Response times are slow at busy periods even with caching enabled.
  • You regularly reach CPU, memory or process limits.
  • You need Redis, a specific PHP configuration or other software your plan does not allow.
  • Traffic is growing and you want dedicated, predictable resources.

A VPS gives you an isolated slice of a server with guaranteed allocation of CPU and memory to your account, plus root-level control. The trade-off is responsibility: someone has to manage updates, security and tuning. Read the comparison of managed vs unmanaged VPS before deciding, and see how to choose a VPS size so you do not over- or under-buy. For a wider view, the shared vs VPS vs cloud vs dedicated comparison lays out the options, and the article on shared hosting vs VPS covers the decision in more depth.

If the site runs on WordPress and you would rather not manage a server, WordPress hosting is worth looking at. If you do move, free website migration means you do not have to rebuild anything by hand.

The checklist in order, with a re-test routine

Use this sequence for every slow page. Stop as soon as you reach your targets.

  1. Record a baseline on three to five key pages.
  2. Resize, compress and convert images; lazy-load below the fold; set image dimensions.
  3. Turn on page caching and browser caching; add object caching if the site is database-heavy.
  4. Remove unused plugins and third-party scripts; defer non-critical JavaScript.
  5. Enable compression, HTTPS and a modern HTTP version.
  6. Update PHP, clean the database and check resource graphs.
  7. Test from the regions where your customers are.
  8. If the server is still the limit, upgrade the plan or move to a VPS.

Re-test after each step and keep notes. Check again after any major change such as a new theme, a new plugin or a marketing campaign that adds tags to every page. Performance drifts back over time, so a quarterly check is a reasonable habit.

If your site has outgrown shared resources, take a look at our VPS hosting options for dedicated resources and room to grow, backed by our Dubai-based support team.

Frequently asked questions

What is the fastest way to speed up a slow website?

Start by compressing and resizing images and enabling page caching, because these two changes usually reduce load time the most for the least effort. Measure before and after so you can confirm the result. If response time is still slow, look at the server and hosting plan.

Do Core Web Vitals affect my business even if I do not care about search?

They measure things visitors feel: how fast content appears, how quickly the page responds and whether the layout jumps. Pages that score well on them tend to be less frustrating to use, which matters for enquiries and sales. Treat them as user-experience targets rather than a ranking promise.

Will a caching plugin fix a slow website on its own?

Often it helps a lot, especially for WordPress, but it cannot fix oversized images, heavy scripts or an overloaded server. Caching reduces the work the server repeats, so it works best alongside the other steps. Use one caching solution and test while logged out.

How do I know if my hosting is the problem?

If server response time is consistently slow even after caching, or you keep hitting CPU and memory limits at busy times, the plan is likely the constraint. Slowness that appears only when other things are busy, or only for distant visitors, points to resource sharing or location. Your hosting panel's resource graphs and a multi-location test will show which.

How often should I test my website speed?

Test after any significant change, such as a new plugin, theme or tracking script, and run a routine check roughly every quarter. Keep your baseline spreadsheet so you can spot gradual slowdowns early.

Plans that fit

Hand-picked for this article. Every plan comes with engineers on call around the clock.

Linux VPS 6 GB

4 vCPU Cores, 6GB

$8.00/ month

Billed monthly

Renews at $8.00 / month · +VAT 5% where applicable

  • CPU: (4 vCPU Cores)
  • RAM: 6 GB RAM
  • Storage: 100 GB NVMe
  • Bandwidth:: 32 TB traffic with 250 Mbps*
Recommended

Linux VPS 16 GB

6 vCPU Cores, 16GB

$18.18/ month

Billed monthly

Renews at $18.18 / month · +VAT 5% where applicable

  • CPU: (6 vCPU Cores)
  • RAM: 16 GB RAM
  • Storage: 200 GB NVMe
  • Bandwidth:: 32 TB traffic with 500 Mbps*

Linux VPS 24 GB

8 vCPU Cores, 24GB

$25.45/ month

Billed monthly

Renews at $25.45 / month · +VAT 5% where applicable

  • CPU: (8 vCPU Cores)
  • RAM: 24 GB RAM
  • Storage: 300 GB NVMe
  • Bandwidth:: 32 TB traffic with 750 Mbps*

Linux VPS 48 GB

12 vCPU Cores, 48GB

$47.27/ month

Billed monthly

Renews at $47.27 / month · +VAT 5% where applicable

  • CPU: (12 vCPU Cores)
  • RAM: 48 GB RAM
  • Storage: 400 GB NVMe
  • Bandwidth:: 32 TB traffic with 1 GBPS*
Prices shown live from our billing system, in USD.

What you get with GlobalHostia

  • 24/7 supportEngineers on call by phone, email, WhatsApp and ticket, at any hour.
  • Automatic setupYour service is set up automatically as soon as payment is confirmed.
  • Global datacentersHost close to your visitors in datacenters on several continents.