Flat-Price Web Builds: Why We Quote $499 And Hit It Every Time
Here’s how most web agencies quote a landing page:
“We charge $150 an hour. The project should take about 10-15 hours. So you’re looking at $1,500 to $2,250, give or take.”
That quote is a trap. Not because the agency is lying — they’re probably being honest about their estimate. But the incentive structure is broken in both directions, and the customer pays for it.
Why hourly pricing fails
Hourly billing rewards slowness. If the developer finds a shortcut that saves 4 hours, the agency makes $600 less. The agency’s economic interest is to not find shortcuts.
It also punishes the customer for every scope question. “Can we try a different hero image?” is not a design decision anymore; it’s a $150 conversation. People stop asking. The final product is worse because the customer stopped engaging with it.
Worst of all, hourly estimates are always wrong. Every study of project estimation in software says the same thing: estimates land an average of 25-40% over original quote. The customer who was told “$1,500-$2,250” will sign a final invoice for $2,800. Every time.
Why flat pricing works
A flat price does three things at once:
-
Forces scope discipline. If I’m getting $499 for a landing page regardless of how long it takes, I have to define exactly what “a landing page” is before I quote. What’s included, what’s not, what happens if you want changes. That conversation has to happen up front, which is when it should happen anyway.
-
Rewards speed. Every shortcut I find is money I keep. So I find shortcuts. I have a build kit, a template library, a component system I’ve refined across dozens of projects. A hourly shop can’t use templates because they’d have to bill fewer hours. I can.
-
Removes the final-invoice fight. You pay before the project starts, or half up front and half on delivery. There’s no “we went over budget” conversation because there’s no budget to go over. The price is the price.
How we actually hit the price
The answer is: a narrow, repeatable offer.
Shipside does three things. One-page landings ($499), 5-page sites ($1,200), or 7-day MVPs ($1,500-$3,000). Each of those has a template, a component library, a standard stack (Next.js + Tailwind + Vercel), and a fixed scope. I don’t take projects outside those three buckets. Not because I can’t do them, but because the moment I say yes to a custom scope, I lose the ability to quote flat and hit it.
When someone asks for a landing page, I don’t start from zero. I start from the template I’ve used 30 times before, swap the content, swap the colors, write the copy, ship. Day 1 I have a wireframe in your inbox. Day 2 you approve the copy. Day 3-5 I build. Day 6 you review. Day 7 we launch.
That’s 7 days, $499, every time. Not because I’m fast — because the scope is bounded and the stack is predictable.
What I won’t do
- Unlimited revisions. Two rounds of feedback are included. After that, each round is $99.
- “Can you also do the logo?” No. I’ll recommend someone on Fiverr.
- “Can we use WordPress because that’s what our old site was on?” No. I only ship Next.js. If WordPress is a requirement, I’m not the right builder.
- “Can you add e-commerce?” Not in this scope. That’s a separate project.
That list of no’s is why the yes is reliable.
The customer’s side of flat pricing
From the customer’s side, flat pricing is a forcing function. You have to actually think about what you want before you sign, because changes after signing aren’t free. Most customers hate this at first and then love it by the end of the project, because it’s the first time a web vendor has made them commit.
The alternative — hourly billing, loose scope, “we’ll figure it out as we go” — is the reason 70% of web projects come in late and 40% come in over budget. Flat pricing kills both problems by making them impossible.
Shipside quotes flat, ships flat, hits flat. $499 landing pages, $1,200 5-page sites, 7-day MVPs from $1,500.