You've mastered the art of writing well-optimized posts following best practices for great SEO, but new posts aren't ranking as easily as they used to, why? Have you considered the old content you wrote years ago that was very poor quality may be holding you back? It's true, just like a garden your posts need to be well taken care of now and in the future, pulling the weeds will make room for the rest of your posts to flourish. Improve your search engine crawl budget, improve the concentration of niche-content you rank for to help drive your subject authority, and improve the user experience as your content becomes easier to navigate, all that and more by conducting a content audit.
In this tutorial we're going to go over three main parts of conducting a content audit. Methods for building a list and identifying potential posts to attack, and how to analyze the list, then lastly what actions to take on those posts.
Build Your List
The first thing you'll need to do is figure out what posts are of such poor quality that action should be taken. You as the publisher will likely have a very good idea about what posts aren't performing well, but there's a couple methods we can use to generate a list of posts based on their traffic performance value.
Build Your List With Google Analytics (GA)
This is a great way to find nonperforming posts, it's straightforward and the data is simple to analyze. First thing you'll want to do is go to Behavior>Site Content>All Pages:
The next thing you'll want to do is give yourself a decent set of dates to work with, for this report we'll want to know how our content has performed for the last 12 months, this date range will give us a complete overview for every season/month for all our posts:
Next, we'll want to clean this report up. Depending on how old/large your site is you may have 100k urls in the report now, full of weird urls that GA has recorded over the last year like this:
The next step we'll add some filters to the report so we can get it reduced down to just posts/pages (as close to that as possible). Click the "advanced" link, then hit the "add a dimension or metric" button, then use the search box to find "Page". Go ahead and do that about 7 times until you have a good set of filters we can customize:
Now use the first dropdown to select "exclude" on most of those filters, lets set the last filter as "include" and we'll set the second dropdown to "ends with" and add a slash (most sites should have urls that end in slash, if yours don't then you can skip this one).
Now your report should be considerably shorter and more refined. You can add more filters depending on what kind of garbage urls may be remaining in your report (remove urls that containing "print" for example, etc). Down at the bottom of the list you can use the dropdown to display 5000 entries, this should hopefully be enough to cover all remaining urls in your report which you'll be exporting next:
Now that your report is complete, go ahead and export it as a file (csv, google sheet, etc), and also be sure to save it so you can access it later at any time from your GA dashboard at Customization>Saved Reports section.
Build Your List With Google Search Console (GSC)
This method is a little faster/easier for smaller sites but you have to be a little more careful/aware as this list is only based on search engine stats. You can have a post that pulls huge traffic from Facebook, but no traffic from Google, then you might take the wrong action on the post based on this list (whereas the GA list combines all traffic sources/pageviews). So when using this method, just be extra aware of that fact and be sure to cross reference a questionable post against GA stats to make sure before taking action (most posts you can visually inspect and figure if it is low quality or not).
In GSC, open your correct web property and go to the Performance section, then hit Pages tab and change the date selector to the last 12 months:
Now you can see your top-1000 urls, use the export button in the top-right corner of the screen to save it, and you can change the number of urls displayed per page to 500 as well. Be aware that this method will only show the top-1000 urls, if you have a very large site then this may not be a very useful option and you should use the GA list building method.
Analyze The List
Now that you have a list of posts sorted by how valuable they are in terms of traffic, it should be much easier to find the low quality content. The posts at the bottom of the list have been deemed low-quality by both search engines and social followers, so are likely of very low quality. There are some caveats to be aware of, mostly that this is a "dumb list". We simply pulled all urls for the last 12-months sorted by number of pageviews and then filtered out 90% of junk urls. There will still be some junk urls to skip and of course the quirks of the list itself such as if you just published a post the day before we built the report then that post is probably going to show at the bottom of the list. Also, if a user writes a url into their browser and maybe capitalizes the whole thing, then that may register in your GA as being a separate post than the lowercase version (though both redirect to the same post). So be aware that this list is just a simple tool, you still have to work it to make it useful.
The first thing you'll want to do is have a few browser tabs or windows open: 1 tab with your site, 1 tab with GA ("behavior>site content>all content" will do), and lastly your report/list open. Starting from the bottom of the list and working your way up you'll just copy/paste the urls into your site address bar to check the content. Here's my report and bottom urls:
Some of these urls in my report don't exist anymore such as the /home/ entry, it just goes to a 404 page, so I will skip that and move on to the next line. The next url in my report is /disaster-recovery-plan/, when I check the post I can see it is a partial post that had not yet been completed yet but is published. This is definitely a piece of content we don't want polluting our indexed urls and not something we want visitors seeing on WPTechs since it isn't finished. It's low quality content and when I plug the url in GA it comes up as having next to zero traffic, it's a perfect candidate to take action on.
We have three options on what action to take on a url we've identified as being very low quality. We can delete it, we can noindex it or we can set it as a draft to be republished at a later date. Which option is best? It depends on what you think of the content really, as all three options will have the same end-result on search engines (deindex the post).
Most content audits result in mass deletion of posts and this will be your most common action to take. The quality of old nonperforming posts is generally so low that there's just nothing there to salvage, the content is poor, there's no other seo value such as backlinks or social shares, and of course no traffic.
Usually when nonperforming posts don't get deleted it's because they have sentimental value and the owner wants to keep them online, maybe it's the very first post published, or maybe it's a post that does okay on Social but little/no Organic traffic. We can just remove this post from search engine indexes by setting it as noindex, while still allowing it to remain published on the site. If you use Yoast then it's very easy to use the meta box at the bottom of the post editor to noindex, just expand the Advanced tab and hit the dropdown for "allow search engines to show this post in search results" like this:
This is a very popular option, you might prefer keeping a low quality post in your wp-admin so that you can republish it later, or maybe it just had some good ideas that you'd like to use later or maybe you're sentimental about the post but don't necessarily need to keep it online for the world to see... By setting the post as a Draft it is essentially the same as deleting the post, but you get to keep it as a copy in your admin area, so you can always access that content again at anytime in the future.
Once your content audit is complete you should make sure to check a 404 monitor to catch any accidental deletions. Redirection plugin has a fantastic 404 monitor built in, in addition to all its other amazing features (highly recommended for everyday redirection management). Every couple weeks you'll want to watch your Organic traffic in GA as well, you can run a report at Acquisition>All Traffic>Channels>Organic Search, and check "this month versus last year's this month" (year vs year same-days is the only accurate way to test performance), then just check to see how the traffic has been performing +/-:
In that chart, hypothetically, if I had finished my content audit on September 1st, and my traffic growth year over year had suddenly begun trending negatively, then I would be a little worried and want to investigate/check the 404 monitor/etc.
Frequently Asked Questions
In most cases, no. Think about the user experience of being redirected to the homepage or a category or some other irrelevant url - someone is trying to get to a specific piece of content and now are landing somewhere that doesn't quite make sense, maybe they'll use your search bar to try to hunt down the content, or maybe they'll scan through whatever page they landed on, either way the visitor is wasting their time not getting their question answered. Now if they'd landed on a 404 page they should immediately know they didn't do something wrong, the content is just 'gone' for whatever reason, now you've done your best effort to not waste their time so if they decide to go on searching your site it's their own decision to spend that time... Pro tip: optimize your 404 page so it has links to popular category archives, search box and a personal message to the visitor > those things can be helpful in connecting with them and help rebuild the user experience.
In addition to the UX, these posts we're taking action are the bottom of the barrel for traffic, so in all likelihood many of the recorded pageviews were triggered by bots = there's no real traffic nor seo value to worry about preserving with a redirect.
No you can't bulk delete anything, every single url that will have action taken on it needs a human eye to look at the post content, check the analytics and make an informed decision... We've seen people take bulk action on posts in mass, then months later there was confusion about what happened when many popular posts had been deleted in that bulk action. Every url needs to be analyzed and have an informed decision made on it, as the site/business owner you should perform this task yourself as you're the best qualified and you're the only person that will really care to make sure the job is done right.
It's very common to see 25-35% of all posts removed during a thorough content audit. As long as these posts are really low quality and care has been made to make the correct decisions then the whole process will be completely positive and you shouldn't see any volatility in SERPs.
This tutorial might seem long or the report generation + analysis difficult, but it's really not! Take it step by step and you'll be on your way! Get this "spring cleaning" done and you'll feel a lot better about your content, and best of all search engines will reward your effort with more traffic!