
September 09, 2026
12 min read
By Kokil Thapa | Last reviewed: September 2026
You quoted a Laravel booking portal at Rs 180,000 (~USD 1,350) and the client added three payment gateways mid-build. That is the moment how to price a fixed project vs hourly stops being theory and becomes a cash-flow problem. On real client projects since 2010, I have used both models for web development in Nepal and international work. The choice is not about which sounds more professional. It is about how well you know the scope, who owns change requests, and whether your estimate survives the first production surprise.
How do you decide between fixed price and hourly billing?
Start with scope certainty, not your favourite pricing habit. Fixed price works when deliverables are defined, integrations are known, and the client can sign off a written specification. Hourly works when discovery is still running, stakeholders change minds weekly, or you are maintaining a live system where every ticket is different.
A practical decision rule I use on production Laravel applications: if I cannot write acceptance criteria in one page, I do not fixed-price the build. Discovery belongs in a paid phase, often billed hourly or as a small fixed discovery sprint. That aligns with how planning and research should run before anyone commits to a full build number.
Compare the models on criteria that matter after launch, not only at quote time.
| Criterion | Fixed price | Hourly (T&M) |
|---|---|---|
| Client budget predictability | High—one number upfront | Lower—depends on actual hours |
| Your margin protection | Strong if scope is tight | Strong if you track time honestly |
| Scope creep risk | High without change orders | Lower—extra work is billable |
| Best for | Landing sites, defined MVPs, migrations with clear inventory | Retainers, R&D, legacy debugging, AI integrations |
| Documentation burden | Heavy—SOW must be precise | Medium—timesheets + task notes |
| Cash flow | Milestone deposits help | Weekly or biweekly invoicing |
For deeper rate benchmarks in the local market, read the companion piece on average hourly rates for freelance website developers in Nepal. Your fixed price is just those hours multiplied forward, plus risk.
How do you calculate a fixed project price that protects your margin?
Fixed pricing is not guessing a round number the client will accept. It is reverse-engineering labour, overhead, and uncertainty into one figure the client can approve. Skip any step and you subsidise the project with unpaid evenings.
Step 1: Break the work into estimable units
Split the project into epics: authentication, admin panel, payment flow, SEO setup, deployment, and training. Each epic gets optimistic, likely, and pessimistic hour estimates. For a Laravel 13 client portal with document upload and Khalti payment, a likely build might land at 120 hours excluding content entry.
Step 2: Apply your effective hourly rate
Your billable rate must cover taxes, software, hardware, unpaid sales time, and slow months. If you target Rs 600,000/month (~USD 4,500) net from 120 billable hours, your floor rate is Rs 5,000/hour (~USD 37). Use the Nepal salary calculator to sanity-check what you need after SSF and income tax before you discount for a friend.
Step 3: Add a risk buffer
Buffer size reflects uncertainty. Use 15% when the stack is familiar and the client is decisive. Use 35% when APIs are undocumented, content is late, or multiple approvers exist. Legal-tech portals I have shipped often sit at 25% because compliance copy and document workflows expand quietly.
Base cost = estimated_hours × hourly_rate
Risk buffer = base_cost × buffer_percent
Fixed price = base_cost + risk_buffer
Example (Nepal, 2026):
120 hrs × Rs 5,000 = Rs 600,000
25% buffer = Rs 150,000
Fixed quote = Rs 750,000 (~USD 5,600)
Step 4: Structure milestones, not one lump sum
Never tie 100% payment to final delivery. A pattern that works on client portal projects and booking systems alike:
- 30% on signed SOW and discovery approval
- 30% on staging demo of core features
- 30% on UAT sign-off
- 10% after 14-day hypercare window
Milestones align cash with progress. They also give you a natural pause if scope starts drifting.
On e-commerce builds, add line items for catalogue import, shipping zones, and gateway testing. WooCommerce 11.1 shops with multi-currency logic take longer than a five-page brochure site. Price the workflow, not the page count.
When should you use hourly billing instead of a fixed quote?
Hourly billing is not a failure to estimate. It is the honest model when uncertainty is the main feature of the work. I default to hourly for production support, legacy PHP refactors, and early-phase AI integration where prompt quality and API limits are still unknown.
Scenarios that favour hourly
- Ongoing maintenance: security patches, Laravel upgrades, plugin updates—work arrives irregularly.
- Legacy rescue: you cannot know depth until you read the codebase.
- Staff augmentation: the client owns the backlog; you execute their tickets.
- Third-party blockers: bank APIs, SMS gateways, or government portals with slow sandboxes.
- Retainer advisory: architecture reviews, SEO audits, deployment troubleshooting.
Publish a clear hourly rate card. Senior full-stack work in Kathmandu often runs Rs 3,500–Rs 8,000/hour (~USD 26–60) in 2026, depending on stack and client location. International clients may pay USD 50–120/hour for the same skill set. See freelance web developer Nepal rates per project for how flat projects map back to implied hourly numbers.
Retainer vs pure hourly
A retainer is prepaid hours at a slight discount in exchange for guaranteed availability. Example: 20 hours/month at Rs 4,500/hour billed as Rs 90,000 (~USD 675) upfront. Unused hours may roll one month or expire—state the rule in writing. Retainers suit support and maintenance after launch better than open-ended hourly without a cap.
Track time even on fixed projects internally. If your actual hours consistently exceed estimates, your rate or buffer is wrong—not the client.
What contract terms prevent scope creep on fixed projects?
The quote is only half the pricing system. The statement of work (SOW) and change-order process protect the number you presented. Clients rarely scope-creep maliciously. They simply assume "website" includes features you never listed.
Minimum SOW clauses
Your SOW should name deliverables, exclusions, assumptions, revision limits, and acceptance criteria. "Admin can export bookings to CSV" is testable. "Easy to use admin" is not. Link deliverables to milestones so payment gates match visible output.
Change Order Template (short form):
Change ID: CO-2026-014
Description: Add Stripe alongside Khalti
Estimated effort: 18 hours
Rate: Rs 5,000/hr (fixed-quote rate)
Additional fee: Rs 90,000
Timeline impact: +5 business days
Client approval signature: ___________
Work begins after signed CO + 50% deposit
For VAT-registered agencies in Nepal, confirm whether quoted amounts are inclusive or exclusive of 13% VAT per Inland Revenue Department rules before the client compares your bid to an informal freelancer quote.
Revision and content boundaries
Cap design revisions at two rounds unless hourly. State that client-supplied content must arrive before build week three. Late content shifts the schedule without shifting the price. On a legal-tech portal like Court Marriage In Nepal, delayed Nepali copy blocked launch—not code—and the contract made that explicit.
Use project management tools to log every out-of-scope request. A ticket trail beats memory when someone asks why phase two costs extra.
How do Nepal freelancers and agencies typically structure web project pricing in 2026?
Local market pricing spans solo freelancers, small studios, and offshore-facing agencies. The model mix differs by client type. Domestic SMBs often want one fixed number. Export-facing product work often blends fixed MVP plus hourly retainer.
Typical project bands (indicative)
These ranges reflect Laravel, WordPress 7.1, and WooCommerce work in 2026. They are guides, not mandates. Complexity swings them fast.
| Project type | Common model | Indicative range (NPR) |
|---|---|---|
| Brochure WordPress site | Fixed | Rs 40,000 – Rs 120,000 |
| WooCommerce shop (standard) | Fixed + support retainer | Rs 150,000 – Rs 400,000 |
| Custom Laravel MVP | Fixed milestones | Rs 400,000 – Rs 1,200,000 |
| Booking + payments + CRM | Fixed or phased fixed | Rs 800,000 – Rs 2,500,000+ |
| Post-launch maintenance | Hourly or retainer | Rs 15,000 – Rs 90,000/month |
Enterprise portals with RBAC, audit logs, and API integrations belong in the upper band or in phase-one discovery plus phase-two fixed build. Trying to compress them into a brochure-site quote creates bad blood on both sides.
Hybrid pricing many seniors use
A pattern I have used on production deployments:
- Phase A — Discovery (fixed small fee): wireframes, data model, integration checklist—Rs 50,000–Rs 150,000.
- Phase B — Build (fixed): priced from discovery outputs, lower buffer because uncertainty dropped.
- Phase C — Care (hourly retainer): upgrades, monitoring, content support.
That hybrid shows up on trek booking systems like Adventure Third Pole Trek where supplier CRM features emerged after the first workflow demo. Discovery paid for the clarity; the fixed build covered the agreed module set.
If you are comparing agency delivery models, review custom software development scopes alongside enterprise application requirements. Larger teams add project management overhead you must either bill or absorb.
Red flags that mean walk away or switch to hourly
- Client refuses written scope but demands fixed price.
- They want "Facebook-level features" at brochure-site budget.
- Payment terms are 100% on delivery with no deposit.
- They will not assign a single decision-maker.
- They ask you to copy a licensed SaaS pixel-for-pixel.
Professional pricing includes saying no. Underpricing a toxic fixed deal costs more than losing the lead.
For testing and launch buffers, budget time for QA—not only coding. Testing and optimization on payment flows and mobile checkout is not optional on e-commerce work. Either include it in the fixed price or bill it hourly as a separate test sprint.
Technical founders sometimes ask for cost breakdowns by line item. Share milestone totals and capability groups. Do not expose your internal hourly math unless it helps the sale. Your margin lives in the buffer and in efficient delivery, not in convincing the client you typed fast.
International clients paying in USD should fix currency in the contract. NPR amounts can swing with forex moves. The Nepal forex rates tool helps you quote USD equivalents for local receipts. For official tax guidance on service exports, refer to IRD publications rather than forum advice.
Document assumptions about hosting, SSL, email delivery, and third-party SaaS fees. Many disputes are not about code. They are about who pays for Mailgun, Cloudflare Pro, or SMS credits. A fixed web price rarely includes unlimited external API spend.
When upgrading stacks—say Laravel 12 to 13 with PHP 8.3—hourly or phased fixed beats one lump quote if legacy migrations hide data quirks. I have seen production databases with orphaned records that only surface during migration scripts. Price that uncertainty or isolate it into a paid audit task first.
SEO and content work often belongs outside the dev fixed price unless tightly bounded. Metadata templates and sitemap generation fit in build. Twelve blog posts and keyword research do not. Link SEO to search engine optimization services as a separate line or retainer so developers are not writing copy at developer rates for free.
Finally, revisit your rates yearly. Inflation, SSF changes, and tool subscriptions shift your floor. A rate that worked in 2023 may lose money in 2026 if you have not adjusted. Your past portfolio proves capability; your pricing must match current costs.
Key Takeaways
- Choose fixed pricing when scope, integrations, and acceptance criteria are written and stable; choose hourly when discovery, legacy risk, or ongoing change dominates.
- Calculate fixed quotes as hours × effective rate + 15–35% buffer, then split into milestone payments—not a single end-of-project invoice.
- Use paid discovery or hourly pre-build phases to shrink uncertainty before you lock a large fixed number.
- Every fixed SOW needs exclusions, revision caps, and a signed change-order process before extra work starts.
- Track internal hours on fixed jobs to calibrate buffers; use retainers for post-launch maintenance instead of unpaid favours.
- State VAT, forex, hosting, and third-party API costs explicitly so the quoted price matches what the client actually pays.
People Also Ask
Is fixed price or hourly better for freelancers?
Neither is universally better. Fixed price wins when you control scope and estimate accurately. Hourly wins when the client changes direction often or the work is exploratory. Many experienced freelancers use fixed builds plus hourly retainers so both sides get predictability where it matters.
How much buffer should I add to a fixed project quote?
Use 15% for repeat work on a familiar stack with a decisive client. Use 25–35% for new integrations, multi-stakeholder approvals, or content-dependent launches. If you finish under budget, you can deliver polish or record higher effective margin—never apologise for prudent estimating.
Can you mix fixed and hourly pricing on one project?
Yes, and you should on larger builds. Fixed discovery, fixed core build, and hourly enhancements or maintenance is a common professional structure. Each phase gets its own SOW so the client knows which requests trigger change orders versus included support.
What hourly rate should I charge for web development in Nepal?
Indicative 2026 rates span roughly Rs 3,500–Rs 8,000/hour locally and higher for international clients, depending on stack depth and accountability. Derive your floor from monthly income needs divided by realistic billable hours, not from what competitors post without context.
Price with clarity, deliver without resentment
How to price a fixed project vs hourly comes down to matching billing model to uncertainty, then backing it with contracts that respect your time. Fixed quotes reward precise scoping; hourly billing rewards honest tracking. Hybrid phases give clients a clear entry point without forcing you to guess a six-month roadmap on one call. If you want help scoping a Laravel build, WooCommerce rollout, or legal-tech portal with realistic milestones, contact us for a structured discovery conversation—or browse about my delivery approach and recent web development projects first.
Frequently Asked Questions
0 Comments
Leave a comment
Your email is not published. Comments appear once they have been read. Sign in to have your details filled in.

