Revenue
$1.2M ARR. Zero new logos.
I'm Head of Alternate Channels at SellCord, one of the largest Walmart-focused agencies in the market. Every dollar of the book I own came from clients we already had — channels those brands weren't running yet. On pace for $200K MRR by year end.
This is the cheapest revenue an agency can buy. It is also not a sales problem. Expansion only works when delivery is good enough that a client hands you a second channel, and when somebody has built the motion that says which client is ready for which one. That's the part I own.
Any agency buying its growth from paid search is capped by its ad budget. Expansion and retention are the only two levers that compound.
Margin
$290,000 that never left the business.
The implementation partner quoted $80–90K just to discover how the middleware would connect. Then around $250K to build it. That's most of a third of a million dollars to plug two systems together.
So I built the expert instead of buying it. An AI system grounded in the ERP's own configuration documentation, the middleware's integration patterns, and implementation best practice. 580 settings across 12 modules, reviewed one module at a time.
Discovery happened in-house. Then it armed our own developer to do the build against a reviewed specification — which is where the $200K went. We stopped paying a partner day rate for work we could already do ourselves.
Leadership signed it off because of how the sign-off was staged: AI review first, then finance, then the partner. The AI pass was a filter. Never the authority. Finance got a reviewed proposal instead of a blank configuration form, and a human owned every decision. That's the reason it got adopted instead of argued with.
Retention
Clients don't leave because the work was bad.
They leave because the work stopped matching what they were sold, and nobody caught the gap opening. So I built the Client Happiness Index.
Every sales call becomes a written record of what the client was promised. That record is the handoff from sales to operations — no more "what did we actually sell them" three weeks into onboarding. Then every week, the new call notes and transcripts get checked against those original promises. When one isn't being met, it flags, escalates to a senior manager, and writes the task into their project tool before the client raises it.
It reads Slack and email too, not just the calls, and builds a running timeline per client. One place to see what was promised, what's been said since, where it started drifting, and who was told. When an account gets escalated, nobody reconstructs six weeks of history out of three inboxes.
Built for an Amazon agency that white-labels for other Amazon agencies — so it had to be presentable to their partners, not just usable internally. Account health became something you show a client rather than something you discuss about them. Three accounts on a churn path stayed. On a book that size, keeping three beats any efficiency I could find anywhere else.
Knowledge
The person who quits doesn't take the files. They take the context.
Why this client gets handled that way. Which step everybody skips. What broke last time. None of it is written down anywhere, and all of it walks out on a Friday.
So I built Compass. Every person in the company documents their own tasks, responsibilities and tacit knowledge. Their manager approves it or sends it back for revision. It rolls up into department and org-wide coverage.
And it isn't a filing cabinet. Everything captured feeds an internal tool anyone in the company can query — in beta now. Knowledge is only worth capturing if it's retrievable the moment somebody needs it, without hunting down the person who wrote it. It also makes the SOP layer machine-readable, which is what has to be true before you can automate any of it.
The number I'd volunteer before being asked: 694 approved against 3,768 pending. Manager approval is the bottleneck, it's on the dashboard instead of buried, and I can tell you exactly which departments are behind. Coverage without approval isn't done — pretending otherwise is how these programmes quietly die.
49.8%
Half our work wasn't moving. I published that number anyway.
Against a 15% target. A metric only changes behaviour once people can see it.
Accountability
A board tells you what exists. Not what's moving.
Rolling out a project management tool doesn't make a team hit deadlines. It gives you a tidier record of missing them. We had the boards. We had the training. We still couldn't answer the Monday-morning question: what's actually progressing, and what's just sitting there looking busy?
So we built the measurement layer on top of it. Five metrics into one weighted score, closing itself every week. On-time rate. Blocker SLA. Stall rate. Workload split. Multi-week trend.
Stall rate is the one that changed the conversations, and it doesn't exist on any board by default. You have to decide you want to know.
I defined the metric model and the scoring. My lead project manager built it. Half the numbers on it are numbers we're not proud of yet, and it went out anyway — a leader who only shows the green ones teaches their team to hide the red ones.
Delivery cost
72 hours became 6 minutes.
Dropship and in-stock orders ran on a three-day manual cycle across 40-plus retail and marketplace channels. I owned the EDI build across every retail connection. Over 90% of order flow now runs untouched.
The margin wasn't in the speed. It was in what the speed made unnecessary. We added channels without adding order processors, and the late-ship penalties that come with a three-day cycle stopped arriving.
That's the pattern anywhere: the win isn't doing the same work faster. It's the work you stop needing to staff.
Vendor spend
We upgraded to a nationwide 3PL and paid less than we did for the small one.
That trade normally runs the other way. You outgrow a regional operator, you move to a national network, and you pay for the coverage. We got the coverage and took roughly $500 per container out of storage, receiving and outbound.
The leverage was the analysis, not the negotiation. They wanted $1M upfront against a pallet commitment. I ran twelve months of pallet history first and found a one-month gap between our demand plan and actual physical inventory movement — meaning the forecast we were about to sign against would have over-committed us. That turned the upfront fee into flat-rate minimums with a mid-quarter re-evaluation clause, and cut the pallet number 10–20% before signing.
Same year, same instinct: an iPaaS vendor's recommended 200-hour support block negotiated to 100, and an 80-person contractor payment flow rerouted for a $24K/year saving.
Delivery IP
Your three best people are a single point of failure.
Three people know how to do the work. Everyone else is a copy of a copy. Quality swings on who got assigned. Onboarding eats six months of somebody senior's time. And when a senior leaves you pay twice — once to replace them, and again for the accounts that follow them out.
So I took a methodology that lived in senior heads and shipped it as a product. An advisory tool first. Then an assessment that scores whether somebody can actually do the work, not whether they interview well. Then certification with a public verification page. Then a dashboard so an owner sees the whole team's level on one screen.
Seventeen-plus sprints, built alongside a full-time operating role. It has paying customers.
The revenue isn't the point. Transferable delivery IP is. A group of agencies is worth more than the sum of its acquisitions only when the delivery standard travels — training that doesn't need the trainer, a quality bar that survives a resignation, an assessment that tells you on day one whether an acquired team can do the work. That's the mechanism. Built in this category, for money. So it isn't a theory.
Every sprint shipped through an independent review pass whose only job was to find defects before deploy. That's also how I'd run any delivery process that touches a client: the person who made it is the wrong person to approve it.
Method
How I take over an operation.
Cadence first
Weekly leadership meeting, monthly business review, weekly 1:1 with every department head, one scorecard I own. I've run a four-meeting weekly cadence with named owners on every item for eight straight months without it drifting. Cadence comes first because no other number is trustworthy until the reporting arrives on a schedule.
Margin per account, visible
The first question I want answered is whether anyone can see gross margin by account today. Usually nobody can, and that's exactly where the carried accounts hide. Then a margin plan with the top three to five levers named and moving — delivery cost and vendor spend first, because they move fastest and don't require repricing anyone.
Two or three automations shipped, measured
Not a roadmap deck. Shipped, in production, with the time and margin impact attached. Usual candidates: the reporting layer, delivery QA, and whatever the account team does by hand every week that nobody has costed. Standardize the process before automating it — automating an unstandardized process just hardcodes the mess.
A real read on why clients leave
Onboarding is where churn concentrates in a services business, so that's where I look first, alongside the gap between what was sold and what's being delivered. I've built the instrument that catches that gap from call transcripts, Slack and email. I'd want to know whether it's the right one here before building anything.
Principles
Four rules I actually follow.
Standardize before you automate
Automating an unstandardized process doesn't scale it. It hardcodes the mess and makes it expensive to unpick later. SOPs first, then the automation rests on something stable — which is also why SOP completion belongs in somebody's bonus rather than in a wiki nobody opens.
AI is the first filter, never the authority
Let it do the pass nobody has time for, then put a human on the decision. Every workflow I ship has a verification gate, and anything client-facing is drafted by the machine and approved by a person. I learned that from an agent that once told me it had done work it hadn't.
Make blockers visible with dates attached
A commitment dies quietly when it lives in a two-person thread. I put blocked items on the board with an owner and a date and make leadership look at them. It's uncomfortable for about a week, then it becomes the reason nothing slips. Escalating early isn't drama, it's arithmetic.
Publish the numbers you're not proud of
The stall rate was 49.8% against a 15% target and it went out anyway. A metric only changes behaviour once people can see it. The willingness to be measured is the actual constraint — the tool never was.
Also on the record
Everything else.
KPIs with names attached
A division-weighted KPI structure across 150 operations staff, with a named owner for every function's numbers. Bonus inputs moved off subjective assessment onto quantifiable outcomes. The point wasn't the framework — it was that "who owns this number" stopped having an ambiguous answer.
Intake made mandatory
Work added straight to a board while bypassing intake was declared null and void, with a 24-hour acknowledgement SLA offered in exchange. Shadow work had to be reconnected to the roadmap so capacity planning reflected reality. It measurably cut the executive meeting load.
132 integrations, counted
Mapped every channel integration between the order platform and the incoming ERP, classified by route, with 16 unknowns flagged visible rather than buried. "Integrate receivables" stopped being an open-ended risk and became a list you could count down.
Taught the team to build
Three automation and scripting training sessions, fourteen attendees in the first, each anchored to a tracked roadmap item so it couldn't end as a one-off. I also surfaced $2.5–3K a month of unowned AI spend and got governance written around it.
Systems that watch what people forget to
Three monitoring systems built and still running unattended, each firing a structured report with the cost impact explained in the alert. One sweeps every account for expired carrier credentials — the silent failure where nothing breaks and you quietly pay a third party for something you already have.
Overstock read against aging
Forecast-based overstock — inventory projected to still be sitting past 180 days — placed next to real aging in one view, so the two lenses could be read against each other instead of arriving in reports nobody compared.
Screening agents, deliberately harsh
Structured CV-screening agents for three role families, returning scored output against role-specific criteria and tuned intentionally severe to counter the generous-rating drift these models default to. Used live across several open roles.
Reporting that gets QA'd first
A reviews and sentiment platform across four channels, built on a platform that already covered 70% of the requirement rather than rebuilt from scratch. I fixed the data-integrity errors in the live report, then put a standing QA reviewer and a checklist in front of every future one.
Apps that replaced load-bearing spreadsheets
A purchase-order and cash-outflow app with write-back to the order platform. A freight-forwarder app that removed a spreadsheet-as-database dependency. A target-landed-cost system launched company-wide. Each killed a spreadsheet a real process was resting on.