Related Posts Plugins are an amazing way to keep a visitor engaged on your site. By doing some magic on the backend of a site, they can make tailored post suggestions according to the content on-page. Tailored recommendations will boost average time on site, average page views, and the like. Related posts are also awesome ways to add advertisements to a site.

Unfortunately, related posts plugins can also destroy a site’s performance, or bring it down entirely.

Many related posts plugins work by creating a “FULLTEXT index” on the “posts” table in MySQL. This is a mechanism to make complex queries against the content of posts.  For example, “posts which contain A and B but not C or D.” Usually, this means indexing categories, tags, specific keywords, and a number of other data points and querying them later.

It’s a cool way to search, but MySQL wasn’t built to make queries like this.

In MySQL, FULLTEXT indexes consume high loads of resources at run-time, particularly for larger sites with proportionally large databases.  Under heavy traffic loads, this will slow the entire site down, or crash it entirely.

To make matters worse, when changes are made to (large) tables with FULLTEXT indexes, rebuilding that index can take hours and hours. Sometimes rebuilding will even fail, producing a corrupted MySQL table. This can happen when you do something like upgrade to the latest version of WordPress.

That was a lot of bad news. Here’s the good news!

There are TWO PLUGINS that achieve “related posts” functionality, but do it off-server, so that you don’t bog down MySQL.

Take a look at nrelate’s and LinkWithin’s “related posts” plugins. These do their calculations on their own servers and don’t cause the same issues with the databases.

Nrelate has 3 different plugins based on whether you want your most popular content or related content to display, as well as if you want the related post to “fly out” at the reader.  All three are available in the WordPress plugin repository.  LinkWithin will make recommendations to related posts based on several factors, including title, tags, and content.

How they work

Nrelate creates its own, secure, RSS feed, and feeds your content directly their servers. This means their pinghost is added to your Update Services. So each time you update your blog with new content, nrelate gets the feed and can analyze it for related posts. Then, they use Natural Language Processing inside a database designed for search to analyze your content and make related recommendations.

LinkWithin similarly analyzes your content off-server. They have a context engine that looks at categories, tags, keywords, and a few other aspects of your content in order to make recommendations. LinkWithin used to redirect traffic through their site, but no longer. You get all the SEO juice from the links.

Both plugins accomplish the related posts functionality off-server. I’m personally a big fan of nrelate’s strategy of using the RSS feed to get the content and then processing it with NLP.  I was also able to speak on the phone with both developers from nrelate in the writing of the article, which indicates the support they’re providing their plugin.


LinkWithin has secure processes to pull your content, and there are zero known security issues with their plugin.

When I spoke with nReleate, they talked about how their RSS feed can only be accessed with a random key that is generated when you install the plugin.  They hired Mark Jaquith to build this part of the plugin with airtight security.

Image options

With nRelate, you can either show your content as one of six sizes of thumbnails, or as very simple bullets. The plugin automatically creates a thumbnail from the featured image, but you can also specify which image to use.  If you don’t have any images on your post, nrelate will actually pull one from their image library.  You can see examples of their ads on Huffington Post and Endgadget.

LinkWithin relies heavily on featured images from your page in order to provide thumbnails.  If you don’t set featured images, the plugin won’t show any.  It also provides very customized sizing of images that are optimized for your site.


You can add your advertising networks to nRelate (they have their own ad network) and serve your ads along with the recommended content. Linkwithin does not currently support advertising.


Your css is automatically adopted by nRelate, so the thumbnails and font styling will automatically look like your design, but you can still customize things as you like.

International Languages

Nrelate is also in the following languages: Dutch, English, French, German, Indonesian, Italian, Polish, Portuguese, Russian, Spanish, Swedish and Turkish.

Check out both of those plugins to see which one works for your needs. Both of them offer significant speed and scalability benefits to your site.

Are you using a related post plugin for your site?  How has it affected your traffic?  Have you noticed any performance issues?

Kyle Eslick is WordPress enthusiast who took his passion for WordPress to the next level in 2007 by launching as a place to share hacks, tutorials, etc. Follow Kyle on Twitter @KyleEslick!

  1. Hillary Bost says:

    I really like the plugin but i guess it is personal preference for many.

    • Hillary,

      Thanks for the comment! Yep, it’s definitely an individual preference thing based on what your site needs and who your audience is.

  2. janw says:

    good post, there are too little posts that take performance into account.

    • Hey Jan,

      Thanks for the comment! I agree, performance gets overlooked with plugins. I don’t like the blanket statement that too many plugins is too many, but if we have a site that needs to be scalable, we have to make sure each additional plugin fits the bill!

  3. Alex says:

    Both good choices for alternative plugins, although I usually find the best method for related posts is to train users to categorise and tag posts properly- then you can do queries with much less of an overhead.

    • Hey Alex,

      Thanks for the comment 🙂

      I’m curious what you do to train your users to categorize the content? Do you have a strategy that works? I may start calling you Pavlov if the idea is good 😉

      I would make the point that anytime you can get away with not querying MySQL, you’re probably gaining speed. That’s why Nginx’s abiliy to cache_proxy is so powerful – it prevents constant hits to MySQL and dramatically improves site performance.

  4. ankit says:

    yes i agree with the point with relate handling all the complex queries on their own servers but sometimes in some post they don’t provide relevant related post according to the actual post…and sometimes it takes 2-3 days to figure out the proper related post

  5. Hey Ankit,

    Thank you for commenting 🙂

    Is your experience based on nrelate / LinkWithin or another plugin? I’d say that yes it can take a bit of time to get the categorization right, but nrelate in particular is incredibly accurate. You should run a few tests to see what you think and then let me know in the comments.

  6. Justin says:

    I really like the nrelate plugin haven’t had any issues so far.

  7. Jon Brown says:

    Great post. Curious if you’ve looked at Wordnik’s new related post plugin and have thoughts on it? My understanding is it processes content on thier servers as well.

    • I haven’t looked at Wordnik’s plugin, actually. I do know that they do amazing work, and I’ve talked with their CEO and Director of Product at WordCamps this summer. I’m incredibly impressed with what they’ve done, and blown away that nobody knows about them yet, at least it seems that way. HIghly recommended.

  8. John says:

    Nowadays, security is the first concern to install an unknow plugins, i encounted several plugins which broke my database. Good to know that this plugin works

  9. D.Scott says:

    Can it have a negative effect on SEO?

  10. Jo says:

    I like that it works off-site – is there a similar “related posts” plug-in that does not need thumbnails? Many of our blogs aren’t illustrated & don’t need to be. I just want a simple list of related posts to show at the bottom of each post. I was using Related Post Picker, but it seems to have quit working for me. Any tips would be appreciated.

  11. Keith Davis says:

    Hi Austin
    Can’t decide if I should use a related posts plugin or which one to try.
    NRelate gets lots of good writeups and it sounds as though that is the one that you recommend.
    Might just give it a go.

Trackbacks/Pingbacks »

  1. Tips Tuesday and Offer Digital Downloads on Your Site says: