Speed advice usually fails because it starts with tactics. A plugin is installed, a setting is toggled, and nothing measurable changes. Start with a number, fix the heaviest thing, and measure again. On shared hosting, the goal is not a perfect score; it is a page that becomes usable quickly and stays that way as you add content.
Measure before you touch anything
Run PageSpeed Insights on your home page and one article page. It reports lab data from a simulated mobile device and field data from real visitors when enough traffic exists. Lighthouse in the browser gives the same lab tests with more detail. Record four numbers: Largest Contentful Paint, Total Blocking Time, Cumulative Layout Shift, and total page weight.
Test with cache enabled and disabled, because the first visit is the one that feels slow. Use a private window and a throttled connection. A site that scores well on a desktop fiber line can still take six seconds on a mid-range phone.
The seven steps, in order
- Compress and resize images.
- Reduce font and script weight.
- Enable page and browser caching.
- Audit plugins and remove overlap.
- Clean database bloat.
- Simplify the theme and page structure.
- Work within the fair-use limits instead of fighting them.
Steps 1 and 2: images, fonts, scripts
Images are usually the largest download. Resize them to the widest size they will actually display, export as WebP or AVIF with a fallback, and compress to 70 or 80 percent quality. Add width and height attributes so the layout does not jump, and enable lazy loading for images below the fold. Never upload a 4000-pixel photo for an 800-pixel column.
Fonts are the second hidden cost. Two weights of one family are usually enough; each extra weight is another file. Prefer system fonts when the design allows it. For scripts, remove sliders, chat widgets, and tracking tags you do not use, then defer non-critical JavaScript. Test after each removal; a broken feature is worse than a slow one.
Steps 3 and 4: caching and plugins
Page caching turns a dynamic PHP request into a stored HTML file, which is the single biggest win on shared hosting. Enable it, enable browser caching for static assets, and turn on compression. Exclude cart, account, and contact pages if your plugin does not do that automatically. Never run two page-cache plugins; they fight over the same rules.
Count your plugins and ask what each one adds to every page load. Deactivate one at a time and retest. Look for plugins that load the same library twice, plugins that add admin-ajax calls on the front end, and plugins kept for a feature you no longer use. Fewer, current plugins are easier to update and harder to break.
Steps 5 and 6: database and theme
Long-running blogs accumulate post revisions, expired transients, spam comments, and orphaned tables from deleted plugins. Export a backup, then remove revisions beyond the last few, clear expired transients, and delete spam and trashed comments. Do not delete tables unless you know which plugin created them.
A heavy theme or page builder can add more CSS and JavaScript than all your content combined. Test a default block theme on a copy of the site and compare page weight. Remove unused widgets, keep the menu small, and avoid stacking animation libraries. Simplicity is not a style choice here; it is a performance decision.
Step 7: respect the fair-use ceiling
A 20 GB monthly allowance is not the same as unlimited CPU. The free plan sets daily CPU and RAM ceilings, a file-count limit, and a maximum file size for good reasons: one runaway script should not slow every site on the server. Keep cron jobs sensible, avoid bulk imports during peak hours, cache aggressively, and block obvious bot traffic if it becomes a problem. If your site regularly hits the ceiling, that is a signal to upgrade, not to hide the load.
Retest and set realistic expectations
Change one group of things, clear the cache, and rerun the same tests on the same pages. Aim for a mobile Largest Contentful Paint under 2.5 seconds, but treat 3 to 4 seconds as a common result for image-heavy pages on shared hosting. A perfect 100 is not the goal; a visible improvement on a real phone is.
Document what you changed so you can undo it. If a plugin update makes the site slower, you will want the previous numbers. Speed is maintenance, not a one-time project. Check the FAQ for plan limits, and when you are ready to test on a live site, create a free account and measure before adding anything else.