Every content-refresh spreadsheet has a quiet bug: a blank cell is treated as zero. The page with no traffic data, the page nobody has estimated effort for, the page whose decline nobody measured: all of them sink to the bottom of the priority list. Not because they matter less, but because a formula multiplied by nothing.
That bug decides more refresh roadmaps than strategy does. The pages most likely to be neglected are often the ones with the least data, and the least data often means the least attention, which is exactly how a page drifts into irrelevance.
This guide fixes the mechanics: a scoring model that refuses to rank incomplete rows, an evidence-grade system that keeps judgment honest, a decay typology that maps each problem to the right refresh type, and a results loop that measures what changed.
The arithmetic of a silent bug
Take a typical priority formula: Impact × Decay ÷ Effort. In most spreadsheets a blank Impact cell counts as 0, so the whole score is 0, and the page ranks dead last, below pages you scored as genuinely unimportant. A blank Effort cell, used as a divisor, throws an error or (depending on how the formula is written) gets wrapped in an IFERROR that quietly turns it into 0 as well.
Either way, missing data impersonates a low score. And because the sort hides it at the bottom, nobody notices.
Step 1: Make incompleteness visible
Replace the bare formula with one that refuses to score incomplete rows:
=IF(COUNTBLANK(B2:D2)>0, "Incomplete", B2*C2/D2)
where B, C, and D are Impact, Decay, and Effort. Now an incomplete row shows the word Incomplete, which sorts separately from numbers and can’t be confused with a low score.
That changes the workflow. The prioritized list has two sections: scored pages, ranked by number, and incomplete pages, which form their own queue. The incomplete queue’s job isn’t to be refreshed. It’s to be assessed, and assessment is usually fast. Twenty minutes per page, in batches, turns “Incomplete” into a real score.
The decision rule: never refresh from the scored list while the incomplete queue holds a page you suspect is high-impact. Assess it first. Otherwise you’ll optimize a mid-value page while a high-value one sits unscored.
Anchor the scales before anyone scores
A 1–5 Impact scale means nothing until each number is defined, and two people scoring the same page will disagree by two points if it isn’t. Write anchors once, at the top of the sheet:
| Score | Impact | Decay | Effort |
|---|---|---|---|
| 1 | Little traffic, no conversion role | Accurate and competitive | Under an hour |
| 3 | Steady traffic, or supports a key page | Noticeably dated, or slipping | Half a day |
| 5 | Top traffic, or a direct conversion path | Wrong, harmful, or obsolete | Multiple days, or needs specialist input |
These anchors are illustrative. Tune them to your site’s scale, but write them down. Two refinements matter more than the exact wording:
- Score Impact on the page’s job, not just its traffic. A pricing FAQ with modest traffic but a direct path to a booking form can outrank a popular blog post that converts nobody. Note the job in the inventory, such as “converts,” “supports,” “attracts,” or “informs,” and anchor Impact to it.
- Score Effort including review. A refresh that needs client sign-off, legal review, or new photography isn’t a one-hour job, however small the edit. Effort scored on writing time alone is the second most common way roadmaps go wrong, after blank-as-zero.
Anchored scales also make the evidence grades meaningful. A Judged 3 against a written anchor is a defensible estimate. A Judged 3 against nothing is a mood.
Step 2: Grade the evidence behind every score
Not all scores are equal. A 3 for Impact based on Search Console data is a different animal from a 3 based on a hunch. Add an evidence-grade column next to each input:
- M, Measured: from a data source, such as Search Console clicks, analytics conversions, or ranking data.
- O, Observed: from direct inspection. You read the page and saw the outdated pricing.
- J, Judged: an informed estimate. Fine, and often necessary, but labeled.
Then add one rule: any row scored entirely on J inputs needs a second opinion before it reaches the top five. Judged scores are where pet projects hide. The grade column makes them visible without banning them.
Step 3: Diagnose the decay type
“This page is outdated” covers four very different problems, and each one calls for a different refresh:
| Decay type | What happened | Signal | Refresh type |
|---|---|---|---|
| Factual | Facts, prices, steps, or screenshots changed | Observed errors on the page | Patch: update the facts and the date, keep the structure |
| Competitive | Better pages appeared for the same query | Rankings slipping while the page itself is unchanged | Rebuild: new depth, new angle, new structure |
| Intent | Searchers now want something different | The results page shows a different content type | Rebuild or Retire: match the new intent, or let it go |
| Overlap | Two of your pages compete for the same query | Both rank weakly, alternating | Merge: consolidate, redirect the weaker page |
Matching the decay type to the refresh type prevents the most expensive mistake in refresh work: rebuilding a page that only needed a patch, or patching a page whose intent has moved on.
For merges, follow Google’s own guidance. Consolidate duplicates, signal the canonical URL, and use permanent server-side redirects for pages that are gone for good (Google: consolidate duplicate URLs; Google: redirects and Search).
Step 4: Write the refresh brief before touching the page
Each refresh gets a short brief with four fields:
- Decay type and the evidence for it.
- Change scope: exactly what changes, and what stays.
- Success measure: the metric you’ll compare, the baseline value, and the baseline date.
- Check date: when you’ll look again. Long enough for the change to be recrawled and re-evaluated.
Field three is where most refresh programs fail. Without a baseline recorded before the change, the “after” number has nothing to compare against, and the team ends up arguing from memory.
Step 5: Log changes, then measure honestly
Keep a change log with one row per edit: page, date, change type, a summary of what changed. When you check results, use the same rule as the scoring model. A delta shows only when both values exist. If the baseline was never recorded, the delta cell shows a dash, not a number someone reconstructed from memory.
For search performance, Search Console is your measured source, and it now covers AI features too. Google states that sites appearing in AI features such as AI Overviews and AI Mode are included in the overall search traffic in the Performance report, under the “Web” search type (Google: AI features and your website). Compare the same date range length before and after, and note seasonality in the log rather than pretending it doesn’t exist.
Worked example: a small workwear shop
Illustrative example. Tidewell Supply, a small online shop selling repair-friendly workwear, inventories 40 pages. On the first pass, 14 rows are Incomplete: no effort estimate on 9, no decay assessment on 5.
The bare formula would have ranked those 14 last. Instead they form an assessment queue, and two hours of review turns up a surprise: the “How to patch canvas work pants” guide, Incomplete because nobody had looked at it in a year, shows clear factual decay. It references a patch kit Tidewell no longer sells. Measured impact is high, effort is low. It jumps straight to the top of the scored list.
Meanwhile, two “denim care” posts score Incomplete on Decay. Assessment reveals overlap: they compete for the same query. The refresh type is Merge, with one 301 redirect, and a change-log row recording the date.
The resulting top three:
| Page | Decay | Refresh | Evidence grades |
|---|---|---|---|
| Patching canvas pants guide | Factual | Patch | Impact M, Decay O, Effort J |
| Denim care (merged) | Overlap | Merge | Impact M, Decay O, Effort O |
| Workwear sizing guide | Competitive | Rebuild | Impact M, Decay M, Effort J |
None of those three would have reached the top with blank-as-zero scoring. Two of them had blanks.
The four rules, condensed
- Blank is Incomplete, never zero.
- Every input carries an evidence grade, and all-J rows get a second opinion.
- Decay type determines refresh type.
- No baseline, no delta.
Follow those four and your refresh roadmap reflects the site you actually have, not the site your spreadsheet happened to have data for.
Run it from a ready-made workbook
Organa Obscura’s Website Content-Refresh Kit builds these mechanics in. Its Prioritization tab uses Incomplete-safe formulas, so a missing Impact, Decay, or Effort value displays “Incomplete” instead of a misleading score. The Results Tracker shows a delta only once both the baseline and the result exist. You also get a Page Inventory with status values, a Refresh Brief template, a Change Log, and a fully worked example for a fictional outdoor retailer, Harbor Thread Co., plus a 12-page guide covering inventory statuses, prioritization math, and the refresh brief method. It works in Google Sheets and Excel, with Markdown templates for teams that write elsewhere.
Pair it with the SEO & Content Prompt Pack, whose Refresh & Pruning category gives you ten fill-in prompts for exactly the assessment work your Incomplete queue demands.
Leave a Reply