SolisReach
← Journal
Working with us6 min read

How we scope a fixed-price web project without padding the estimate

Written by the SolisReach team

Every agency says they do fixed-price work. Far fewer actually scope tightly enough to make that number safe to quote, which is why so many fixed-price contracts turn into change-order factories the moment real work starts. The honest version of fixed price requires more upfront discipline than hourly billing, not less, because you only get one shot at the number before you're either eating the overage yourself or asking the client for more money mid-project.

We learned most of this the hard way, on our own early projects, where a scope that looked tight on paper turned out to have three or four unstated assumptions baked into it that only surfaced once the client saw a working draft and said "wait, I assumed this would also handle X." The fix wasn't better guessing. It was a slower, more deliberate scoping process up front, which is what the rest of this actually describes.

We scope the second half first

Most scoping conversations spend all their time on the parts everyone already agrees on: the homepage, the obvious pages, the general look and feel. The overruns almost never come from there. They come from the edge cases nobody mentioned in the first call: what happens with an out-of-stock product, how a multi-location business handles a location with no reviews yet, what the empty state looks like before any data exists. We deliberately spend the first scoping session on these edge cases, not the easy parts, because that's where an estimate actually goes wrong.

A recent example: a retail client's scope looked complete after the first call, until we asked what should happen on a product page when a size is out of stock in some locations but not others. That single question added eleven hours to the estimate for conditional inventory logic nobody had mentioned, and it was far cheaper to add those hours to the proposal than to discover the gap three weeks into the build.

A written scope document, not a bullet list in an email

Every fixed-price proposal we send includes a scope document that names every page, every major component, every integration, and explicitly lists what's out of scope. "Out of scope" is the part most agencies skip, and it's the part that saves everyone an argument later. If a client wants a members-only area and we haven't scoped one, the document says so in plain language before anyone signs.

The document runs three to six pages depending on project size, and we walk through it live on a call rather than emailing it cold, specifically so a client can ask "what about X" in real time instead of skimming a PDF and assuming X is covered because it wasn't explicitly excluded. That live walkthrough has caught real gaps on both sides more than once.

Padding versus contingency: they're not the same thing

We do build in contingency, typically 10 to 15 percent of the estimated hours, but we tell clients that's what it is rather than quietly inflating the number and calling it a buffer. The difference matters: padding is invisible and clients correctly resent discovering it. Contingency is visible, explained, and rarely fully used, which means we can show a client exactly how the number was built rather than asking them to trust a black box.

On a typical $18,000 project, that's roughly $2,000 to $2,700 of visible contingency, itemized as its own line rather than smeared invisibly across every other estimate. Most projects use less than half of it, and we credit the unused portion toward a final polish pass rather than just pocketing it, which clients consistently tell us they didn't expect and appreciate more than a lower headline number would have earned.

What happens when we get it wrong anyway

Sometimes a scope document still misses something. When that happens on a fixed-price engagement, we absorb small gaps ourselves rather than issuing a change order for every minor miss, on the theory that our estimating mistake shouldn't become the client's problem. Genuinely new scope, something the client adds after signing that wasn't part of the original conversation, is a different situation and gets its own quote, but we're explicit about which category something falls into before doing the work, not after.

We keep an internal running log of exactly what we absorbed on every fixed-price project and why, not to relitigate it with the client but to feed back into how we scope the next one. Patterns show up fast: if we've absorbed the same category of miss on three projects in a row, that's a sign our standard scope template needs updating, not that we got unlucky three times.

Sometimes a scope document still misses something.

The one question that predicts most overruns

If there's a single question that catches the most scope risk before it happens, it's this: "who is the person who has to approve this before it can launch, and have they seen the plan?" Projects that involve a stakeholder who joins late, usually legal, a regional franchise owner, or a compliance team, are the ones most likely to blow past an estimate, not because the work itself is harder but because approval cycles nobody scoped for eat the timeline. We now ask for the full approval chain before quoting, not after.

On one healthcare-adjacent project, this question surfaced a compliance reviewer who hadn't been mentioned in three prior scoping calls and who ultimately required two additional rounds of copy and disclosure language changes. Because we'd asked the question upfront, that reviewer's involvement was already priced into the timeline, instead of arriving as a surprise two weeks before a planned launch date. It's now the first question on our standard kickoff checklist, not because we're especially good at predicting every risk, but because this specific one has been the single best predictor across every overrun we've ever had to absorb.

What we tell clients before they sign

We walk every client through the scope document line by line before asking for a signature, specifically calling out the boundary between what's included and what isn't, rather than assuming a written document speaks for itself once it's been emailed over. A client who's had the boundary explained out loud is far less likely to be surprised by it six weeks later than one who was handed a PDF and told to read it on their own time.

This walkthrough usually runs twenty to thirty minutes, and it consistently surfaces at least one clarifying question that changes a line item, which is exactly the outcome we want before money changes hands rather than after. A signed scope document that nobody actually understood in the same way isn't really an agreement, it's a disagreement waiting for a specific moment to surface.

Start a project

Want this applied to your site?

We run a Core Web Vitals and SEO audit before quoting any performance marketing engagement, and we're happy to share what we'd find on yours.