All posts

Why I only take fixed-price freelance projects

Hourly billing looks flexible but is usually more expensive for both sides. Here's why VanIersel Development works fixed-price by default - and the exceptions.

3 min read
freelancebusinessprocess

When I started freelance work in 2022, I billed hourly. Every month a timesheet, weekly updates on roughly what it would still cost, and a fresh estimate on every new feature. These days I work fixed-price by default - and both my clients and I are structurally better off. Here's why.

The problem with hourly billing

For the client: unclear total budget. A developer who says "about 80 hours" has a 50% margin between 60 and 120. At €100/hour that's €6,000 of uncertainty. Clients plan cash flow around the lower bound and grow frustrated when it ends up 40% higher - often rightfully so, because scope quietly expanded along the way.

For the developer: perverse incentives. More hours = more revenue. That makes optimising and working efficiently economically unattractive. An experienced developer who finishes a task in 4 hours gets paid less than a junior who takes 12. That's not a system that rewards quality.

Weekly discussions about hours. "Those 3 hours fixing the staging environment - in scope or extra work?" Every time, for every small decision.

The alternative: fixed-price with clear scope

Every project at VanIersel Development now starts with:

  1. Free 20–30 minute intro call. Goals, stack, timeline, critical deadlines.
  2. Fixed-price quote within three business days. Scope, tech stack, milestones, deliverables, price. Valid 30 days.
  3. Work starts only after approval. Weekly preview links, iteration rounds within scope.
  4. Additional work gets its own quote. If scope grows you receive a new mini-quote for the extra part. No hidden hours.

The result: clients know what they get and when, and I get to convert efficiency into more revenue per week instead of less. That's the right incentive for both sides.

"But scope always changes, right?"

Yes, that's the point. Scope always changes, and fixed-price forces both sides to make that change explicit. Instead of "let's just add X", you get a clear decision: "yes we want X, costs €2,000 extra, pushes launch by two weeks."

That's not bureaucracy - it's transparent project management. And it prevents the scope creep that hourly billing actively encourages.

When I do bill hourly

Three situations where fixed-price doesn't make sense:

  1. Architecture reviews and consulting. Advisory work where the deliverable is a report or presentation, not code. Scope can't be defined upfront here - it is exploratory work.
  2. Retainer maintenance contracts. After delivery you often want a monthly budget for bugfixes, minor features and monitoring. This works more logically on a capped hourly basis (e.g. "max 20 hours per month at €125").
  3. Team coaching and pair programming. Sitting alongside your team, doing code reviews or running workshops. Billed hourly at an agreed day rate.

What this means for you as a client

Working with VanIersel Development, you don't need to maintain spreadsheets anymore. You get:

  • One price upfront, no surprise invoices afterwards.
  • Weekly preview links so you see exactly what's being built.
  • Ready when agreed, including documentation and a 30-day bug-fix warranty.

If your project is more exploratory or you just want someone to spend a few hours looking things over, we work hourly - no dogma, just transparency about which model fits which question.

Ready to start? Book a free intro call - within three business days you'll know exactly what it costs.

Nick van Iersel

Author of this site

Nick van Iersel

Full-stack Developer & IT Consultant

Nick is a Dutch full-stack developer and IT consultant based in Waalwijk with over six years of production software experience. He focuses on Next.js, TypeScript, React and Node.js for websites, SaaS platforms and mobile apps, and works both hourly and on fixed-price projects.

Ready to make your idea a reality?

Let's build something amazing together