TL;DR: Running a web design agency past three clients is a systems problem, not a talent problem. The seven systems below (intake, discovery, onboarding, delivery, retainer reporting, scope change, and financial visibility) are the ones I actually use to run Eximius Studio out of Tyler, Texas. Get these on one page and your margin stops leaking, your retainers stop slipping, and your Tuesdays stop feeling like Tuesdays.
Tuesday, 9:14 AM. Three Slack pings stack on top of each other. Client A's homepage went down at midnight and they want to know why. Client B emailed at 6 AM asking for "a quick tweak" to the pricing page that is actually a full layout rebuild. Client C, the $3,200/month retainer, is asking where the September report is. You haven't sent it. You have four hours of work from last week sitting unbilled in a notepad. Your designer is waiting on a brief you meant to write Friday. You haven't checked your operating account in eleven days.
If that scene felt specific, it's because I lived it. I'm Sammie Oku, founder of Eximius Studio, a web design and development agency based in Tyler, TX. I have an MBA from UT Tyler, I'm a full-stack developer, and I've built four SaaS products (SCOPRA, PetNutriPal, Sipory, Leafbind) while running a working studio. The chaos above was my month-four reality. Everything in this post is what I built to make it stop.
This is the pillar guide for how to run a web design agency without losing your margin, your Saturdays, or your sanity. It is opinionated, specific, and built around real benchmark numbers. By the end you'll have a 7-system operating model you can copy.
The agency chaos point: when 3 clients becomes unmanageable
Most web design agencies break at the same point: somewhere between client three and client five. You can hold two clients in your head. You can hold three if one is dormant. By the fourth active engagement, the agency stops being a project and starts being an organism with metabolism, billing cycles, and political feelings about who got the design love this sprint.
The numbers say the same thing. 87% of new agencies fail in the first 12 months (gigradar). 47% of clients leave their agency within the first 90 days (Agency Simplifier). Year-one client churn sits between 20% and 40% across the industry (almcorp / DesignRush). And the median agency has held a 15% net margin since 2015 (Promethean Research), meaning most owners are taking home less than a senior dev would make at a SaaS company.
The cause is not lack of talent. The agencies that fail are usually run by good designers and good developers. The cause is the absence of an agency operating system: a defined, written, repeatable way of moving a client from inbound lead to invoiced result. The recipes that fill out that system are your standard operating procedures, the documented version of what currently lives in your head. Without that system, every Tuesday is improvisation, and improvisation does not scale.
Here is the short answer to "how do you run a web design agency," in seven moves you can read in twenty seconds:
- Qualify leads before you take a call.
- Sell scope, not hours, and write the scope down.
- Make the first 14 days of onboarding mechanical.
- Define what "done" means before you start.
- Report on retainers monthly, without being asked.
- Charge for scope changes the day they appear.
- Look at margin, utilization, and AR every Friday.
The rest of this post is how each of those becomes a real system in your studio.
System 1: Lead intake and qualification
The symptom: you spend four hours on a discovery call with a SaaS founder who has $6,000 and wants a custom-coded marketplace. Or you take on a $1,500 brochure site for someone who will email you eleven times in two weeks. Bad-fit clients are not a sales problem. They are an intake problem, and bad-fit clients are also the ones most likely to drive scope creep once the project starts.
A lead intake and qualification system is a written filter that sits between "someone fills out your contact form" and "you book a call with them." Its job is to disqualify mismatches before they cost you a calendar slot. Calendar slots are the most expensive thing a small agency owns.
The system has four components. First, an intake form with the right friction (budget range, timeline, project type, current website URL, how they found you). Second, a qualification rubric that turns those answers into a score: fit, budget, urgency, decision-maker access. Third, a routing rule that says what score gets a call, what score gets an email, and what score gets a polite decline. Fourth, a CRM-style database of every lead so you can see your win rate by source after six months.
Worked example. In Q1 of last year I had 38 inbound leads. Before the intake system, I would have taken calls with maybe 30 of them. With the rubric, I took 11 calls and closed 6 projects worth a combined $74,000. The other 27 leads got a templated email pointing them to a Webflow template gallery or a freelancer. Time saved on unqualified calls: roughly 40 hours. That is one full billable week back.
The qualification rubric I use is brutal but fair. Budget under $5,000 for a new build is an automatic decline unless it's a referral from an existing client. No timeline at all is a yellow flag. "We're talking to a few agencies" is fine; "we already have a vendor and want a second quote" is a near-automatic no, because second-quote shopping rarely closes and always wastes discovery hours.
What this looks like in practice:
- A Notion database called "Leads" with status, source, score, budget, and a one-line summary of the project.
- A Typeform or Tally intake form that writes directly to that database.
- A canned email response titled "Not a fit (referral version)" that you send in 30 seconds.
System 2: Discovery and proposal
The symptom: you write a proposal in a Google Doc at 11 PM, copy-paste from the last one, forget to update the client name on page three, and price the project by feel. Two weeks later the scope you wrote is already wrong because you didn't actually understand what the client wanted.
Discovery is the cheapest insurance an agency can buy. A real discovery and proposal system separates the conversation about what to build from the conversation about what it costs. You charge for discovery, or you bake a paid discovery sprint into every engagement over $15,000. You never write a fixed-price proposal off a 30-minute call.
The components are a discovery questionnaire sent before the first call, a structured discovery call with a fixed agenda, a written discovery summary you send back to the client within 48 hours, and a proposal template that prices in tiers (good, better, best) rather than a single number. Tiered pricing closes more deals because it changes the client's decision from "yes/no" to "which one."
Worked example. A Tyler-based law firm came in last spring asking for "a new website, maybe ten pages." Discovery turned up that they actually needed a lead-routing system tied to practice area, a CMS for blog content their paralegal would manage, and a custom intake flow for personal injury cases. The "ten-page website" became a $28,000 build instead of the $9,000 brochure site I would have priced off the first call. The client felt understood, not upsold, because every line item traced back to something they told me they needed in discovery. I send a discovery questionnaire before every call now.
Pricing should target a 55-65% gross margin band on project work. If you can't see how a fixed-price proposal hits that band before you send it, the proposal isn't ready. Add buffer or move to a phased engagement.
What this looks like in practice:
- A discovery questionnaire (15 questions, takes the client 12 minutes).
- A proposal template in Google Docs or PandaDoc with three pricing tiers and a fixed structure: problem, approach, scope, timeline, investment, terms.
- A "deals" database that tracks proposal sent date, value, tier chosen, and close/loss reason.
System 3: Client onboarding (the make-or-break 14 days)
The symptom: you signed the contract three weeks ago and you still don't have logo files, brand guidelines, CMS access, or a clear answer on who the decision-maker is on the client side. The project is already late and nothing has been designed.
The first 14 days of an engagement set the temperature for the entire relationship. 47% of clients leave within their first 90 days, and the post-mortems almost always point back to a sloppy handoff between sales and delivery. Onboarding is not a welcome email. It is a defined sequence with checkpoints, owners, and a clear definition of "ready to start."
A real client onboarding system has five steps. Day 0: contract signed, deposit invoice sent. Day 1: welcome email with a project home page link, a single point of contact on your side, and a 14-day calendar. Day 2-3: kickoff meeting with a written agenda you sent ahead of time. Day 4-7: asset collection (brand, copy, CMS credentials, third-party tool access) tracked in a shared checklist. Day 8-10: technical setup (staging environment, repos, analytics, project tracker). Day 11-14: first deliverable in the client's hands, even if it's a wireframe or sitemap.
The kickoff meeting is the single highest-leverage hour in an agency's calendar. Get it right, get a project. Get it wrong, spend the next eight weeks fighting confusion. My kickoff meeting agenda runs 50 minutes: 10 minutes on goals and definition of success, 10 on roles and communication norms, 15 on scope walkthrough, 10 on timeline and milestones, 5 on risks and assumptions.
Worked example. I had a SaaS client come on at $18,000 for a marketing site rebuild. The old version of me would have started designing on day three. The systemized version of me sent a 14-day plan, collected every brand asset by day six, ran the kickoff on day two, and shipped wireframes on day twelve. The client told me later they almost ghosted us in week one because they had been burned by a prior agency that "disappeared" after the contract was signed. The 14-day rhythm kept them in.
This entire 14-day sequence, with checklists, templates, and email scripts, lives as an "Onboarding" database inside Agency Operations OS.
What this looks like in practice:
- A 14-day onboarding checklist with named owners on both sides.
- A "Project Home" Notion page per client with timeline, contacts, assets, and meeting notes.
- A welcome email sequence (4 emails) that fires automatically once a deal is marked won.
System 4: Project delivery and QA
The symptom: you ship a site, the client finds three bugs in 48 hours, you spend the next week firefighting in unbilled time, and your designer is already on the next project. The launch felt like a near-miss instead of a win.
Project delivery is where margin lives or dies. The agencies that hit 25-40% net margins (Promethean Research's specialized-agency band) treat delivery as a manufacturing process. The agencies stuck under 20% treat every project as a fresh artisanal sculpture. The sculpting is what kills you.
A delivery system has three layers. The first is a project management spine: every project has the same statuses, the same definition-of-done per stage, and the same weekly cadence. The second is a QA protocol: a checklist of what gets tested before any client sees any deliverable, and a separate checklist for pre-launch (cross-browser, mobile, accessibility, page speed, form submissions, analytics, redirects). The third is a launch runbook: a step-by-step procedure for taking a site live, including the rollback plan if something breaks.
Worked example. Before I had a QA checklist, a client launch in late 2023 went live with a contact form pointing to a deactivated email address. Three weeks of leads went nowhere. I refunded $1,200 in retainer time and ate roughly $2,800 of remediation. After that I built a 47-item pre-launch QA checklist. We have not shipped a broken form since.
Target utilization sits between 75% and 85% billable time for producers (designers and developers) and 50-60% agency-wide when you include yourself and any non-billable roles. If your designers are at 95% utilization, you have a problem, not a productivity win. They have no slack for QA, no time for learning, and they will burn out inside nine months.
Working on this exact problem? The QA checklist, the launch runbook, and the project management spine I use for every Eximius engagement are inside Agency Operations OS. One template, $79, deploys in an afternoon. Link at the end of this post.
What this looks like in practice:
- A "Projects" database with standardized stages (Discovery → Design → Build → QA → Launch → Warranty).
- A 47-item pre-launch QA checklist, run by someone other than the person who built the site.
- A launch runbook doc that anyone on the team can execute.
System 5: Retainer reporting (the unsexy revenue protector)
The symptom: a retainer client emails you on day 28 of the month asking "what did we get for our $3,000 this month?" and you spend two hours pulling together a report from memory. Three months later they cancel because they "never really saw the value."
Retainers are where small agencies survive. The average agency retainer is under $5,000 per month, and roughly 50% of all retainers are under $10,000 (Promethean Research). Retainer churn is the single biggest threat to your forward revenue, and the single most common cause of retainer churn is silent invisibility. The client cannot see the work, so the work does not exist.
Retainer reporting is the system that makes work visible without requiring you to write a custom report every month. It has four components. First, every retainer engagement has a defined deliverable rhythm written into the contract (e.g., "20 hours/month of design and dev, monthly performance report, quarterly strategy call"). Second, work is logged against the retainer in real time, not reconstructed at month-end. Third, a templated monthly report goes out by the 5th of the following month, every month, without the client asking. Fourth, the report ends with a forward-looking section: "here's what we'd recommend for next month."
The report itself does not need to be beautiful. It needs to be consistent. Mine is one page: hours used vs. allocated, work shipped, work in progress, performance metrics (traffic, conversions, page speed, uptime), and a recommendation block. The monthly retainer report template I use is linked.
Worked example. I had a $2,400/month retainer with an e-commerce client. For the first three months I sent ad-hoc updates over Slack. In month four they almost canceled. I rebuilt the relationship by sending a structured monthly report on the 3rd of every month going forward. They renewed for a second year and added an SEO scope worth another $1,800/month. The work hadn't changed. The visibility had.
If you're not sure how to price a retainer in the first place, how to price a web design retainer is the companion post. The short version: never sell hours, sell outcomes and capacity. And read retainer agreement clauses agencies skip before you send your next retainer contract, because the clauses most agencies skip (rollover hours, pause provisions, kill fee) are the ones that protect your margin when a client tries to renegotiate in month seven.
The monthly report template, the retainer agreement, and the hours-tracking database all live inside Agency Operations OS.
What this looks like in practice:
- A "Retainers" database with monthly hour allocation, hours used, status, and next report due date.
- A one-page monthly report template that takes 25 minutes to fill out.
- A calendar reminder on the 1st of every month titled "Send all retainer reports by the 5th."
System 6: Scope-change protocol
The symptom: a client asks for "one more small thing" in week six. You say yes because the relationship is good. Six small things later, you've delivered $4,000 of unbilled work and the project is two weeks late. This is scope creep, and it is the single largest cause of margin leak in small agencies.
A scope-change protocol is the written rule for what happens the moment a request lands outside the original scope. Not the moment you have time to think about it. The moment it lands. The protocol has three rules. Rule one: every out-of-scope request gets acknowledged the same day with the phrase "let me check that against your scope and get back to you." Rule two: any change over a defined threshold (mine is two hours of work or any change to a deliverable) gets written up as a Change Order, with hours, cost, and timeline impact. Rule three: no Change Order work begins until the client approves in writing.
This sounds bureaucratic. It is not. It is the difference between a 15% margin and a 35% margin. Specialized agencies hit 25-40% net margins in part because they enforce scope. Generalists hovering under 20% don't.
Worked example. I learned this the hard way after a $4,000 margin leak on a client I should have fired in month two. The original build was an $11,000 marketing site. By launch we had absorbed an extra newsletter signup integration, two custom report layouts, and a Spanish-language version of three pages. None of it was written down. None of it was billed. The project landed at a 4% margin instead of the 38% I had priced for. After that, I built a one-paragraph Change Order template and a rule: nothing new gets built without a Change Order. The next year, scope creep on Eximius projects dropped to under 3% of total hours.
Read how to stop scope creep in web design for the longer playbook, including the exact email templates I use when a client pushes back on a Change Order.
What this looks like in practice:
- A "Change Orders" database tied to each project, with status (proposed, approved, rejected, completed).
- A Change Order email template that takes 4 minutes to send.
- A "scope guardrail" line in every proposal that defines what is in and what is out.
System 7: Financial visibility (margin, utilization, AR)
The symptom: you don't know what your agency profit margin is this month. You don't know which clients are profitable and which are underwater. You have no idea how much money clients owe you that is more than 30 days late. You make hiring decisions on vibes. The full taxonomy of where agency margin actually leaks is its own post; the short version below covers the three numbers that surface most of the leaks.
Financial visibility is the system that pulls your agency out of the dark. You do not need NetSuite. You need three numbers reviewed weekly: gross margin by client, billable utilization by team member, and accounts receivable aging. That's it.
Gross margin by client. Take the revenue you've collected from each client this month, subtract the fully-loaded labor cost of the people who worked on them (a $75,000 salary is roughly $95,000 fully loaded with taxes, benefits, and software), and you have gross profit per client. Divide by revenue and you have margin. Anything under 40% gross margin per client is a warning light. Anything under 20% is a fire.
Utilization by team member. What percentage of available hours were billable this month? Compare against the targets in the table below.
| Role | Target utilization | Warning band |
|---|---|---|
| Producers (designer, developer) | 75-85% | Below 65% or above 90% |
| Account lead / PM | 50-65% | Below 40% or above 75% |
| Owner / founder (you) | 40-55% | Below 30% or above 65% |
| Agency-wide blended | 50-60% | Below 45% |
If your producers are at 92% three months running, you are weeks away from a quality problem or a quit notice. If your founder utilization is at 70%, you are not running an agency, you are running a freelance practice with extra steps.
Accounts receivable aging. How much do clients owe you, and how old is each invoice? Anything past 30 days gets a follow-up email. Anything past 60 days gets a phone call. Anything past 90 days is a write-off in spirit, and you stop work until it clears.
Worked example. Year-end last year I ran the margin numbers by client for the first time properly. One client at $2,800/month was actually running at 11% margin because of constant out-of-scope creep and slow approvals that broke our utilization. Another at $1,900/month was running at 51% margin because the work was scoped tight and the client was efficient. I fired the bigger one and doubled down on the smaller one. Total agency margin moved from 14% to 22% in one quarter. The math doesn't care about revenue. It cares about margin.
Read agency margin leak: the numbers to track for the full list of numbers I track weekly and the exact dashboards I use.
Overhead for a small agency typically runs 30-40% of total costs once you include software, contractors, rent (if any), and the founder's draw. Knowing your overhead percentage tells you what utilization you need to hit to be profitable.
The financial dashboards, the AR tracker, and the per-client margin calculator are the most-used part of Agency Operations OS, and the part I rebuild for myself every quarter.
What this looks like in practice:
- A "Financials" database with monthly revenue, monthly COGS, monthly margin, and monthly utilization.
- An AR aging view that flags any invoice over 30 days.
- A weekly Friday 30-minute review where you actually look at the numbers.
How these 7 systems fit on one page
The systems above are not seven separate tools. They are one operating model with seven faces, and the connective tissue matters more than any individual piece.
Leads flow from intake (System 1) into discovery (System 2). Won deals flow from discovery into onboarding (System 3). Onboarding hands off to delivery (System 4). Active retainer engagements feed reporting (System 5). Any request that arrives mid-delivery routes through the scope-change protocol (System 6). And every system, all seven, feeds data into financial visibility (System 7), which is the one dashboard you actually look at on Friday afternoon.
When this is wired correctly, you can answer four questions in under five minutes: Which clients are profitable? Who's at risk of churning? What's overdue? What's coming next month? If you cannot answer those four questions in five minutes today, you do not have an agency operating system. You have a list of clients.
The mental model I use: agency SOPs are the recipes, the seven systems are the kitchen, and Notion (or whatever tool you pick) is the building the kitchen sits in. Most agency owners try to fix the building before they have recipes. Build the recipes first. The full list of recipes I run lives in the 12 SOPs every web design agency needs.
What to build first if you're solo
If you are a solo operator reading this with two or three clients and no system, do not try to build all seven at once. You will burn a week, ship nothing, and resent the exercise.
Build them in this order.
Week 1: Build System 5 (Retainer Reporting) and System 6 (Scope-Change Protocol). These two protect revenue you already have. A 30-minute monthly report keeps your retainers alive. A two-paragraph Change Order template stops the bleeding on every active project. You will see ROI inside 30 days.
Week 2: Build System 7 (Financial Visibility). You cannot improve what you cannot see. Spend an afternoon putting together a per-client margin sheet and an AR aging view. Do not buy software. A Notion database or a Google Sheet is fine.
Week 3: Build System 3 (Client Onboarding). The next client you sign should hit your new 14-day onboarding sequence. This is the system that compounds, because every future client benefits.
Week 4: Build System 1 (Lead Intake) and System 2 (Discovery). Once your active work is humming, fix the top of the funnel so you stop wasting hours on bad-fit calls.
Week 5+: Build System 4 (Delivery QA). This is the most fun to build and the least urgent. Build it once the rest of the house is standing.
If you want a starting point for the Notion build itself, agency project management in Notion walks through the exact database structure I use. You can build it from scratch in a weekend, or you can skip the build entirely and use the template at the bottom of this post.
Frequently asked questions
What's the difference between an agency and a freelancer?
A freelancer sells their own hours. An agency sells outcomes delivered through a team and a system, including hours that aren't their own. The line gets crossed the moment you hire your first contractor or employee, but the real shift is structural: agencies have an operating system, defined roles, written scopes, and margin targets above labor cost. Freelancers can be excellent and well-paid. Agencies trade higher complexity for higher leverage.
How many clients can a solo web design agency handle?
Three active project clients and four to six retainer clients is the practical ceiling for a true solo operator, assuming retainers are under 15 hours each per month. Past that point, quality drops, response times slip, and margin leaks because you stop tracking time accurately. The fix is not more hours. It's either raising your prices to take on fewer, better clients or hiring your first contractor to absorb production work.
What software do small web design agencies actually need?
Five things, max. A project hub (Notion or ClickUp), a design tool (Figma), a code/hosting platform (Webflow, WordPress, or your dev stack), an accounting tool (QuickBooks or Xero), and a contract/invoicing tool (HoneyBook, Bonsai, or Stripe). Everything else is optional until you have a specific problem it solves. Tool sprawl is a tax. Most agencies under $1M revenue need fewer tools, not more, and a tighter operating system around the ones they keep.
How much should a web design agency owner pay themselves?
Pay yourself a market-rate salary for the role you actually do (typically $70,000 to $120,000 for a working owner-operator in a mid-cost-of-living US market), then take profit distributions quarterly based on margin. If your agency cannot afford to pay you market rate, your prices are too low or your utilization is too high on non-billable work. Owner underpayment is the most common hidden subsidy in small agencies and it masks structural pricing problems.
When should I hire my first employee?
When you have eight consecutive weeks of being over 85% utilization on billable work, a six-month pipeline that supports the new salary, and at least three months of operating cash in the bank. Hire a contractor first to validate the workload. If the contractor stays busy at 25+ hours a week for three months, convert to part-time or full-time. Hiring early kills small agencies more often than hiring late.
The shortcut: Agency Operations OS
Building the seven systems above from scratch takes a competent operator three to four weekends. I did it the slow way over eighteen months, and most of what you've just read came out of mistakes I paid for in real dollars.
If you'd rather skip the building and start running, Agency Operations OS is the exact Notion template I use to run Eximius Studio.
It includes:
- 7 core databases: Leads, Deals, Projects, Retainers, Change Orders, Financials, and AR Aging.
- 5 dashboards: Weekly Owner Review, Pipeline, Active Projects, Retainer Health, and Margin by Client.
- 15 SOPs: intake, discovery, kickoff, QA, launch, monthly reporting, scope change, AR follow-up, client offboarding, and six more.
- 5 bonus documents: Master Services Agreement, Retainer Agreement, Project Proposal template, Discovery Call script, and the 47-item Pre-Launch QA checklist.
One template, deploys in an afternoon, $79.
It's the same system I built for myself, the same one running my agency right now in Tyler, TX. If you'd rather browse the full lineup first, here's the best Notion templates for web design agencies guide.
The seven systems are the answer to how to run a web design agency without losing your margin or your weekends. Build them yourself, or steal mine. Either way, build them this month. The next Tuesday is coming.
