All articles
Vito Peleg
Vito Peleg · 10 min read
Productivity

Fixing the $10/Hour Agency Trap: How Automation Protects Your Margins

You quote 100 hours at $10,000, which puts you at $100/hour on paper. That’s good business, so you send the proposal feeling pretty smart about it.

Then the project hits the review phase.

Three months later it still isn’t live. Somewhere in there your team worked through 80-odd emails across four threads, squinted at handwritten notes scrawled on an exported PDF, and sat through six status calls nobody billed for. By the time the final invoice clears you’re closer to 350 hours. That’s $28 an hour! And this happens a lot more than you might think.

That gap between projected rates and real realization is what agency owners actually earn per hour when operational friction goes unchecked.

I’ve been that guy.

Throughout my time running an agency, the projects that hurt me most were almost never the ones where the design was hard. They were the ones where the work was done weeks ago and we were still going back and forth about which button she meant, the exact reason why web design projects drag out into margin black holes.

That’s the $10/hour agency trap. It has nothing to do with your skill because you are an amazing designer.

It’s broken feedback loops, revision cycles nobody’s tracking, and a conversation happening in six places at once. And the fix isn’t working harder. It’s learning how to automate client communication for a web agency in a way that doesn’t make you feel like a robot to the person paying you, handing the repetitive parts to autonomous agent operations so your team stops doing them by hand.

The trap is an operations problem wearing a pricing costume

We’ve been having weekly calls with our community members so we can better understand their business and who we’re serving. When I asked a few of them how much they were actually making per hour they didn’t know, which is reasonable, because many of us don’t charge per hour, but it’s important to know what margins you’re working with.

I did the math with them on the call and some of them were making as low as $7 to $13 an hour. They were shocked!

$28 is the good version of this story. Ten bucks an hour is where most of that room actually sat, and not one of them was a bad designer, these are people I have known for awhile.

When owners run into this, the instinct is almost always to fix it in the contract. Charge more per hour, write a tighter scope clause, ask for a bigger retainer before anyone touches Figma.

Which is fair enough, contracts matter and I’d never tell you to loosen one. It just doesn’t touch the place the margin actually leaks, because your margin never leaves in one dramatic chunk. It leaves in fifteen-minute pieces.

The real driver behind agency profitability bottlenecks is context switching. When feedback lands in email, WhatsApp voice notes, Slack, and a slide deck someone made on a plane, your team spends more of the day collecting and decoding requests than doing the work. And decoding isn’t billable. It just quietly eats the hours you already sold.

One button, one hour, zero billable minutes

Here’s the lifecycle of a single change. You’ll recognise every step.

The client emails: “Can you move the button on the homepage over a bit and make the text pop?”

Make it pop. We make fun of this all the time, and it’s still the worst thing anyone can say, because it’s unclear and it means something different to every person on the team. When the message is vague, the variations are infinite.

Anyway, your account lead spends fifteen minutes finding out which button, on which viewport, and what copy she actually meant. Then the developer tries to recreate it without knowing her screen size or her browser. The fix ships. She looks at it on a cached mobile view, sees the old version, and reopens the request.

Two minutes of CSS. Over an hour of coordination. Now multiply that by every element on every page, across three stakeholders who all reply separately.

That’s not scope creep. That’s a translation tax, and you’re paying it every single day.

Fix one: automate the part where someone has to work out what she meant

Here’s what I learned building Atarim, and it’s the thing I’d tattoo on a new agency owner’s arm if they’d let me.

Nobody gives feedback in paragraphs. In real life people point. “Make this bigger.” “Move this up.” “Change this color.” Three to five words, every time. That’s human nature, and fighting it is a losing game, you can send the nicest bug-report template in the world and she will still reply with one line.

So stop fighting it. Take the open text box out of your process and let people point at the thing.

Point-and-click feedback on the live site or the staging build changes the dynamic the second a client tries it. She clicks the button. She types four words. Done.

And underneath, the stuff your developer actually needs comes along for free:

The technical context, captured automatically. Browser, OS, screen resolution, the exact element on the page. Nobody has to ask, and nobody has to guess. Passing that through as structured context is what kills the guesswork on both sides.

No translation step. Your designer sees the comment sitting on the thing it’s about, in place, instead of cross-referencing a spreadsheet against a screenshot against a thread.

Feedback that’s already a task. Every comment lands as a trackable item with an owner and a status, so nothing dies in an inbox.

If you’re using Atarim for this, and it’s still vague, our AI project manager Claro will translate the vague request into something actionable so you can keep moving. That’s fifteen minutes of your account lead’s day that nobody has to spend.

We didn’t invent any of this. We watched what people already do when they’re standing next to each other looking at a screen, and built that. Digitising human experiences, same as always.

