One content audit makes the case better than any argument: a blog with just over 600 published posts, where traffic had been sliding for eight straight months and nobody on the team could explain why. Three weeks of spreadsheet work later, the answer was uncomfortable but obvious. Around 40 percent of those posts had not earned a single search click in a year, and dozens of them were quietly competing against each other for the same keywords. The team removed 180 pages, merged another 40, refreshed the winners, and organic traffic recovered within a quarter.
The same process has since been run on ecommerce stores, SaaS sites, and small personal blogs, and the pattern rarely changes. Most websites carry dead weight, and most owners have no idea how much. This guide walks through that exact audit process, including the tools, the spreadsheet columns, and the decision rules, so you can run one yourself without guessing.
What Is a Website Content Audit?
A website content audit is a systematic review of every piece of content on your site, measured against real performance data and quality standards, so you can decide what to keep, improve, merge, or remove. It is not a quick scroll through your blog page. A proper audit produces three things: a complete inventory of every indexable URL, a performance snapshot for each one, and a documented action plan.
Think of it as a stocktake. Retailers count physical inventory to see what sells and what gathers dust. A content audit does the same job for pages. By the end, you should be able to answer four questions for any URL on your site:
SHEET 1 · THE FOUR AUDIT QUESTIONS
| QUESTION | WHERE THE ANSWER COMES FROM |
|---|---|
| Does this page earn traffic or links? | Google Search Console, GA4, backlink tools |
| Does it still serve a clear business purpose? | Your content strategy |
| Is the information accurate and current? | Manual review |
| What should happen to it next? | Your scoring and decision rules |
Content audits are used well beyond blogs. Agencies run them before site migrations so nothing valuable gets lost in a redesign. Ecommerce teams run them on category and product description pages. SaaS companies run them on help documentation. Publishers run them to fight content decay on older articles. Anywhere a site has more than a few dozen pages, an audit has a job to do.
When You Actually Need One
Nobody audits for fun. Every audit that gets commissioned starts with a specific trigger, and knowing yours shapes the whole project.
| TRIGGER | WHAT THE AUDIT USUALLY UNCOVERS |
|---|---|
| Organic traffic has been declining for months | Decayed posts, outdated info, keyword cannibalization |
| You are planning a redesign or migration | Pages worth keeping, redirect mapping, orphaned URLs |
| The site has years of accumulated posts | Thin pages, duplicates, index bloat wasting crawl attention |
| Rankings feel stuck despite publishing regularly | Multiple pages splitting authority on the same topic |
| A rebrand or strategy shift | Content that no longer matches what the business sells |
A NOTE FROM EXPERIENCE The migration scenario is the one where skipping an audit hurts most. One company lost roughly a third of its organic traffic after a redesign because nobody mapped redirects for old URLs that still held backlinks. An audit beforehand would have flagged every one of those pages in an afternoon. |

What a Content Audit Covers
A complete audit looks at five areas. You do not need to weight them equally, but you should at least glance at all five for every page.
| AREA | WHAT YOU CHECK | DATA SOURCE |
|---|---|---|
| Search performance | Clicks, impressions, average position, CTR | Google Search Console |
| User engagement | Engagement rate, average engagement time, key events | Google Analytics 4 |
| Content quality | Accuracy, depth, readability, search intent match | Manual review |
| Technical health | Status codes, index status, broken links, orphan pages | Site crawler |
| Authority | Referring domains and internal links pointing at the URL | Ahrefs, Semrush, or similar |
The Tools You Need
You can run a legitimate audit on a small site without spending anything. Here is the standard stack that covers the entire job.
SHEET 4 · THE AUDIT STACK
| TOOL | WHAT IT HANDLES | COST |
|---|---|---|
| Google Search Console | Clicks, impressions, CTR, and position per URL, with up to 16 months of history | Free |
| Google Analytics 4 | Engagement and conversion data per page | Free |
| Screaming Frog SEO Spider | Crawling the site to build the URL inventory | Free up to 500 URLs, paid license beyond that |
| Ahrefs Webmaster Tools | Backlink counts and referring domains | Free for sites you verify ownership of |
| Google Sheets or Excel | The audit workspace where everything gets merged | Free |
If your site is under 500 URLs, the free Screaming Frog tier covers the crawl entirely. Larger sites need the paid license or an alternative crawler such as Sitebulb. Paid suites like Ahrefs and Semrush speed things up with their own audit modules, but they are conveniences, not requirements. The thinking is the part that matters, and no tool does that for you.

