The best part of having a self-hosted blog is the ability to use plugins. Sure, having a custom theme matters highly but good plugins make maintaining a blog so easy. You can do most of these things yourself but it's much easier to use a plugin and save your time.

After switching to this self-hosted blog years ago, I've tried out many plugins and have a solid idea of what is required and what actually helps beyond sounding good. You don't need a lot of plugins, you need a few good ones.

In this post, I'm sharing 10 free WordPress plugins that make a difference. If you have a self-hosted blog or are planning to have one, this should help you!

Instead of ranking the plugins, I'm just going to talk about them in alphabetical order.

Akismet Anti-spam

Everyone recommends this but, at one point, I wondered if it is truly needed. I found out how helpful this is only after I deactivated it for a few days, assuming it doesn't do much.

You'd think that blogs wouldn't receive much spam since their popularity is declining compared to social media but that's not the case. It's more of a problem if even one of your posts receive traffic from search engines. This blog receives at least 100 spam comments every month. At one point, it got around 200 a week.

Akismet takes care of all the spam comments so that you don't have to. It has all the logic to identify spam comments. You won't receive notifications for spam and can focus on responding to genuine comments. It is mostly accurate too. It has misclassified comments only a handful of times over 4+ years. In the past 6 months, it has maintained a 99.67% accuracy (yes, it shows me the stats).

The plugin lets you choose what it should do with the spam comments—silently discard them or keep them in a spam folder for you to review. I chose the latter in case genuine comments get misclassified but it's mostly been correct. The spam is kept for only 15 days. I usually give a quick glance through the spam folder before bulk deleting every few weeks.

One time, I thought a comment was genuine and marked it "not spam" only to later find out that it was indeed spam. Nowadays, spam comments sound so genuine and real. The spam comment was a compliment which made me feel good. I realized it was spam later when I saw the same words a few more times on other posts. Akismet was right.

It has a paid version but I've never had to consider it. I haven't seen any prominent ads for it and there doesn't seem to be any feature reduction. Maybe the paid version has a few extra options or a better algorithm but I find the free plugin to work great.

I've faced only one issue with it—the plugin didn't allow anyone to comment by saying "nonce verification failed". It was due to how the it interacted with another plugin I had and I was able to fix it. As it is one of the most-used WordPress plugins, it has great support from the team and is frequently updated as well.

illustration of an open laptop, japanese boba tea, and a small plant

Ally - Web Accessibility & Usability

Formerly called One Click Accessibility, this is a handy plugin to make your website friendly to all readers. You should be able to see a floating icon at the top right which opens an accessibility menu when you click on it. That's the Ally plugin.

Accessibility is a must in every website or application today. Accessibility is more than adding alt text to images, it means providing readers with all the options that can make their reading experience better. Accessible web pages don't just help people with specific requirements, it helps everyone ("the curb cut effect"). I don't have pressing accessibility needs but this helps me too because I use the grayscale option whenever my eyes are feeling strained.

Maybe it's because I do web development and specifically think of accessibility in my job, I can write several paragraphs to explain why it is necessary. I don't want to go on a tangent though, so just trust me on it. You most likely don't have time to devote to all the accessibility things so using a plugin is really helpful.

Ally takes care of many small things that most of us usually don't think of. It's simple and easy to setup. It's easy to use for readers. It allows you to match its look to your blog's theme. You can specify exactly where it should be shown.

The only problem is the confusing sign up process. It wasn't an issue when it was "One Click Accessibility" but things have changed after the rebrand to "Ally". Even though I was using One Click Accessibility before, after updating, I had to sign up again.

They weirdly show a "sign up for a free trial" page even though the plugin is free. It caught me off-guard and sent me sleuthing to find out more. Turns out, they don't take any payment info or mention payment, except that free trial page. They have also said that the plugin will remain free, maybe with premium features coming later. But yeah, if you're confused too, know that it's a miss on their part. I think they reused an existing sign up process of something that had payment.

Elementor

Elementor is a drag-and-drop website builder plugin. It's not something everyone needs, or something you need for everything, but it is handy when you want customised web pages.

I don't use it for my regular blog posts or blog feeds. I use it for my resource library, art gallery, etc. Although I could manage those pages without Elementor, they wouldn't look as nice. They clearly look different from the rest of my blog but those layouts work well for those specific use cases.

