Content Calendar
Stop tracking content status in spreadsheets that nobody trusts.
What changes when you build this
The gaps you're living with today,
and what this tool fixes.
Problems
- Content status lives in 3+ tools — writers check Notion, managers check Sheets, and neither matches what's actually live
- Weekly content syncs start with 10 minutes of "wait, where is this piece?" before any real planning happens
- Drafts stall for weeks with no one flagged because there's no ownership visible at a glance
- Channel leads have no view of what's coming without asking writers directly
- Publishing dates slip because nothing surfaces blocked or review-pending items until it's too late
Solutions
- One calendar view shows every content item, its status, its owner, and its publish date in real time
- Weekly syncs start with clean, current data — no manual assembly before the meeting
- Stale drafts are flagged automatically after 7+ days without an update so blockers surface early
- Channel-specific filters let leads see only what's relevant to their pipeline
- A status-gated workflow stops items from moving to "scheduled" before they've cleared review
What the data model looks like
Refine generates this table structure from your
prompt. Edit columns, types, and relationships after.
100%
Mistakes to avoid
These are the failure patterns teams hit most often
when building this.
No single source of status truthFix: Mirror status updates from Notion or Sheets into the content_items table so the calendar always reflects the actual state.
No single source of status truth
Fix:Mirror status updates from Notion or Sheets into the content_items table so the calendar always reflects the actual state.
Stale drafts with no ownerFix: Flag any item where days_in_status exceeds 7 and author is null — unassigned drafts are the most common silent blockers.
Stale drafts with no owner
Fix:Flag any item where days_in_status exceeds 7 and author is null — unassigned drafts are the most common silent blockers.
Publish dates set without dependenciesFix: Add a review_approved boolean field and block scheduling until it's set to true.
Publish dates set without dependencies
Fix:Add a review_approved boolean field and block scheduling until it's set to true.
Channel leads flying blindFix: Build role-filtered views from day one so each channel lead has a default view scoped to their pipeline only.
Channel leads flying blind
Fix:Build role-filtered views from day one so each channel lead has a default view scoped to their pipeline only.
Calendar used for tracking, not planningFix: Add a rolling 4-week ahead view so the team spots gaps before they become emergencies, not after.
Calendar used for tracking, not planning
Fix:Add a rolling 4-week ahead view so the team spots gaps before they become emergencies, not after.