The 7-Step Content Audit Process
STEP 1 OF 7 ● ● ● ● ● ● ●
Set One Clear Goal
Decide what the audit is for before you open a spreadsheet, because the goal determines which data columns matter. Recovering lost traffic means you will lean on Search Console history. Preparing a migration means status codes and backlinks matter most. Cleaning up index bloat means you will care about pages with zero clicks and zero links. Write the goal down as a single sentence and keep it visible.
EXAMPLE GOAL STATEMENT “Identify every blog post that has earned fewer than 10 organic clicks in the last 12 months and decide whether to update, merge, or remove each one by the end of the quarter.” |
Vague audits produce vague spreadsheets that nobody acts on. Teams routinely spend two weeks collecting data and then stall completely because no one agreed on what the numbers were supposed to answer.
STEP 2 OF 7 ● ● ● ● ● ● ●
Build a Full Content Inventory
The inventory is the spine of the audit: one row per URL, nothing missed. Crawl your site with Screaming Frog, filter the results to internal HTML pages returning a 200 status code, and export them. Then cross-check the crawl against your XML sitemap and your CMS page list, because each source catches things the others miss. Crawlers miss orphan pages that have no internal links, and sitemaps often include URLs that were quietly deleted years ago.
For each URL, capture these columns at minimum:
• URL and page title
• Meta description
• Word count
• Content type (blog post, landing page, product page, documentation)
• Publish date and last updated date
• Crawl depth and inbound internal links
Exclude paginated archives, tag pages, and utility pages like login screens from scoring, but keep them in a separate tab so you know they exist. On a small site you can build the inventory straight from a CMS export in under an hour. On large sites, budget a full day for this step alone.

STEP 3 OF 7 ● ● ● ● ● ● ●
Pull Performance Data for Every URL
Now attach numbers to every row. From Google Search Console, open the Performance report, set the date range to the last 12 months, switch to the Pages tab, and export clicks, impressions, CTR, and average position. One catch worth knowing: the Search Console interface caps exports at 1,000 rows. For bigger sites, pull the data through Looker Studio or the Search Console API instead, both of which go far beyond that limit.
From GA4, export engagement rate, average engagement time, and key events per page path. Engagement rate in GA4 counts sessions that lasted over 10 seconds, triggered a key event, or included at least two page views, which makes it a far more honest signal than the old bounce rate ever was.
Finally, pull referring domains per URL from Ahrefs Webmaster Tools or whatever backlink tool you have. Merge everything into your inventory sheet using XLOOKUP on the URL. Expect mismatches from trailing slashes and uppercase characters, and normalize URLs before matching or the merge will silently drop rows.
STEP 4 OF 7 ● ● ● ● ● ● ●
Score Every Page Against the Same Criteria
Consistency beats sophistication here. Score each page on six criteria, each from 1 to 5, and resist the urge to add more, because every extra column doubles the review time.
SHEET 5 · SCORING CRITERIA
| CRITERION | HOW TO JUDGE IT |
|---|---|
| Traffic | Organic clicks over the last 12 months, relative to your site average |
| Search potential | Solid impressions but average position between 11 and 20, or high impressions with weak CTR |
| Engagement | Average engagement time compared against your site-wide number |
| Backlinks | Referring domains pointing at the URL |
| Quality | Accuracy, depth, and whether the page still matches search intent |
| Strategic fit | Whether the topic still matters to what the business sells today |
The first four come straight from your data columns. The last two require actually opening the page and reading it, and there is no shortcut for that. On the 600-post audit described earlier, the manual quality pass took longer than every data step combined, but it also caught outdated pricing, dead embedded videos, and screenshots of interfaces that had not existed for three years. No metric would have flagged any of that.

