Skip to content
Academy
Marketing Academy · Field Work●Content Marketing
MiniAudit· 25 minutes

The Monday Review: Auditing a Stale Editorial Calendar

Duolingo

Objective: Given a real 20-row calendar export, identify which rows are missing a named owner, which have gone stale (no status change in 2+ weeks), and which were planned by channel instead of by story.

You've just joined Duolingo's content team and inherited a 20-row calendar nobody has reviewed in three weeks. Your manager wants a status report before Monday's planning meeting.

Audit the export against the lesson's five required columns and flag every row with a missing owner, a stale status, or a channel-only entry with no story or theme attached.

Before you start

What you'll need

Free path (everything below is enough to finish)

FreeFilter and cross-reference the calendar export

Free, standard tool for a one-time audit of a spreadsheet export

The process

1 step

Step 01 of 01

Checking calendar rows for the five required columns

Component 1 says every row needs a publish date, title, channel, owner, and status; 'the team' is not an owner, and a calendar untouched for over two weeks stops being a source of truth (per the Common Mistakes section).

Of the 20 rows, 5 list 'Content Team' instead of a person's name, and 6 haven't had a status change since the last sprint, 18 days ago. Which of these 11 rows are the real risk going into Monday's meeting?

Google Sheets— Import the 20-row export, freeze row 1, add a 'Risk' column.

Procedure

  1. Filter Owner = 'Content Team' or blank; list all matches
  2. Filter last-status-change date > 14 days ago; list all matches
  3. Cross-reference the two lists: rows appearing in both are the highest risk, since no one is accountable AND nothing has moved
Sample output
NO NAMED OWNER (5 rows):
  Nov 3, Blog, 'Q4 email audit'
  Nov 10, LinkedIn, 'Streak feature launch'

STALE 14+ DAYS (6 rows):
  Oct 20, Blog, 'Duolingo Max update' — stuck at Draft since Oct 22

HIGH RISK (both): 2 rows

Healthy

Every row has a named owner, and no row has gone more than 14 days without a status update.

Unhealthy

Reporting '11 rows have an issue' as one flat list, without separating the 2 that are both unowned AND stale from the 9 with only one problem.

What this means

An unowned row and a stale row are different failure modes; a row with both is the one that will actually miss its publish date.

So what do I do about it?

SymptomActionEffort
5 rows list 'Content Team' instead of a personAssign a named owner to each in the Monday meeting before discussing anything else5 min
2 rows are both unowned and stale 14+ daysEscalate these 2 specifically as at-risk for their publish date, not just 'needs an owner'30 min
YouYou can do this yourself, no engineering access required.

Final deliverable

A risk-flagged version of the 20-row calendar, separating unowned rows, stale rows, and rows that are both, ready to drive Monday's 30-minute review.

See a reference example
Sample output
Allbirds, calendar audit (excerpt)

NO NAMED OWNER (3 of 18 rows):
  Dec 1, Email, 'Holiday restock notice'

STALE 14+ DAYS (2 of 18 rows):
  Nov 15, Blog, 'Wool runner sustainability update' — stuck at Review since Nov 18

HIGH RISK (both): 1 row -> escalate first

Success criteria

You're done when you can:

  • Correctly identifies every row missing a named individual owner
  • Correctly identifies every row with no status change in 14+ days
  • Separates the overlap (both unowned and stale) as the highest-priority group