Fix two: automate the status update and the check-in call disappears

Here’s the uncomfortable truth about “just checking in” emails. Clients don’t send those because they’re difficult. They send them because they can’t see anything.

Silence makes people nervous, and nervous people call.

Two things I’d put in place:

Live visibility. We’ve built an agency dashboard where she can see tasks move from review to done, ask for the next thing herself, and sign off on work without booking anyone’s calendar. Most clients don’t want a meeting. They want to know it’s alive and that they can do something about it at 11pm without waiting on you. Nobody on your side writes that update, and nobody sits on that call.

Real sign-off gates. Formal approval at wireframe, at design, at development, before the next phase starts. If it isn’t signed, it isn’t started. This is the single cheapest change on this list and it saves entire weeks of rework later, protecting margins across all your WordPress agency care plans.

And remember you’re setting the pace here. It’s the leader-follower effect: if you answer proposals in five minutes, she’ll expect five-minute replies at 11pm forever. Show up like an on-it accountant with a rhythm, monthly check-ins, clear next steps, and she’ll mirror that. Vanish, and so will she.

Fix three: don’t stop scope creep, automate the pricing of it

Now, everyone’s talking about how to stop client scope creep with AI, and there’s real value in a screening step, flagging a request that sits outside the agreed scope before it slides into the sprint and quietly becomes free work. Do that.

I have a very hot take about scope creep: it’s not a problem at all, it just means your client is inspired.

I had one come to us wanting a plain contact form. Halfway through the build my client got excited watching it come to life and asked what if this wasn’t just a form, what if it walked people through step by step? I could have said “that’s out of scope.” Instead I said great idea, let’s launch phase one and build that as phase two.

It’s not a no, it’s just not now. Inspiration is revenue in disguise.

So the goal isn’t to shut the request down. The goal is to see it the moment it arrives, tell her what it costs, and let her decide. Karl Sakas shared the seven magic words for this at last year’s Web Agency Summit and I’ve not found better: “Would you like an estimate for that?” It’s genius really because it acknowledges every extra request has a price and you’re also not shutting them down.

The screening layer just makes sure you never miss the moment. Tell Atarim what your agency sells and what you charge for it. Then when the client asks for something out of scope, it gets flagged and priced at your rate, and waits for your approval. You read it and send the estimate.

This is the one that shows up on the invoice. Everything above stops hours leaking. This one adds them back at your rate.

A four-week plan you can start today

Week 1: count the damage. Go back through your last three projects and add up the hours spent on email, collating revisions, and recreating bugs. Don’t estimate. Actually count. Divide the fee by the real hours and write that number down. It’s the motivation, and you might be surprised at what you find.

Week 2: set the rule in onboarding. Feedback sent by personal chat or an untracked email doesn’t enter production. Say it warmly, say it once, at the start. Nobody argues with a rule they heard on day one.

Week 3: put collaboration on the site itself. Embed Atarim’s point-and-click feedback on the staging build and the live site. One project first, ideally with a client you like.

Week 4: quote the extras. Every out-of-scope request gets an estimate the same day. Not a lecture, an estimate. Educate before you estimate and most people say yes.

Then run the Week 1 math again on that project. Same fee, fewer hours collecting and decoding, plus whatever the estimates brought in. That’s the number that moved, and it’s the only proof of this that counts.

What you’re actually protecting

Margin is the part you can measure, and it’s worth measuring. But the reason it moves is worth saying out loud.

What clients pay for was never the hours. It’s the outcome, the judgment, and someone answerable for both. Work that’s visible and continuous is what keeps a client and what defends a price. Every hour you spend playing telephone between four inboxes is an hour that’s invisible to her, which means it’s an hour she’ll never see the value in paying for.

That’s the whole reason Atarim V5 exists. It’s an AI web agency, plugged into yours. Your client talks to it directly, it sorts out the vague requests before they ever reach your team, and it does the work on the site. Anything it shouldn’t decide on its own comes to you first. And when she asks for something outside the plan, it’s the one asking if she’d like an estimate.

Add up your last three projects and work out what the real hourly rate was. Then drop a site URL into Atarim and see what comes back. It reads the site, builds the brief, and tells you what it’d run first.

Vito Peleg
Written by
Vito Peleg

Vito Peleg built his first website at 14 and spent years leading a touring rock band, freelancing on sites between shows until that work grew into a 12-person web agency in London. The daily struggle of collecting client feedback led him to build WP Feedback, which became Atarim, and he now runs the company and hosts the Web Agency Summit, the largest online event for web agencies.

Related reading

Put AI to work on your client sites.

Live on your first site in minutes, under your guardrails. No card needed.

Start Free Book a demo