Pricing · 10 min read

How to Set Freelance Rates: Hourly vs Project vs Retainer

Pricing isn't math, it's positioning. Why the same freelancer can charge $80 or $400 an hour for the same work, and how to choose between hourly, project, and retainer models.

Published May 10, 2026

Most freelance pricing advice starts with a formula: “Calculate your desired annual income, divide by billable hours, add a margin for overhead.” This produces a number that is almost always wrong, usually 30-50% too low, and invariably keeps you stuck because the formula optimizes for the wrong thing.

Freelance rates aren't a function of your costs. They're a function of what the work is worth to the client. The same freelance developer can charge $80/hr for one client and $400/hr for another, doing the same kind of work, because the two clients attach different dollar values to the outcome. Your job is to figure out which clients fall into the $400/hr bucket and position your business so those are the ones who find you.

The three pricing models, when each works

Hourly: when the scope is genuinely unknowable

Hourly billing makes sense for engagements where neither you nor the client knows what “done” looks like at the start. Debugging a production issue. Maintenance of a system you didn't build. Exploratory R&D where the goal is to learn whether a thing is feasible.

For these engagements, hourly is honest. The client pays for the actual effort; you don't carry the risk of scope creep on a fixed bid that you couldn't estimate.

The downside of hourly: it caps your upside. You can't bill for value, only time. Two freelancers, one twice as productive as the other, will bill the same on hourly. The faster one is effectively giving away the productivity gain.

Fixed-fee project: when the scope is knowable

For most defined-deliverable work — a website, a feature, a brand identity, a research report — fixed-fee is the right model. The client gets price certainty; you capture the productivity gain when you ship efficiently.

The trick is the scope clause: fixed-fee only works if the scope is locked. The minute the client says “can we add X?” you either say “yes, that's a change order at $Y” or watch your margin disappear. Soft-spoken freelancers tend to say “sure” and eat the cost. Don't.

Fixed-fee also requires you to have done the work before, at least roughly. Bidding fixed-fee on a novel engagement is how freelancers lose money. If you've never built a thing like this, bid hourly until you have the muscle, then move to fixed.

Retainer: when the relationship is ongoing

Retainers — a flat monthly fee for an agreed scope of ongoing work — are the holy grail for freelance cash flow. Predictable income, predictable client relationship, no constant pitching.

Retainers work best for engagements where the client needs ongoing access to your judgment, not just your output. A fractional CTO. A monthly content advisor. An always-on marketing strategist. The deliverable is “we can call them” as much as it is any specific output.

Retainers don't work for purely transactional work. A designer doing one logo a month doesn't need a retainer; they need a project rate per logo. The client is buying outputs, not access.

The actual question: what is the work worth?

Before you can set a rate, you need to answer one question about each engagement: how much money does this make or save the client? Some examples:

  • A landing page that converts 2% better on $500K/year of paid traffic is worth $10K/year of incremental revenue. Charging $5K for that landing page is a deal. Charging $15K is the right premium for the risk that you might not hit the target. Charging $1,200 (the “reasonable hourly rate” calculation) leaves money on the table.
  • A bug fix on a B2B SaaS product that's blocking $50K of deals is worth $50K to the client. The 8 hours it took you to fix isn't the unit of value. Charging $1,600 (at $200/hr) is undervaluing your contribution. Charging $5,000 fixed-fee is honest pricing.
  • A consulting engagement that helps the client decide whether to spend $2M on a build-vs-buy decision is worth a noticeable fraction of that decision's expected error. The work probably takes 30 hours; the value is “don't waste $2M.” A $20,000 engagement is fair.

The pattern: you don't price the work, you price the outcome. Hourly billing inherently prices the work. Fixed-fee and retainer leave room to price the outcome.

The hourly trap

Most freelancers start hourly because it feels safe. They graduate to fixed-fee when they realize they've been billing $5K for engagements they could have charged $25K for. They settle into retainers when they realize their best clients want a relationship more than they want a deliverable.

Hourly billing is the right model for ~20% of freelance work. The rest is better served by fixed-fee or retainer. If you're billing hourly for 80%+ of your engagements, you're leaving money on the table — not because hourly is cheap, but because hourly is the wrong pricing model for most of what freelancers actually do.

How to raise your rates

Three approaches that work in practice:

  1. Raise on new clients first. Existing clients get grandfathered for a defined period (typically 6-12 months); new clients pay the new rate from day one. After 12 months, raise existing clients with notice. This stages the increase and lets you test the new rate without losing current revenue.
  2. Switch pricing models, not numbers. Going from $200/hr to $250/hr is a number conversation. Going from $200/hr to a $10,000 fixed-fee project is a different conversation entirely. The client compares against alternatives at the new model, not against your old rate.
  3. Raise on quality, not seniority. Don't say “I have more experience now” — the client doesn't buy experience, they buy outcomes. Say “I'm focused now on engagements where the deliverable is X.” The new positioning supports the new price.

What to charge when you genuinely don't know

When you're new to freelancing, or to a new type of engagement, here's the heuristic that's served me best:

Take your last full-time salary. Divide by 1,000. That's your minimum acceptable hourly rate as a freelancer. A $100,000 salary corresponds to a $100/hr floor. The math: annual salary / (50 weeks × 20 productive hours / week) = the rate that produces equivalent take-home after accounting for self-employment tax, benefits, and downtime.

Most freelancers undercharge their floor by 30-50% when starting out. They're anchored to their salaried hourly rate, which doesn't carry overhead. Don't make that mistake.

Once you have a floor, your real rate is somewhere between the floor and what the work is worth to the client. The gap between those two numbers is your pricing power. Practice asking for the higher number. The worst case is a no. The best case is you double your income.

One more thing: bill the boring stuff at full rate

Travel time. Setup. Reading documentation. Status updates. All of it bills at full rate. If you don't want to bill the client for status updates, charge a project-based fee that absorbs them. If you bill hourly, those hours count.

Freelancers routinely discount or write off the boring parts of the engagement, then wonder why their effective hourly rate is lower than their quoted rate. The boring parts are part of the work. Bill them.

Try Scopivo free

Built for solo freelancers and small studios. Proposals, contracts, invoices, and time tracking in one place. Free for your first year.

Related