If you’ve ever tried to run content for a real brand — not a personal newsletter, but a brand with paid media spend, weekly shipping cadence, and three people in three time zones who need to know what’s going out on Tuesday — you’ve felt this. The “content tool” market is enormous. Everyone has a workflow. Almost none of them survive a real client deadline.
We spent eighteen months at Choco Media trying every “AI-native content platform” with funding and a Twitter following. We rebuilt our content workflow four times. Then, in two weeks last January, we sat down and built it properly on top of plain Notion + Zapier + a single Google Sheet. It has been our system ever since — across nine retainer clients, two freelance writers, and roughly 600 published assets.
This post is the full breakdown: what we tried, why those tools broke, the exact stack we replaced them with, and the unexpected second-order effect that made our retainer renewals quieter. If you’re a founder, a marketing lead, or another agency rethinking your content stack — this is what we’d actually recommend, with the caveats.
Why not a fancy SaaS?
We tried six of them. The list is unkind to name in print, but they followed the same pattern, which is the real story.
Every “all-in-one content platform” we touched had the same arc:
- Excellent onboarding. Sales engineer flies you through the demo, the UI is gorgeous, the templates make you feel like a professional.
- Three weeks of momentum. Your team adopts the basic workflow. The first month is genuinely better than what you had.
- One critical edge case doesn’t fit. A client wants approvals in their own Notion. A freelance writer can’t get a seat license. The reporting view doesn’t filter by your account manager.
- Manual spreadsheets to plug the gap. Suddenly the “single source of truth” has two sources of truth. Then three.
- Cancellation, six months in. Or, worse, you stop using the platform but keep paying because no one wants to migrate again.
The platform that fixes the last 10% of your workflow is almost always the platform that broke the first 90%.
The reason is structural. SaaS content tools are built around an opinion — usually the founder’s idealised workflow, modelled on the agency or in-house team where they used to work. That opinion is the product’s strength when your workflow matches it. It is the product’s weakness when yours doesn’t.
Notion gives us 100% of the surface area and exactly 0% of the opinion. That’s the trade-off. We have to build every view, every database, every relation ourselves. Nothing fights us back. Nothing pushes a feature update that breaks our Tuesday shoot list.
The stack we ended up with
Here’s the actual production system. We’ve audited it three times in 2026; this is what’s still standing.
Notion: single source of truth
One workspace per client, shared with us as guests. Inside, a small set of databases that talk to each other:
- Pillars — 3-5 content themes per client, with positioning notes and target keywords. Updated quarterly.
- Briefs — One row per planned asset. Linked to a pillar, assigned to a writer, with a target ship date and a “definition of done.”
- Drafts — Where the actual writing happens. We don’t use Google Docs. The brief and the draft live in the same place; status moves through “writing → internal review → client review → published.”
- Shipped — Auto-filtered view of everything that went out, with date, channel, and a “what we’d change” column we fill in after.
That’s it. No project management plugin. No external review tool. We’ve found that the more layers you add, the more your team forgets which layer to use.
Zapier: the wiring
Zapier connects Notion to the platforms where work actually ships. Four flows do 95% of the heavy lifting:
- Notion → Frame.io when a video draft is marked “ready for review.” Frame.io is where the actual frame-by-frame approval happens; the link gets posted back into the Notion row automatically.
- Notion → Slack pings the right channel whenever a row hits “client review.” We learned the hard way that clients don’t check Notion; they check Slack.
- Notion → Google Drive creates a date-stamped folder for finished assets, structured the way the client’s brand team expects.
- Notion → Gmail sends a weekly digest to each client account lead every Friday at 16:30. “Here’s what shipped. Here’s what’s queued for next week. Here’s where we’re blocked.” We pre-built this template; the digest writes itself from Notion’s database.
Loom: async approvals
For long-form drafts (~1,200+ words) we record a 90-second Loom walking through editorial choices before sending for review. Reviewers approve in roughly 40% less time when they can hear the reasoning, rather than read it in margin comments. We learned this the embarrassing way after losing two days on a re-write a client later admitted was a misunderstanding.
One Google Sheet (the dumb one)
Exactly one spreadsheet, kept alive because the client’s CFO wanted it. It pulls a basic monthly summary out of Notion via Zapier. It does nothing important. We mention it because someone on your team will demand a spreadsheet at some point, and the right move is to give them one — not let it sprawl.
Cost: what we used to pay vs. what we pay now
This part matters if you’re justifying the switch to a finance team.
- Before: roughly €1,400/month across a content SaaS, a separate review tool, a separate publishing tool, a separate analytics dashboard, plus seats per writer.
- After: roughly €180/month — Notion (Plus, billed annually), Zapier (Professional), Loom (Business), and the shared Google Workspace we already pay for.
The savings aren’t the headline. The headline is: when a new freelancer joins, onboarding takes 20 minutes instead of two days. When a client wants to see what’s going out next week, they look in Notion. When a junior writer’s account license lapses, nothing breaks.
What surprised us — the second-order effect
Here’s the part we didn’t expect, and it’s now the reason we recommend this stack to anyone running a small studio or in-house team.
Client clarity went up. Dramatically.
Most of our retainer clients had never seen what “next week” actually looked like, week-by-week, before. They were used to the agency dance — vague timelines, missed expectations, end-of-month surprise invoices for “extra work.” When the calendar lived in Notion and they could see it, expectations stayed clean. When a client asked “can we add a podcast clip this week?” we could point at the calendar and answer in 30 seconds: yes, but we’d push the Friday post to Monday. Or: no, we’re already at capacity — let’s add it to next week.
This wasn’t a tool feature. It was the side effect of moving the work out of black-box agency-land and into a shared workspace. The retainer renewals got quieter because the conversations were already happening, transparently, every week.
If you’re choosing a content tool primarily for your team’s productivity, you’re optimising for the wrong outcome. The right outcome is your client’s confidence — and that’s almost always a visibility problem, not a tooling problem.
What we’d do differently next time
A few honest mistakes worth flagging.
Database relations are tempting; resist
Notion lets you relate every database to every other database. In month two we had eight cross-relations and it was beautiful. By month four we couldn’t remember which “Theme” was the parent of which “Pillar.” We refactored to flat databases with just one or two relations, and the system became maintainable.
Don’t try to make Notion your CMS
For a while we considered publishing directly out of Notion to client websites. It was technically possible. It was also a maintenance nightmare. Notion is where work is planned and reviewed; the actual CMS (WordPress, Webflow, Ghost, Sanity — whatever the client uses) stays where it is. The Zapier flow that pushes the finished asset is one-way.
Templates beat training
The biggest unlock wasn’t onboarding documents. It was duplicate-this-page templates: “Q3 brand campaign brief — duplicate me”, “weekly digest — duplicate me”, “new client onboarding — duplicate me.” Anyone joining the team copies the template, fills it in, learns the system by doing.
When this stack doesn’t make sense
We’re not zealots. There are at least three situations where you should not do what we did:
- You’re a content team of 30+. At that scale the operational overhead of maintaining Notion + Zapier flows exceeds the licence cost of a real PM platform. Move to something like Asana, Monday, or Wrike with a dedicated ops person.
- You’re regulated. If you’re in healthcare, financial services, or government and need audit trails with version history older than 90 days, Notion’s audit log won’t pass review. Use a tool with proper compliance.
- Your team is not technical-curious. Building a Notion workspace is plumbing. If no one on your team enjoys plumbing, you’ll end up with a half-built system and frustration. Buy something opinionated instead.
How AI fits into this — and where it doesn’t
It would be off-brand for us not to address this. We run an AI content production service; we use AI in nearly every step of our content engine. But not all the steps.
What AI does in this stack:
- Generates first-draft briefs from a transcript or a client call
- Suggests three alternative headlines for every draft
- Drafts the weekly client digest from the Notion database
- Reviews drafts for tone consistency before they go to clients
- Pulls out three social-clip ideas from every long-form post
What AI doesn’t do:
- Pick the pillars. That’s a strategy decision rooted in business goals.
- Approve drafts. A human always reads the final version before “client review.”
- Write opinions. AI is excellent at structure and editing; it is mediocre at having a perspective. Real posts need a real perspective.
- Manage clients. The “weekly digest” Slack message looks like it could be automated end-to-end. We don’t. The human review takes 20 seconds and catches the one thing each week that would have made a client confused.
If you want the longer version of how we think about this, our AI promise page lays it out. The short version: AI accelerates the boring parts so the human attention can go to the parts that need it.
The honest summary
This is not the post where I tell you Notion is magic. Notion is a database with a nice text editor. Zapier is glue. Loom is a webcam. None of these tools are special.
What’s special is what you can build when you stop optimising for the platform and start optimising for the work. A small team with a boring stack ships more than a large team with a sexy stack — every single quarter, in our experience.
If you’re rebuilding your content workflow this quarter, my suggestion: spend two weeks designing the workflow you want on paper. Then build it in the cheapest, most flexible tools you can find. Add complexity only when something actually breaks. Most of the time, the thing you thought would break, doesn’t.
And the part you didn’t expect to be the win — your clients seeing your work, in plain sight, every week — turns out to be worth more than every dashboard SaaS combined.
If you want to talk through your own content engine — what’s working, what’s stuck, what the right next move is — drop us a line. We take on a handful of new retainer clients each quarter.

