Three.js From Zero · Article s15-05

Pricing Three.js Freelance Work

Pricing Three.js Freelance Work is Article s15-05 of Three.js From Zero, a MasterAllArts free interactive lesson for artists learning creative 3D on the web.

← Three.js From ZeroS15-05 · Portfolio & Career

Season 15 · Article 05 · Portfolio & Career

Three.js freelance pays well because the supply is thin — most agencies don't have anyone on staff. But the pricing models trip up newcomers. Day rates, project rates, retainers, equity — what each means and when to use which.

The rates in 2026

ExperienceDay rateHourly
Junior (0-2yr)$400–700$60–100
Mid (2-5yr)$800–1500$120–180
Senior (5+yr)$1500–3000+$200–350
Specialist (e.g., shaders, configurators)$2500–5000$300–500

US/EU rates. Region adjusts. Specialist (you do specifically shaders or specifically configurators) pays 1.5-2× generalist because clients can't find anyone else.

Day rate vs project rate

Day rate: best for scoped engagements ("I'll work 5 days on your scene optimization"). Predictable cash flow for you, predictable budget for them.

Project rate: best when you can estimate the work accurately. You take the risk of underestimating, you keep the upside of working fast.

Rule of thumb: charge by project once you've done that exact thing 3+ times before. Charge by day for novel work.

Scoping a configurator

"Build me a 3D product configurator" is the most common Three.js gig. Scope it before quoting:

  • Model count — 1 product or 50? Each new model = 1-2 days.
  • Options per product — 3 color choices is half a day, 30 customizable parts is two weeks.
  • Materials quality — basic PBR (1 day per product) vs photoreal (5+ days).
  • Mobile target — adds 30% to budget for optimization passes.
  • AR integration — Quick Look + WebXR each add 2-3 days.
  • CMS integration — content team needs to add products without code? Big lift.

A "configurator" can be $3k or $80k depending on these. Always scope, never quote upfront.

The standard freelance contract

Don't work without one. Use Stripe's "Free Contract Templates" or hire a lawyer once ($500) and reuse forever. Must include:

  • Scope — what you're delivering, in writing
  • Payment terms — 50% upfront, 50% on delivery is standard
  • Revision limit — "two rounds of revisions, additional rounds at day rate"
  • IP transfer — what you keep, what they own
  • Kill fee — what you get paid if they cancel
  • NDA section — separate or embedded

Contract pitfalls

"Pays on completion." = "I keep your work hostage if I decide it's not done." Always 50% upfront. Walk away from clients who refuse.
"Unlimited revisions." = "I'll bleed you dry." Cap revision rounds explicitly.
"You'll be paid in equity." = "You won't be paid." Take it only if their company is profitable AND you'd buy that equity with your own money.
"Standard rate? Send your proposal." = "I'm going to compare 10 quotes." Ask their budget first. If they refuse, your quote is 20% higher than your floor.

The "rush job" calculus

"Can you deliver in 5 days instead of 15?" = 2× rate. They're paying for your weekend, your social life, your sleep. The premium is real.

If you can't comfortably hit the deadline at 2×, decline. The damage of a missed rush deadline outweighs the revenue.

Retainers

"$5k/month for up to 20 hours of work, anything beyond billed at day rate." Predictable cash, predictable demand, and the client can't shop you mid-project. Pursue retainer relationships actively after your second engagement with a client.

Common first-time pitfalls

"Quoted too low to land the gig." Race to the bottom doesn't end well. Your future clients see your rate via the previous gig. Quote what you'll be glad to bill at in 6 months.
"Hourly quote without a cap." Clients hate open-ended bills. Always quote a range: "I estimate 30-50 hours; max budget $8k." If they refuse a cap, walk.
"Worked nights and weekends, billed normal hours." If you're consistently working overtime to deliver, you under-quoted. Track time honestly — adjust the next quote accordingly.

Exercises

  1. Calculate your floor rate. Annual income target / billable days (220 max — accounting for sales, admin, holidays). That's your minimum day rate. Quote higher.
  2. Build a quote template. Scope sections, deliverables, timeline, payment terms. Save it. Copy-edit for each new gig.
  3. Practice saying no. Next time a client lowballs, decline professionally. "My rate for this type of work is X; I understand if that's not in scope." Magic words.