A blog clean-up is the work nobody sees and every reader feels. In September 2026 I cleaned up this blog, which has run on self-hosted WordPress since 2006. This post lists what I removed, what I fixed and the lessons that fit any blog, big or small.

Why Clean a Blog That Works
After 20 years and more than 5,800 articles, a blog collects clutter the way a garage does. Plugins get installed for one job and stay forever. Pictures pile up. Old posts announce things that ended long ago.
Clutter hurts in quiet ways. Pages load slower, updates take longer and readers land on posts that promise something that no longer exists. Nobody complains about it. Visitors leave without a word.
Cleaning also saves your future self time. A tidy blog is easier to update, to move and to hand over. The work went from the code behind the pages to the words on them. Every step applies to your own blog too.
Settings Before Plugins
A plugin is code that runs on every page, needs updates and can break after one. I retired the redirects plugin, the ad placement plugin and an image SEO plugin. Settings in the theme and in the remaining plugins covered what was still needed. Each plugin that left was one less thing to update, to secure and to slow a page.
The page builder came next. I deactivated WPBakery and turned the pages that used it into plain HTML. Plain HTML loads fast, and any editor can read it. A page builder is a good tool for building a page. It is a poor thing to depend on for years.
Google Analytics followed the same rule. I added it without a plugin, by placing the tracking code in the theme settings. Ads moved to automatic placement, so the ad system chooses the spots and no plugin has to.
The rule is simple. Look for a setting first. Install a plugin only when no setting does the job, and write down why.
Back Up Before Every Removal
I removed 1,265 images that no post or page used. I made a backup first and verified it. Only then did I delete anything. A backup you never checked is only a hope.
Check usage before you delete a picture. A file that no post shows can still sit elsewhere. Check pages, widgets, theme settings and sharing images, and search for the file name in each. If it is still in use, keep it.
The same order works for every removal, not only pictures: plugins, posts, tags. Back up, verify, remove. When something breaks later, the backup turns a disaster into a small repair.
Alt Text for Every Image
Every published image on this blog now has alt text. Alt text is a short description of a picture, stored in the image tag. Screen readers read it aloud for blind visitors, and it shows when a picture fails to load. Search engines use it to understand the picture.
Write what the picture shows in one plain sentence. Example: “Bar chart comparing page load time before and after caching”. Don’t stuff it with keywords. Writing alt text is also an audit. When you must describe each image, you notice the broken, duplicate and pointless ones.
Dead Announcements Became New Posts
Some old posts were announcements of things that ended years ago. The easy fix is a note at the top that says the event is over. I rewrote those posts into new topics instead.
A note keeps a dead post on life support. A new topic gives the same address a reason to exist. The link stays the same, so old links reach something useful. Ask of every old post: would a visitor learn something today? If not, rewrite it.
Fewer Tags and Fewer Categories
Tags grew over the years until the list was a mess. I cut them from about 485 to 283. Categories went from 10 to 8.
A tag that holds one post makes a thin page and gives readers nothing to browse. Merge near duplicates, such as two spellings of one topic. Keep a tag only when a reader would click it to find more. Categories work like a table of contents, so keep them few and clear.
Speed and Secure Links
I added page caching, which saves a ready-made copy of each page, and image optimization, which makes picture files smaller. Measure speed before you change anything, and again after. Without the first number, you can’t prove that the second one improved.
A speed tool can also break a page. Check your important pages by eye after every change, on a phone too. Searching, menus and sticky headers are the first places to look.
Old posts still pointed to http addresses. I fixed them to https. Now every link goes straight to the secure page, without a redirect or a browser warning.
A Fair Objection
You could say a blog that works should be left alone, because every change can break something. Fair point. That is why the order matters: back up, change one thing, check the pages, then move on.
Leaving the clutter has a cost too. It grows every year, and a bigger pile is harder to clean safely. A blog clean-up done in small, checked steps is safer than one done in a panic.
A Short Checklist
Work through this list one item at a time, on your own blog.
- Does a setting do the job before a plugin does?
- Is there a verified backup before every removal?
- Is each picture unused everywhere, not only in posts?
- Does every image have alt text?
- Does every old post still say something true today?
- Are the tags and categories few and clear?
- Did I measure speed before and after?
- Do all links use https?
A clean blog is the result of small steps that were checked. Start with the first question today.
A blog clean-up is not a one-time rescue, it is a habit that keeps old work useful.
Published by Pinal Dave on SQLAuthority. More of my work at pinaldave.com.
Discover more from SQL Authority with Pinal Dave
Subscribe to get the latest posts sent to your email.





2 Comments. Leave new
Your contribution is immense…Keep going!!!!
Great work Pinal!
Any possibility of some courses on configuring / using Resource Governor in SQL?