How much to charge for a website, decision by decision

Four bands for pricing a website, each defined by the design decisions sitting in the file rather than by page counts or hours, plus the call script.

A row of frosted glass slabs of increasing thickness receding into black space, each holding an abstract colour block layout, lit amber and gold
The thickness is not the point. What is written inside it is.

A quote assembled from page counts and hourly rates tops out near $3,000, and it tops out there however good you are. What a client agrees to pay is set by how many decisions they can see somebody made on their behalf, and a page count states none of them.

So the verdict, up front: price the decision layer and keep the build time as your own business. Four bands follow, each defined by what sits in the file, and the step between any two of them is always the same kind of step. A value somebody chose replaces a value that arrived by default.

This is written for the person quoting. If the build itself now takes an afternoon, your pricing problem stopped being estimation a while ago. It is evidence.

Price the decisions, not the pages#

An hourly estimate prices your speed, and speed is the one thing that collapsed. A site that took eleven days in 2021 takes an afternoon now, so an honest hours-based quote for the same result has to fall, which is why so many good freelancers feel their rate sliding while their work improves.

Decisions did not collapse. Nothing about a faster build tells you what the type scale should be, where the neutral's hue should sit, or how long a card should take to lift under a cursor. Those still get decided by one person, once, per project, and a client reads their presence immediately even when they cannot name what they are reading.

Five decisions carry almost all of the perceived value:

  • A named type scale, with every size written out, instead of the three sizes a framework happens to ship.
  • A spacing ramp with a stated base unit, used for section rhythm as well as for component padding.
  • One easing curve with a real duration, and a reduced-motion branch under it.
  • A palette with a role per colour, including a neutral whose hue bias was chosen rather than inherited.
  • A section order that argues something, rather than the order a generator emits by habit.

The page count, the CMS, the forms, the deployment: all of it is plumbing. Plumbing is necessary and none of it moves a number from $1,500 to $12,000. A quote itemised by plumbing reads as a shopping list, and a client holding a shopping list starts removing items. A quote itemised by decisions has nothing in it they can remove without removing the reason they called you.

The four bands#

Every band below is a real market position, and each price holds because the contents hold. Read the middle column as a checklist. If you cannot point at those artefacts in the project, you are quoting the band underneath.

BandPriceWhat is in the fileWhat the client sees
Defaults$500 to $1,500The framework's scale, its stock curve at 150ms, two hues pulled off a library rampA site that works
Directed$2,500 to $5,000One named scale, a five-role palette, one signature moment on a chosen curveA site that looks chosen
Art directed$8,000 to $15,000A written spec, type tuned per breakpoint, treated photography, a documented motion systemA site nobody else has
Systemised$20,000 and upTokens, a component set, a content model, a handover documentA team that can keep it

The gap between the first two rows is where most freelancers live and where most of them stay. Nothing in row two takes longer than an afternoon to decide. It takes taste and a vocabulary, and it is worth roughly three times the money, which is the least intuitive fact in this business.

Row three is the one that needs a specification written before the build starts, and a library of written specifications is the shortest route to having one on a Monday morning.

Row four is a different sale, and the boundary is worth knowing. Systemised work gets bought by somebody who will employ a person to use it, so the buyer is a team rather than an owner, the timeline runs in months, and the deliverable is documentation with a site attached. Most freelancers belong in rows two and three, where one person signs and the project has an end.

The decisions that move a quote up a band#

A modular scale on a 1.25 ratio from a 16px base gives 16 / 20 / 25 / 31 / 39 / 49 / 61, and all seven get written down before anything is built. A spacing ramp on an 8px base gives 8 / 16 / 24 / 40 / 64 / 104 / 168, with section padding set by clamp(96px, 12vw, 176px) rather than by whatever looked fine on your monitor.

Motion gets exactly two curves. Entrances run opacity plus a 12px rise on cubic-bezier(0.16, 1, 0.3, 1) at 560ms, staggered 70ms per child, fired once on first entry. Hovers run transform only on cubic-bezier(0.33, 1, 0.68, 1) at 160ms. Two curves is a system and six curves is an accident, and @media (prefers-reduced-motion: reduce) drops both to 1ms.

The palette is the part clients feel and never name:

  • #12100E ink, a near-black pulled warm instead of sitting on the grey axis.
  • #FAF7F2 paper, the ground every other value is measured against.
  • #6E6459 muted, for captions and secondary lines, at 5.4:1 on paper.
  • #B3421C accent, spent on one thing per screen, at 5.3:1 on paper.
  • #ECE5DA field, the only surface allowed to sit directly on paper.

