How to price agency projects and keep your margin
Most agencies lose margin before the project starts, in the estimate. Here is a margin-first way to price fixed-price, time and materials and value-based work, with a worked example you can copy.
The Bitrack team· ·9 min read
To price an agency project and keep your margin, work out what the project will cost you before you decide what to charge. Estimate the hours per role with the people who will do the work, multiply by your internal cost rates, add contingency for the unknowns, and only then set a price that gives you the margin you need. The pricing model (fixed price, time and materials or value-based) changes how you present the number, not whether you start from cost.
The three ways agencies price work
Every pricing model has a place. The mistake is picking one by habit instead of by project.
Fixed price
You agree a total for a defined scope. The client likes the certainty, and you keep any efficiency you gain. The risk sits with you: if the estimate is wrong or the scope drifts, the overrun comes out of your margin. Fixed price works best when the scope is clear, you have done similar work before and the client has one decision maker.
Time and materials
You bill for the hours actually worked, at agreed rates, plus any costs like licences or stock. The risk sits mostly with the client, which makes it a good fit for discovery work, ongoing development, or projects where nobody can honestly define the end yet. The downside is that clients often want a budget anyway, and you earn nothing extra for working faster.
Value-based
You price on the value the work creates for the client, not on your hours. A checkout redesign that could lift online sales is worth more to a large retailer than to a small shop, even if the hours are the same. Value pricing can give you the best margins, but it needs a client who will share real numbers and a team that is confident in the outcome. It is rarely the right choice for a first project with a new client.
| Model | Who carries the risk | Best for | Watch out for |
|---|---|---|---|
| Fixed price | Agency | Clear scope, repeatable work | Scope creep, optimistic estimates |
| Time and materials | Client | Discovery, ongoing or uncertain work | Clients asking for a cap, low upside |
| Value-based | Shared | Outcomes the client can measure | Weak data, unclear value, long sales cycles |
Whichever model you choose, you still need to know your cost. Even a value-based price needs a floor, and that floor is what the work costs you plus the margin you refuse to go below. If you are weighing ongoing work against one-off projects, our guide to retainer vs fixed price goes deeper.
A margin-first estimating method
Here is the method we suggest. It takes a little longer than guessing a number, and it is far more reliable.
1. Break the work into deliverables
Start from the scope, not from a total. List each deliverable the client will receive: discovery workshop, sitemap, homepage design, inner page templates, CMS build, content entry, testing, launch. The more specific the list, the less room there is for assumptions on either side. A clear list also becomes the scope section of your proposal, which is your best defence against scope creep.
2. Estimate hours per role with the people doing the work
Ask the designer to estimate the design work and the developer to estimate the build. People who do the work know where the time goes: the extra breakpoint, the awkward integration, the third round of feedback. An account manager estimating development alone will usually miss things, not because they are careless but because they do not see the detail.
Estimate per role, not per person, so the numbers still hold if the team changes. Ask for a realistic figure, not a best case.
3. Apply internal cost rates
Your internal cost rate is what one hour of a role actually costs you. A simple version: take the yearly salary and benefits for the role, add a fair share of overheads (rent, software, admin, non-billable staff), and divide by the hours that person can realistically bill in a year. Billable hours are always fewer than working hours once you allow for meetings, sales, training and holidays.
Keep cost rates separate from the rates you charge. Cost rates are internal and sensitive, so only the people who set prices should see them.
4. Add contingency
Every project has unknowns: a slow client, a third-party API that misbehaves, content that arrives late. Add contingency to cover them instead of hoping they won't happen. Many agencies use somewhere between 10 and 20 percent, higher for new clients, new technology or vague briefs, and lower for work they repeat often. Contingency is part of your cost, not a bonus.
5. Set the price from your target margin
Decide the margin you need, then work the price out from cost. The formula is simple: price = total cost ÷ (1 − target margin). For a 40 percent margin, divide your cost by 0.6. Then round to a sensible number and sense-check it against the market and the value to the client.
A worked example
Say a client wants a marketing website with a new design, a CMS and around a dozen page templates. The team estimates the work per role, and you apply your cost rates. All figures below are examples.
| Role | Estimated hours | Cost rate | Cost |
|---|---|---|---|
| Project management | 30 | $40 | $1,200 |
| UX and design | 60 | $45 | $2,700 |
| Front-end development | 80 | $50 | $4,000 |
| Back-end and CMS | 40 | $55 | $2,200 |
| QA and launch | 20 | $35 | $700 |
| Subtotal | 230 | $10,800 | |
| Contingency (15%) | $1,620 | ||
| Total cost | $12,420 |
Now set the price. With a target margin of 40 percent, $12,420 ÷ 0.6 = $20,700. You round up to $21,000, which gives a margin of about 41 percent ($8,580 on $21,000).
Compare that with a common shortcut: taking the cost and adding 40 percent. That gives $17,388, a margin of about 29 percent. On this one project, the difference is more than $3,600. Across a year of projects, it is the difference between a healthy agency and a busy one that never seems to have money.
If the client pushes back on $21,000, you now know exactly what you can move. You can remove a template, simplify the CMS or reduce design rounds, and recalculate. What you should not do is cut the price and keep the scope, because that simply hands your margin to the client.
When to use packages and tiers
Packages work well when you sell similar work again and again: brand identity, websites of a known size, SEO audits, social media management. Instead of estimating from scratch each time, you estimate each package once with the margin-first method, then review it every few months against real hours.
Tiers also change the conversation. A single price invites a yes or no. Three options invite the client to choose. A common structure looks like this:
- Essential: the core deliverables, fewer revision rounds, standard templates
- Standard: the option most clients should pick, with the scope you would recommend
- Premium: extra deliverables, more involvement from senior people, faster turnaround
Each tier needs its own estimate and its own margin check. Premium should not just be Standard with a higher price. It should include work the client can see and value.
Optional add-ons are a useful middle ground. A client who picks Standard might add copywriting, a second language or three months of support. Price each add-on with the same method so every yes keeps your margin intact.
How to present options to clients
How you present the price matters almost as much as the number.
- Lead with the outcome. Remind the client what they told you they need before showing any figures. The price then reads as the cost of reaching their goal.
- Show what each option includes, and what it doesn't. Clear inclusions and exclusions prevent arguments later.
- Recommend one option. Say which tier you think fits and why. Clients appreciate a clear opinion from the expert they are hiring.
- Keep the total visible. Hiding the total behind line items feels evasive. Show it plainly, with a payment schedule that matches the milestones.
- Don't show your hours or cost rates on fixed-price work. The client is buying an outcome. Showing hours invites a debate about each line instead of a decision about the project.
- Set a validity date. "This proposal is valid for 30 days" stops old prices being accepted months later when your costs have changed.
If you want a starting structure for the proposal itself, our web design proposal template covers the sections in order.
Common pricing mistakes
These are the mistakes that most often eat agency margin:
- Pricing from what the client said their budget was. Budget is useful context, not a cost estimate. Estimate first, then decide whether to adjust scope.
- One person estimating everything. Without input from the people doing the work, estimates are usually low.
- Forgetting non-production time. Meetings, feedback rounds, project management and internal reviews take real hours. If they aren't in the estimate, they come out of the margin.
- Confusing markup with margin. As the example showed, this alone can cost you a large share of your profit.
- No contingency, or contingency that gets discounted away. If the client negotiates, negotiate scope, not the safety buffer.
- Using one blended rate for every role. A senior developer and a junior designer don't cost the same. Blended rates hide which parts of a project are profitable.
- Never checking actuals. If you don't compare tracked time to the estimate after each project, you will repeat the same mistakes on the next one.
Questions agencies ask
What margin should an agency aim for on a project?
There is no single right number, because it depends on your costs, your market and how much risk the project carries. Work out the margin your agency needs to cover non-billable time, growth and a sensible profit, then set a minimum you won't go below. Riskier fixed-price work deserves a higher target than simple, repeatable work.
Should I show the client my hourly breakdown?
For fixed-price and value-based work, usually not. The client is buying an outcome, and an hourly breakdown invites them to negotiate each line. For time and materials work, showing roles and rates is normal, because that is how you will bill.
How much contingency is reasonable?
Many agencies use between 10 and 20 percent of cost, adjusted for risk. Go higher for new clients, unfamiliar technology or loose briefs, and lower for packages you deliver often. The right figure for your agency comes from comparing estimates to actual hours over several projects.
What do I do when the client says the price is too high?
Ask what budget they had in mind, then offer to adjust the scope to fit it. Remove deliverables, reduce revision rounds or phase the work, and recalculate with the same method. Avoid lowering the price for the same scope, because it teaches the client that your first number isn't real.
How often should I review my cost rates and packages?
At least once or twice a year, and whenever salaries, team structure or overheads change. Review packages after every few projects by comparing tracked hours to the original estimate. If a package keeps running over, either the estimate or the scope needs to change.
How Bitrack helps
In Bitrack, proposals are built from your own services in your own design, in English, Arabic or both. The people who will do the work estimate the hours, and you see cost against price, so you know your margin before you send anything, while rates stay hidden from people who shouldn't see them. Clients can pick packages and optional add-ons, then accept and sign online. The accepted proposal becomes the agreement with a payment schedule that raises invoices, and time tracking with timers and approval plus reports in projects show how actual hours compare to your estimate. Bitrack is free to start, and how it works shows the full flow.
Estimate from cost, price for margin, and let the client choose the scope.