I lost a $2,400 follow-up because it lived in three different places.
Email. Slack. A half-updated spreadsheet I swore I’d clean up “next week.”
The client went quiet. I assumed they were busy. Two weeks later I found the thread buried under a vendor invoice and a school permission slip for Eli’s field trip. By then the work had gone to someone else.
That one stung. Not because of the money alone. Because it was completely avoidable.
So I stopped trusting my memory and built a single Notion client dashboard that forces every open loop into one place. This is the exact setup I still use for my own consulting work and the one I hand to most 5–15 person teams.

Why the old way failed
Scattered information kills follow-ups
Client notes lived in email threads
Next actions lived in Slack DMs or my head
Due dates lived in a Google Sheet that nobody opened on Fridays
Context lived in random Notion pages I created in a hurry
When everything is “somewhere,” nothing is reliable.
The real cost wasn’t just the lost invoice
It was the mental tax of constantly wondering whether I had dropped something. That low-grade anxiety is expensive. It makes you check email at 9:47 p.m. instead of watching the Buckeyes.
The rule that shaped this dashboard
If it takes longer to maintain than the work it saves, it’s gone.
This dashboard has five databases. That’s it. No nested dashboards inside dashboards. No twenty linked views that look impressive and die in two weeks.
The five tables
1. Clients
The single source of truth for every active relationship.
Key properties:
Status (Active / On Hold / Closed)
Primary Contact
Last Contact Date
Next Follow-Up Date
Monthly Value (or project value)
Health (Green / Yellow / Red) — I update this manually every Monday
Linked Projects
Linked Notes
I force myself to set a Next Follow-Up Date on every active client. If that date is in the past, the page turns red in my views. No excuses.
2. Projects
Only active work. Not a graveyard of old ideas.
Key properties:
Client (relation)
Status (Not Started / In Progress / Waiting on Client / Done)
Owner (me or a teammate)
Due Date
Priority
Open Tasks count (rollup)
Last Update
3. Tasks
The actual work items. Kept deliberately light.
Key properties:
Project (relation)
Client (relation, optional)
Status
Due Date
Priority
Blocked? (checkbox)
Notes
I do not put every tiny to-do here. Only things that would cause a problem if they slipped.
4. Notes & Decisions
Meeting notes, call summaries, important emails, and decisions that need to survive longer than my short-term memory.
Key properties:
Client
Project
Date
Type (Call / Email / Decision / Other)
Key Takeaways (the only field I actually read later)
5. Follow-Ups
A dedicated database for anything that requires a future action with a human.
This is the table that would have saved the $2,400.
Key properties:
Client
Related Project or Note
Follow-Up Date
Type (Check-in / Proposal / Invoice / Feedback)
Status (Open / Done / Skipped)
Outcome
I review this database every morning with coffee. Anything due today or overdue gets handled before I open Slack.
The views I actually use
Today’s Work
A filtered view of Tasks + Follow-Ups due today or overdue. Sorted by priority. This is my default landing page.
Client Health
Clients sorted by Health and Last Contact Date. Yellow and Red clients sit at the top. I refuse to let a relationship go quiet for more than 10–14 days without a deliberate reason.
Waiting On Client
Projects and tasks where the ball is in their court. Stops me from chasing people who haven’t replied yet while also stopping me from forgetting them entirely.
This Week’s Follow-Ups
Simple calendar-style view of everything that needs human contact in the next seven days.
How I keep it from becoming another abandoned system
Monday 15-minute reset
Every Monday before the kids are fully awake I do three things:
Update Client Health
Clear or reschedule any overdue Follow-Ups
Archive completed Projects and Tasks
Fifteen minutes. Timer on. Done.
No orphan pages
Every new note or task must be linked to a Client or Project. Notion’s relation property makes this easy to enforce with a simple template.
Ugly is allowed
I do not spend time making the dashboard pretty. Buttons are fine. Icons are fine. Custom covers and multi-colored callout blocks are not required. If it works when I’m tired, it stays.
What changed after I built this
Zero lost follow-ups in the last fourteen months
Average time from “I should check on this client” to actual action dropped from days to under ten minutes
I stopped keeping a second brain in my email search bar
When I hand a version of this to a client team, the biggest comment I hear is “I finally know what I’m supposed to do today”
The template structure (high level)
You can rebuild this in under an hour:
Create five full-page databases
Add the relations between them
Build the four views above
Create a simple template button for “New Client” that pre-fills Status, Health, and a default Follow-Up task
Set a recurring reminder for the Monday reset
That’s the whole system.

Final rule check
Did this take longer to set up than the work it saves?
No. The first version took me about 90 minutes. It has saved me multiple hours every month since, plus the $2,400 I would have kept losing in different ways.
If your current client system requires you to remember where things live, it’s already broken.
Build the dashboard. Link the follow-ups. Check it with coffee.
Then go do the actual work.
No feedback yet — submit the first.