The crawl finishes and the report says 3,412 issues. Duplicate titles, missing alt text, redirect chains, a few canonicals pointing somewhere odd, and a long tail of warnings you've seen on every site you've ever audited.
None of that is a plan. It's a list. And a list sorted by issue count will send your team straight to 6,000 missing alt attributes while 40 key category pages sit behind a stray noindex. Prioritization turns the list into an order of work.
The Question That Sorts Everything
What actually happens if we don't fix this?
1,100 product pages canonicalize to the homepage. Google may treat them as duplicates and drop them from results.
6,000 images are missing alt text. It matters for accessibility and image search, but nothing stops working while it waits.
Issue counts measure how often something happens. They don't measure how much it matters.
Four Things to Score
Severity
What the problem does to crawling, indexing, or reach.
Reach
How many URLs, and what they share.
Page value
Whether the affected URLs earn traffic, revenue, or links.
Effort
What the fix costs in time, people, and testing.
1. Severity: what the problem does
- CriticalStops important pages from being crawled, indexed, or reached. Important pages blocked in robots.txt,
noindexon pages that should rank, canonicals to unrelated URLs, 5xx errors on key sections, redirects sending key pages to the wrong place. - HighWeakens how pages are crawled or understood. Duplicate titles across a template, important pages with no internal links, redirect chains in the main navigation.
- MediumWorth fixing, but nothing breaks while it waits. Duplicate meta descriptions, weak anchor text, unoptimized images on key templates.
- LowLittle practical effect. A handful of missing alt attributes, minor formatting on old pages.
Google's own documentation helps calibrate the scale:
- 404sGoogle says 404s on URLs that shouldn't exist don't harm indexing or ranking. A dead old URL is usually low priority. A 404 on a page that still gets links and traffic is not.
- Meta descriptionsThey aren't a ranking factor, and Google often writes its own snippet anyway. Duplicates rarely belong in the "now" column.
- Crawl budgetGoogle says it mainly matters for very large sites (around a million pages or more) or sites where many pages change daily. On a 2,000-page site, "crawl budget waste" usually isn't urgent.
2. Reach: how many URLs, and why
A finding on 4,500 URLs almost never means 4,500 separate mistakes. It usually means one template, one CMS field, one plugin, or one routing rule. The useful question isn't "how many URLs?" but "why are all these URLs producing the same finding?" Find the shared source and one fix clears thousands of URLs.
3. Page value: which URLs matter
A broken canonical on your top 50 landing pages outranks the same problem on 5,000 tag archives. Judge value with real data:
- Search Console clicks and impressionsPer URL, so you weigh issues against pages that already earn visibility.
- Revenue or lead pagesAnything tied directly to conversions.
- Main navigation pagesPages linked sitewide carry the most internal link value.
- Pages with external backlinksBreaking them wastes authority you already earned.
4. Effort: what the fix costs
A Formula That Doesn't Lie to You
Many prioritization templates add effort to the other scores, as if hard fixes were more important. Effort should reduce priority, so divide by it:
Score each factor from 1 to 5:
| Finding | Severity | Reach | Value | Effort | Score |
|---|---|---|---|---|---|
| Canonicals to homepage on product template | 5 | 5 | 5 | 2 | 62.5 |
| Noindex on 12 category pages | 5 | 2 | 5 | 1 | 50 |
| Broken internal links in footer | 3 | 5 | 3 | 1 | 45 |
| Duplicate titles on product template | 3 | 5 | 4 | 2 | 30 |
| Missing alt text on 6,000 images | 2 | 5 | 2 | 3 | 6.7 |
| Duplicate meta descriptions on blog | 2 | 3 | 2 | 2 | 6 |
Treat the score as a way to start the conversation, not end it. If the formula puts something obviously important in the wrong place, trust your judgment and adjust the inputs.
Group Findings by Root Cause
Audit tools report symptoms. Teams fix causes. Say the audit shows 1,200 duplicate titles, 950 missing meta descriptions, 1,100 duplicate H1s, and 800 duplicate descriptions, and every URL is a product page. That's not four problems. It's one project:
- Build titles from product dataProduct name, category, and brand.
- Generate descriptions from attributesSo no two products share one.
- Use the product name as the H1One clear heading per page.
- Re-crawl the product URLsConfirm all four findings closed together.
Grouping like this often shrinks a 3,000-issue report to about a dozen pieces of work.
Separate Quick Wins From Projects
| Low effort | High effort | |
|---|---|---|
| High impact | Do now | Plan as a project |
| Low impact | Batch into maintenance | Schedule later, or drop |
- Quick wins ship immediatelyFixing a stray
noindex, correcting a few redirects, removing a duplicate GA4 tag. They deliver the visible early progress that keeps the rest of the plan funded. - Projects get their own trackRebuilding URL structure, fixing JavaScript rendering, or reworking a template needs a scope, owner, deadline, and test plan. Put them in the same queue as one-line fixes and they'll sit there forever.
Build the Fix Queue
Critical
Indexing problems, wrong canonicals on valuable pages, 5xx errors, broken key URLs, sitewide tracking duplication.
High
Template metadata, internal linking gaps, redirect chains, structured data errors.
Medium
Large content cleanups, alt text backfill, minor metadata, low-value tidying.
Watch
Findings needing more evidence, low-value URLs, fixes waiting on the next crawl.
Give every item in "Now" and "Next" a named owner. An unassigned SEO task is a task that doesn't happen. Many will need a developer, and how you write them up decides how fast they get done, which we cover in our guide on reporting technical SEO issues to developers.
Prove Progress Between Audits
The plan isn't done when a ticket closes. It's done when the next crawl shows the affected URL count dropped and nothing new broke.
| Work item | URLs before | URLs after | Status |
|---|---|---|---|
| Product template canonicals | 1,100 | 8 | Monitoring |
| Category noindex | 12 | 0 | Verified |
| Footer broken links | 450 | 0 | Verified |
| Product template metadata | 3,200 | 320 | In progress |
"We found 3,412 issues."
"We grouped them into 11 projects, shipped the top 4, and cut affected URLs from 4,762 to 328."
For the testing side, before and after a release, see our guide on SEO testing before and after deployment.
Doing This With SiteAuditLint
The scoring above is what the SiteAuditLint Action Plan automates. Every issue comes ranked by impact, effort, and reach, with its severity, the affected URLs as evidence, why it matters, and how to fix it. High-impact problems like broken internal links and 4xx errors rise above low-value warnings, so a stray noindex doesn't get buried under thousands of alt text warnings.
On Pro, Search Console and GA4 data sit alongside the crawl, so you can weigh issues against the pages that earn clicks. After fixes ship, audit comparison shows which issues are new, fixed, increased, or decreased since any earlier audit, down to the URLs that changed.
Before You Assign a Priority
- What happens if this isn't fixed?
- How many URLs, and do they share one template or cause?
- Do the affected pages earn traffic, revenue, or links?
- Who can fix it, and how much work is it?
- Can it be grouped with related findings?
- How will the next crawl prove it's fixed?