Writing that list is the work, and it is the part that stalls people. It is the job Thanor does: full art direction per design, in exact values, pasted into whatever you already build in. The section order belongs in the same document: one claim, proof marks, the client's problem in their own words, three named tiers, one case study told in full, a four-step process, objections answered, then the hero's action repeated. Eight sections, and the third is the one no generated page ever contains.

What to say on the call#

Never present one number. Present three, describe the middle one in the terms above, and let the client choose how much decision they are buying. The cheapest option should be visibly the defaults band, named honestly, because its job is to make the middle option read as the sensible purchase rather than the expensive one.

Read the decisions out loud. "Your headings run on a 1.25 scale so the page keeps a rhythm at any width, your neutrals are pulled warm to sit against the material in your photography, and cards lift in 160ms on one curve used everywhere." The vocabulary itself is the proof that a person is doing the deciding, and nobody else on their shortlist is talking this way.

One thick glass slab cut open to reveal fine internal strata packed tightly together, beside a slab of the identical outline that is almost entirely hollow
Three options, and the middle one has the decisions listed inside it.

Then hold the price. A client asking for the art-directed look at the directed price is asking you to donate the decision layer, and the answer is to remove a page rather than a decision. Scope comes out; the specification stays in. The proposal document is where that line gets drawn in writing, before anybody is annoyed about it.

Three sentences worth having ready before the call:

  • "That cheapest option is the framework's defaults with your content in it. It is a real choice and it is not the thing I just described."
  • "I can take the case study template out and keep the design intact, which brings the total down without changing how the site reads."
  • "The specification is yours at the end, so if you replace me in two years the next person inherits the decisions instead of guessing at them."

The verdict on your number#

If you are quoting under $2,500 for a site you also designed, the gap is almost never your skill and it is never your speed. The file contains framework defaults, so the quote contains framework prices. Write the five decisions down, put them in the proposal, and the same afternoon's build carries $5,000 without a word of extra persuasion. It runs the other way too: a $12,000 quote with framework defaults behind it gets found out at the design presentation, and that is a far worse afternoon than a low number.

Five things to write down before the next quote leaves your desk:

  1. The type ratio, and every size it produces, in px.
  2. The spacing ramp's base unit, and the expression that sets section padding.
  3. Two easing curves with durations, and the reduced-motion branch under them.
  4. Five hex values with a role each, and the contrast ratio of every pair that has to carry text.
  5. The section order, with one line of reason per section.

None of that takes more than an afternoon to decide once, and it gets reused on every project after the first, which is what makes a rate rise hold rather than feel like a bluff. The client is not paying more because you asked. They are paying more because the document in front of them contains answers and the cheaper document contains adjectives.

Two things to read next: what actually changes between a $500 and a $15,000 site goes value by value, and pricing a build the client knows was AI assisted handles the conversation that used to be awkward.

Browse the Thanor library and count the decisions in one design before you write your next quote. $89 for three months, $189 a year, $299 once, and a free account opens the designs marked free.

Questions this raises

How much should I charge for a website as a freelancer?

Pick the band your file actually sits in. Framework defaults with the pages rearranged is a fifteen hundred dollar site. One named type scale, a five role palette and one chosen easing curve is a five thousand dollar site. A written spec the client keeps is a twelve thousand dollar site. The build time is the same in all three.

Should I charge hourly or a fixed price for a website?

Fixed, per band. An hourly rate prices your speed, and speed collapsed the moment a competent build stopped taking eleven days. Decisions did not collapse, so price those and keep the hours as your own business.

How do I justify a higher price to a client?

Read the decisions out loud on the call. Name the type ratio, name the hue bias in your neutrals, name the curve and the duration your cards move on. Nobody else on their shortlist is describing the work in values, and the vocabulary is the proof that a person is doing the deciding.

What do I do when a client wants the expensive look at the cheap price?

Remove a page, never a decision. Cutting the case study template keeps the design intact and the price honest. Cutting the type scale and the motion system hands over the one thing they were actually paying for.

Is a page count ever a useful basis for a quote?

Only inside a band, to size the build once the price is settled. As the basis for the number it caps you near three thousand dollars, because a page count describes volume and a client is paying for judgement.

Part of

What to charge

Pricing, quoting and scoping websites when the build takes an afternoon. What changes between a five hundred dollar site and a fifteen thousand dollar one, and which of those changes a client can actually see.