STEP 5 OF 7 ● ● ● ● ● ● ●
Assign One of Four Actions to Every Page
Every URL gets exactly one verdict. Forcing a single choice per row is what turns an audit from a report into a plan.
SHEET 6 · THE DECISION MATRIX
| ACTION | WHEN IT APPLIES | WHAT TO DO |
|---|---|---|
| KEEP | Strong traffic, accurate content, still relevant | Leave it alone and note a future review date |
| UPDATE | Good topic, weak execution or outdated details | Refresh stats, expand thin sections, rewrite title and meta, add internal links |
| CONSOLIDATE | Two or more pages targeting the same keyword | Merge into the strongest URL, 301 redirect the losers to it |
| REMOVE | No clicks, no backlinks, no strategic value | Delete, then 301 redirect to the closest relevant page or return a 410 if nothing fits |
Two safety checks before anyone deletes anything. First, sort by referring domains and confirm no removal candidate holds meaningful backlinks; if it does, the page gets redirected, never just deleted. Second, check whether any low-traffic page quietly drives conversions. One comparison page nearly got flagged for removal because it earned barely 60 visits a month, until GA4 showed it was assisting a noticeable share of demo signups. Traffic is not the only currency a page can earn.
STEP 6 OF 7 ● ● ● ● ● ● ●
Prioritize the Work
An audit of any real size produces more tasks than you can do at once, so sequence by expected payoff. Three groups consistently deliver the fastest results:
• Page two rankings. Pages sitting at positions 11 to 20 are the classic quick win. A meaningful update plus a few internal links can push them onto page one, where nearly all clicks live.
• High impressions, low CTR. Search Console shows these instantly. Usually the fix is a sharper title tag and meta description, which takes minutes per page.
• Decayed former winners. Posts that ranked well a year ago and slipped. Compare two 12-month windows in Search Console to find them, then refresh the content.
Batch the work into something sustainable, like ten page updates per week, rather than attempting a heroic single sprint that dies after day three.

STEP 7 OF 7 ● ● ● ● ● ● ●
Execute, Document, and Re-Measure
Add a change log column to the sheet and record what was done to each URL and on what date. This is the step almost everyone skips, and it is the reason most teams cannot say whether their audit worked. Search engines need time to process changes, so wait six to eight weeks, then compare clicks and average position for the modified pages against their pre-audit baseline. Updated pages that improved validate your scoring rules. Pages that did not respond tell you where your assumptions were wrong, which sharpens the next audit.
Five Mistakes That Ruin Content Audits
1 Auditing without a goal. The data collection becomes an end in itself and the spreadsheet dies in a shared drive.
2 Deleting pages that hold backlinks. Every removal candidate needs a backlink check first. Redirect authority, do not throw it away.
3 Treating word count as quality. A 400-word page that answers its query perfectly beats a padded 2,500-word page that buries the answer.
4 Changing everything at once. If you update titles, rewrite content, and restructure internal links in the same week, you will never know which change moved the numbers.
5 Ignoring money pages with modest traffic. Comparison pages, pricing explainers, and bottom-of-funnel content often convert at rates that make their traffic numbers irrelevant.
How Often Should You Audit?
SHEET 7 · AUDIT CADENCE
| SITE SITUATION | SENSIBLE FREQUENCY |
|---|---|
| Under 100 pages | Full audit once a year |
| 100 to 1,000 pages | Every 6 to 12 months |
| Over 1,000 pages, news, or ecommerce | Rolling audits by section, one section per quarter |
| Before a migration or redesign | A full audit immediately before, and a check 4 weeks after launch |
Rolling audits are the honest answer for big sites. Auditing 5,000 URLs in one push is a project nobody finishes, but auditing the highest-value section every quarter is a habit a small team can actually keep.
Final VerdictHere is the honest truth: content audits are tedious. There is a stretch in the middle of every one, usually around row 300 of the spreadsheet, where the whole exercise starts to feel like a mistake. But no other single project produces more reliable results for an established site. Publishing new content is a bet. Fixing what you already own, guided by 12 months of your own data, is closer to a sure thing. If you take one thing from this guide, make it this: do your first audit manually, in a plain spreadsheet, before buying any tool that promises to automate it. The judgment you build by reading your own pages against your own numbers is the actual skill. The tools just make you faster at applying it. Block out a week, pick the goal, and start the crawl. Your future traffic reports will show the difference. |