A slow website loses customers — that’s a fact. But most advice on speeding up WordPress boils down to “move to VPS” or “hire a developer.” This is not always possible and not always necessary.
This article provides concrete steps that a store owner can take independently, without technical education, without changing hosting, and without involving a developer. Some of these steps show noticeable results just minutes after implementation.
- First, Measure Your Speed
- Step 1. Find and Disable Unnecessary Plugins
- Step 2. Install a Caching Plugin
- Step 3. Compress Images
- Step 4. Enable GZIP Compression
- Step 5. Clean the Database
- Step 6. Configure Script and Style Minification
- Step 7. Check Images for Correct Size
- Step 8. Update WordPress, Theme, and Plugins
- Step 9. Use a CDN for Static Files
- Step 10. Check Your Theme
- What Not to Do
- When DIY Steps Are Not Enough
- Summary: Where to Start Right Now
First, Measure Your Speed
Before changing anything — record the current state. Otherwise, it’s unclear whether what you did helped.
Google PageSpeed Insights (pagespeed.web.dev) — a free tool from Google. Enter your store’s URL and get a score from 0 to 100 for mobile and desktop versions, along with a prioritized list of specific issues.
GTmetrix (gtmetrix.com) — shows a detailed loading waterfall: which file loads how long and in what order. Useful for finding the specific “culprit” of slow loading.
Measure before and after each change. This way you’ll understand what really helped and what didn’t.
Step 1. Find and Disable Unnecessary Plugins
This is the first place to start because every active plugin adds PHP code that runs on every site request.
Go to the “Plugins” section in the WordPress admin and honestly ask yourself for each active plugin: “Is this plugin really being used right now?”
Typical candidates for disabling:
- plugins installed “to try out” but never configured
- duplicate functions — for example, two contact form plugins
- plugins for features already built into the theme
- SEO plugins, if there are several (one is enough)
- social media plugins that add “Share” buttons but no one uses them
Deactivate suspicious plugins one by one and check speed after each deactivation. When you find the one that slows down the site — the solution is obvious.
Step 2. Install a Caching Plugin
Caching is the most effective way to speed up WordPress without technical knowledge. Instead of generating the page anew on every visit, the server delivers ready HTML from the cache.
WP Super Cache — free, easy to set up, officially supported by Automattic (the creators of WordPress). For a small store, just enable it and leave default settings.
LiteSpeed Cache — free and very fast if your hosting runs on LiteSpeed (check with your provider). One of the best options for simplicity and results.
W3 Total Cache — powerful but requires careful configuration. Misconfiguration can break the cart or show one user another’s data. If unsure about settings — better choose WP Super Cache.
Important for WooCommerce: cart, checkout, and account pages must not be cached. Proper caching plugins exclude them automatically, but check settings manually — look for “Exclusions” or “Exclude pages” section and make sure /cart/, /checkout/, /my-account/ are listed.
Step 3. Compress Images
Images are the main source of page “weight” in an online store. Product photos in original size can weigh 3–5 MB each, while compressed versions fit well within 100–200 KB without noticeable quality loss.
Imagify — a plugin that compresses images automatically on upload and can recompress already uploaded files. There’s a free limit of 20 MB per month — enough for initial processing of a small store’s entire catalog.
After installation, go to Imagify settings and find the “Optimize all images” button — it will process all media files already uploaded to the site. This one-time operation can give a noticeable speed boost right now.
ShortPixel — an alternative to Imagify, works a bit better with PNG. Similar operation logic.
Lazy Load — images load not all at once when opening the page, but as you scroll. Modern browsers support this without plugins, but if your theme is old — look for “Lazy Load” in the WordPress repository.
Step 4. Enable GZIP Compression
GZIP compresses text files (HTML, CSS, JS) before sending them to the browser. A 100 KB page after compression becomes 20–30 KB. The browser receives less data, so the page loads faster.
On most hostings, GZIP is already enabled. You can check at gzip-compression.com: enter your page URL and see if compression is working.
If it’s not working — enable it in the .htaccess file in the site root (for Apache servers) or via hosting settings. Many caching plugins enable GZIP automatically.
Step 5. Clean the Database
Over time, the WordPress database accumulates junk: order drafts, outdated cart sessions, post revisions, temporary plugin data. This slows queries and takes up space.
WP-Optimize — a plugin for cleaning and optimizing the database. After installation, it shows how much junk has accumulated and what can be deleted. You can set up automatic cleaning on a schedule.
What is usually safe to delete:
- post revisions (old versions of texts)
- draft posts and pages
- spam comments
- outdated transient data
- completed cart sessions
Important: make a database backup before cleaning. Most hostings provide this feature in the control panel.
Step 6. Configure Script and Style Minification
Minification removes spaces, line breaks, and comments from CSS and JS files that developers need but browsers don’t. The file becomes smaller and loads faster.
Autoptimize — a free plugin that does this automatically. Default settings are safe for most sites.
After enabling, be sure to check that the store works correctly: go through the process from product selection to checkout. Sometimes aggressive script combining breaks functionality — in this case, Autoptimize settings allow disabling JS combining while keeping minification.
Step 7. Check Images for Correct Size
A common mistake: an image is uploaded at 2000×2000 pixels but displayed in the product card as 300×300. The browser still downloads the full image and scales it on the fly — this is unnecessary load.
WooCommerce has built-in thumbnail sizes: for product cards, product pages, and cart. Make sure you upload reasonably sized images — 1200×1200 is enough for product pages, no need for larger.
If old images are uploaded at too large a size — the Regenerate Thumbnails plugin will recreate all thumbnails in the correct sizes.
Step 8. Update WordPress, Theme, and Plugins
It sounds trivial, but outdated versions run slower. Developers regularly optimize code, and every major WordPress update traditionally brings performance improvements.
Go to “Updates” in the admin panel and update everything available. Make a site backup before updating.
Step 9. Use a CDN for Static Files
A CDN (Content Delivery Network) delivers images, CSS, and JS from servers located closer to the user. For a store with an audience across Russia, this reduces static file loading time.
Cloudflare — the free plan covers basic needs: CDN, bot protection, basic performance settings. It connects via DNS change without hosting modifications.
Cloudflare also offers automatic CSS/JS minification and Brotli compression — enabled in settings with a couple of clicks.
Step 10. Check Your Theme
A heavy theme with a visual builder (Elementor, WPBakery, Divi) adds significant code volume to every page — even if you don’t use all its features.
If speed is critical and the theme was originally chosen for its “beauty” — consider switching to a lightweight theme. Astra, GeneratePress, Kadence — fast, well compatible with WooCommerce, and flexible enough for most stores.
This is no longer “without a developer,” but changing a theme is easier and cheaper than changing hosting.
What Not to Do
Install ten “optimization” plugins. Each plugin adds load. Paradoxically, three optimization plugins slow down more than one well-configured one.
Enable everything at once in the caching plugin. Aggressive settings can break dynamic store elements. Start with basic settings, check functionality, then gradually add features.
Delete “junk” from the database without a backup. Always make a backup before cleaning.
Ignore the mobile version. Google primarily evaluates speed for mobile. Check PageSpeed on the mobile tab specifically.
When DIY Steps Are Not Enough
The steps described above cover most typical performance issues. But there are cases when a developer is necessary:
- slow database queries due to poorly written plugin or theme code
- checkout page slows down due to conflicts between multiple plugins
- need for deeper optimization for high load
- hosting is truly a bottleneck and migration is needed
In these cases, the first step is to precisely identify the cause using Query Monitor or a profiler, then address it specifically.
Summary: Where to Start Right Now
If you want to do just one thing right now — install a caching plugin and compress images. These two steps give the biggest speed boost with minimal effort.
Complete sequence for self-optimization:
- Measure speed in PageSpeed Insights
- Disable unnecessary plugins
- Install a caching plugin
- Compress images using Imagify or ShortPixel
- Enable GZIP
- Clean the database using WP-Optimize
- Enable minification via Autoptimize
- Measure speed again and compare
If after all this the store still runs slowly — the problem is deeper and needs targeted investigation.
If you want someone to analyze your store’s performance — write about your issue, we’ll see exactly where the bottleneck is and how to fix it.