Elementor helps when the regular blog page templates aren't enough. You can customise specific pages without affecting your entire blog. You can easily create custom layouts by simply looking at the different block options and dragging things around. You don't need to know anything about building websites. There are HTML options in case you want to you use them, but you can easily ignore them too.

If you want to play around, try something new, or have a vision that requires much more customisation than what your theme provides, Elementor is a great option. It has paid features but I haven't had the need for any of them. There are more than enough options with the free installation.

FileBird Lite

I started using this about a couple of years ago when I saw another blogger talking about it. You won't require this if you don't use a ton of images which become hard to manage over time. Before using this plugin, I used to name my images in a specific way so that I could search a keyword to bring up all images in a category. That was frankly a waste of my energy and time.

FileBird let's you categorise your images into folders. Your readers won't see anything different but you will have a much more organised experience behind-the-scenes. It's super easy to use and doesn't need much effort.

The plugin provides you with an option to choose a specific folder before you upload images for immediate categorisation. You can always change the folder later by clicking on individual images.

a screenshot of the wordpress media library when the free wordpress plugin filebird lite is used, showing the different folders of media I have - illustrations, book covers, pinterest images, kdramas, and uncategorized

I have a few different types of posts that require vastly different types of images. As you can see in the above image, I use FileBird Lite to organise them into different folders. This way, I can easily look up all my illustrations or book covers without having to remember what keyword the images have in their names.

Most bloggers might not need this but, if you're like me, you will find this super helpful. I like that everything has a place and there's an "uncategorized" default folder if I don't want to create folders for infrequent types of images (like the above screenshot).

This plugin can be a bit buggy. Sometimes, the folders don't show up but I can search images. Once, everything was in "Uncategorized" and my folders disappeared. They have all been very temporary issues, though. If a refresh didn't fix it, an issue will get resolved in a matter of days and I've not had any loss of data.

Heroic Table of Contents

Table of Contents is always helpful in long-ish posts. All of my posts tend to be super long and split into multiple sections. Keeping TOCs lets readers glance through the sections, jump around, or look for something specific. Having a TOC boosts your page's SEO as well.

It's fairly easy to create a Table of Contents without a plugin. It requires just a bit of HTML use and any AI can help you make a pretty one. But, it's extra effort. This free plugin handles everything for you while also making your posts have a "standard" look because of it.

I use this plugin on every single post. It's simple, easy to use, and has a few options to change the look. It looks unobtrusive to readers while being handy. I like that it has a toggle option and I can set it to be closed or open by default.

It makes HTML anchors automatically. They may not be readable (either numberical like htoc-1, htoc-2 or the beginning of the subheading text) but that shouldn't be an issue since most readers don't see the HTML anchors. You can use the HTML anchors to link a specific section in a different post. For example, if I want to refer you to what I said about the Rank Math SEO plugin in a different post, I can easily do so and save you the trouble of scrolling to find it.

The only issue that I've faced is how it weirdly makes HTML anchors like #1, #11, #111, etc. It happens when I add the TOC before writing the rest of the post. Whenever I create a sub heading, it's empty before I type text. The plugin seems to error out with the empty heading and adds 1s in the anchors. It works fine if I add the TOC after writing the post or all the headings. This has been an issue for quite a while which I was quite annoyed with. I now add the TOC after writing the post to avoid that issue.

When I have time and care about the anchors, I go into the "advanced" section for each heading block and change the anchor to something readable, which would also help for SEO. But that really depends on how much I care about it. Usually, I just make sure it's not 1s.

Rank Math SEO

This is a great plugin if you care about SEO. It gives a bunch of features but my favourite is the SEO checklist it shows for every post.

It requires you to give a "keyword" for your post and calculates things based on that like whether the keyword is there in sub-headings and the URL. It also checks for images, whether you linked internal and external posts, and whether your paragraphs are small. A brief on every point is linked so that you know what to do. It gives an overall score out of 100 as well.

I used to care about SEO a lot and had an SEO strategy too. I stopped caring about it much over time and now barely think about SEO. However, I still keep the plugin because it reminds me to look at things other than the content itself. I don't aim to get a specific score but I try to do whatever takes little effort like checking the URL or remembering to link things in the post.

I like the automatic redirection creation, it's so handy. Whenever you change the URL of a post, it automatically creates a redirection and lets you know about it, so that post's SEO rank or its links are not affected. It notices whenever you delete a post and prompts you to make a redirection if required.

Rank Math creates a sitemap for your blog and keeps it updated. It provides an SEO analyzer if you're interested in that, although the data is very limited if you're on the free plan.

illustration of a person working on a laptop with coffee, books, plant, and airpods scattered around the laptop

Sassy Social Share

I saw a really cool floating bar of social media share options on another blog and sleuthed around to find the plugin.

If you're reading this post on a big screen like laptop or desktop, you should see a floating bar of social media icons on the left. You can click on the small arrow to minimise it. If you're on a smaller screen, you will see a pinned bar at the bottom with the share icons.

I like this plugin because it's very customisable. The colours can be changed to match your blog's aesthetic and you can choose which social media options to show among the huge list they offer. You can choose where it should be seen and how. You can choose which shape and size it should have. You can choose where it shows—I've set it to show only for posts.

It works well too. The options are easy to see without being obtrusive, they match my blog's theme, and I've not had any issues with them. I don't keep track of or show how many times posts have been shared but you can enable it if you want to.

Site Kit by Google

Without this plugin, you have to manually hook up Google Analytics to your site and make sure everything works fine. It's not too hard but I've found it annoying when you want to do anything a bit complex (like serve Google Ads).

This plugin handles integration with Google Analytics. The sign up process is simple and you can forget about it after that. This is especially handy with Ads because that requires extra setup which is made much simpler with this plugin.

It embeds certain aspects from the GA stats in your WordPress admin panel directly, saving you from navigating to its site. It doesn't show detailed stats which, honestly, very few use. It shows the most-popular things like overall views, top keyboards, top posts, and pagespeed.

The plugin has 2 new features which I noticed as I was checking things to write this section. It can give you metrics about "new" and "returning" visitors which gives a good idea about loyal audience. I'm excited about the "tailored metrics" feature more, though. I chose what I care about the most (writing a blog, making new content for my audience) and it shows metrics that are relevant.

Although I don't do much with statistics nowadays, I always find it interesting to see how my blog is doing and notice any patterns. I write yearly blog statistics deep-dives too.

UpdraftPlus

This is a simple plugin for creating backups and restoring if necessary. Thankfully, I haven't had the need to restore a backup so far but you never know when it'll happen. This is fairly important for self-hosted sites since things can easily get messed up (especially if you're installing new themes or doing customisations).

This plugin requires a connection to a storage site like Google Drive and it's ready to take backups. You can trigger them manually but there is an option to trigger them automatically. You just choose the cadence and it does it for you. You can also set to keep only a certain number of backups at a time so that your storage isn't maxed out after a while.

For my blog, it takes about 10 minutes to create a backup. I had a look at the backup files once and it looked okay. I haven't faced or heard of any issues with this plugin as well. It's a popular one and hence is maintained well.

illustration art of an open laptop with "thewordyhabitat" written on the screen and a mug of tea kept next to the track pad on the laptop

W3 Total Cache

I tried a bunch of caching plugins and finally settled on this one. In theory, caching is a simple thing. But for some reason, I've had trouble with other plugins in the past. I had trouble with this one when I was using another plugin for lazy loading.

Caching isn't something that's super important if you're a hobby blogger, but it helps if your blog receives a lot of traffic or you care about loading speed. My previous theme loaded super slow and hence I tried a bunch of things to make it load faster. Enabling caching was one of them.

In layman terms, W3 Total Cache makes your pages load faster. It caches frequently viewed and less frequently updated things like the home page and doesn't cache unnecessary things like comments. It does a bunch of optimisations behind the scenes that you don't need to know or care about.

If you do care about what it does, the plugin provides you with a lot of control on what should be done to improve the caching. Some things are tricky depending on how your sites work like minifying JS and lazy loading. I suggest checking your site after enabling them because they can mess with your theme.

In general, you can enable cache and forget about it. The only times you need to remember is if you deliberately do a change to your blog that is rare, because it won't reflect until the caches are purged. I often forgot about caching when I did changes to my site earlier. Now, I'm used to it so I purge caches if I do any changes and it works fine. It also shows that it's working.

There are paid features but I've never needed them and you might not either.

chat with me!

If you could "bring a plugin to life", what plugin would you wish for? I want one that automatically suggests formatting for my posts, like where to place images so that they're not crowding but not too few or which lines can be bolded 😂

photo of Sumedha

Sumedha spends her days reading books, bingeing Kdramas, drawing illustrations, and blogging while listening to Lo-Fi music. Read more ➔

Be wordy with me!

This site uses Akismet to reduce spam. Learn how your comment data is processed.

1 comment