Between May and July 2026, a covert study sent one identical request to 248 web agencies across Germany, Austria and Switzerland: a 4–6-page WordPress site for a Munich handyman business, texts and images supplied. The quotes came back between 1,000 and 10,000 euros net. Same brief, ten times the price.
The median was 2,800 euros. Most agencies never got as far as a number: only 92 of the 248 replied at all, and most of those wanted a call first. Just 36 quotes arrived with a figure on them. A parallel Zurich comparison—a 7-page SME site sent to 40 providers—drew offers from CHF 790 to CHF 47,500, with nine agencies that never answered.
A caveat before anything else: all of these are vendor-published field studies—Happy Heroes, Websharks and American Web Guild sell the services they measured—so treat them as market scans, not peer review. The spreads they document are still the spreads.
Quotes like these cross my desk regularly, usually from a client who wants a second pair of eyes before signing. What I keep seeing: ten times the price is rarely ten times the quality. It’s ten times the ambiguity, and the ambiguity is readable—if you know which lines to check.
Search for what a website costs and you’ll find price lists—a freelancer-built WordPress site at $1,500–$5,000, an agency build at $5,000–$15,000+, maintenance at $50–$300 a month. What you won’t find is a method for reading the quote already in your inbox. This is that method: seven lines to check, the flat-vs-hourly math, and ten questions that turn a sales document into a comparable one.
Why the same brief gets ten different prices
“Website” is not a unit of work. To one agency it means a premium theme with your logo in the corner and your text pasted in. To another it means a strategy workshop, wireframes, a copywriter, a photo shoot, on-page SEO and a launch checklist. Both quotes say “website.” Only one says what’s inside.
The Zurich comparison measured exactly this. On-page SEO: included in 43% of offers, an explicit extra in 48%, not offered at all in 9%. First-year hosting: included in 52%, billed separately in 39%. Two rounds of text corrections: included in 61%. The briefs were identical. The scopes were not.
Size adds its own multiplier. In Odavio’s published comparison of 47 real quotes for similar-scope projects, prices ran from $3,200 to $32,400, and large-agency quotes came in 1.8–2.5× higher than smaller ones for the same line items. Some of that premium is process depth. Some of it is office rent.
Then there are the three cost positions quotes silently exclude—the places where a “cheap” quote stops being cheap:
- Licenses: the premium theme and plugins. Bundled into the build, owned outright, or billed separately every year?
- Maintenance: what the site costs to keep current. In the DACH study, monthly fees ran from 16 to 558 euros depending on scope.
- Content transfer: who moves your existing texts, images, products and redirects. It’s hours of work that some quotes include and some never mention.
The seven lines every honest quote contains
A quote is a scope document with a number attached. Honest or not, freelancer or 40-person agency, it should contain seven lines. Read this as a hygiene checklist, not a trust test—a missing line usually means nobody wrote it down, not that somebody is hiding something. You pay for the ambiguity either way.
- Defined scope: pages, features, integrations—and what is explicitly out.
- Deliverable ownership, in writing: code, design and content are yours.
- Hosting: who provides it, the monthly price, and how long the build price covers it.
- Plugin and theme licenses: bundled, or owned in your own account.
- Maintenance: the monthly fee and exactly what it covers after launch.
- Revision count: how many rounds, and what counts as one round.
- Exit terms: data export, handover documentation, notice period.
Line by line: how to read the individual lines
The license line
Premium themes and plugins come bundled or owned. Bundled means the agency’s license covers your site while you’re their client—updates and support run through their account. Owned means the license sits in your account and the renewals are yours. Neither is wrong. But if the license line says nothing, ask before signing: a bundled license stops updating the day you leave.
The hosting line
The DACH study’s median hosting price was 10 euros a month. If a quote bills yours at 40 euros, ask what the figure includes. Backups, updates, malware cleanup and someone who actually answers email—the work that separates managed hosting from a bare 10-euro box—are worth real money. A silent markup on the same box is not. Then check the term: in Zurich, 52% of offers included the first year of hosting and 39% billed it separately.
The hourly line
An hourly rate without an hour estimate is not a price; it’s a unit. A quote reading “95 euros an hour, plus custom work” could describe a 20-hour job or a 90-hour job, and both quotes read identical. The US median agency rate is $125 an hour—which tells you about the market and nothing about your project until someone commits to a range in writing. Hourly billing needs a ceiling or per-milestone estimates. Otherwise it’s an open tab.
The “plus custom” line
Almost every quote has one: “plus custom work,” “plus expenses,” or in German-speaking markets the politely vague zzgl. Aufwand (“plus outlay”). It’s the open surcharge—work outside the defined scope, at an unnamed rate, for an unnamed number of hours. An honest quote estimates it anyway. “Up to 15 hours of custom functionality at 95 euros” is a number you can negotiate. “Plus outlay” is not.
Odavio’s decode is the cleanest one I know: ask every agency for both an hourly and a fixed-price version of the same scope. The gap between the two is the agency’s margin—visible, comparable, and impossible to smooth over on a call.
Flat rate vs hourly: the three-year math
Flat rates are fair when the scope is defined and the content exists—the DACH study’s brief was exactly that, texts and images supplied. Hourly is fair when the scope is genuinely open: a redesign with an undecided structure, an integration with a vendor you haven’t met. Most quotes are neither, which is why the Zurich comparison found that only six of 31 offers it received were genuine flat rates—the rest carried variable components. The abuse is the mismatch. Hourly on a defined scope bills you for the agency’s inefficiency; a flat rate on an undefined scope gets repriced halfway through the build.
And here’s the comparison almost nobody runs—three years of total cost. The three quotes below are illustrative archetypes built from the study’s published ranges (maintenance ran 16 to 558 euros a month; the hosting median was 10 euros), not real quotes. Watch what 36 months do to the sticker prices.
Three-year total cost of ownership—illustrative,
built from published DACH study ranges
Quote A Quote B Quote C
Build (one-off) EUR 1,200 EUR 2,800 EUR 4,900
Maintenance per month EUR 150 EUR 40 EUR 30
Hosting per month EUR 15 EUR 10 EUR 10
First year included No No Yes, in build price
36-month total EUR 7,140 EUR 4,600 EUR 5,860
Rank by sticker price 1 2 3
Rank by real cost 3 1 2
Quote A looked like the bargain—1,600 euros under the median build—and by month 36 it’s the most expensive of the three, 2,540 euros over Quote B. Quote C looked like the splurge and finishes 1,280 euros under Quote A. The maintenance line decides more than the build line ever does.
None of this makes the 1,200-euro agency dishonest. It makes it cheap on day one and expensive on day 500—and if the maintenance line is spelled out, that’s a choice you can make with your eyes open.
The AI line nobody quotes for yet
Here’s the line you won’t find on any of these quotes: AI. Two 2026 datasets agree it’s in the production chain. Lindo’s US report, published April 2026 from 30,000+ listed agencies and 2,140 agency-owner survey responses, puts AI-tool adoption at 71% of agencies. GoodFirms’ global survey of 300+ development companies found 98% using AI in their workflows—and prices that did not come down: basic AI-built sites got cheaper, complex builds held or rose. The median 5-page small-business site rose 12% year over year, to $3,850.
So are you owed a discount because your agency uses AI? Mostly no, and the flat rate is the reason. Hourly bills the hours; a flat rate prices the outcome. When an agency gets faster, the efficiency lands in its margin—not in a client-by-client negotiation about what the model contributed. That’s the honest version of absorption: the market price of basic builds drifts down, which is what GoodFirms observed, instead of one agency deciding across your kitchen table that your invoice should shrink.
Two situations flip it, and a discount is genuinely due. One: the scope is a pure template job and your content is supplied—the study’s brief, exactly. A template build with supplied texts is the commodity AI made cheaper; a 2023-era custom-build price for 2026 template work is stale, and you should say so. Two: the agency reuses your existing site—same structure, same content, a new coat of paint. Reuse is cheaper than creation, and the quote should already know that.
Red flags and green flags
A 2026 US study of 73 listed web design firms supplies the numbers here. Only 41%—30 of 73—publish any price at all; where a dollar figure is published, the lowest tier starts at a median of $2,125, and only 30% state build timelines. “Price on request” is the norm, not an exception. It isn’t disqualifying. It does mean the work of comparing is yours.
- A first conversation that costs money. Three Zurich agencies charged CHF 150–350 for the initial consult before quoting. If answering questions is billable, the quote is an upsell.
- No ownership statement. Only 15% of the 73 firms—11 of them—say anywhere on their site that the client owns the finished website, its code or its design. Under US copyright law the creator owns the copyright automatically, and paying the final invoice transfers nothing; only a written assignment does. Silence defaults to the agency.
- Scope language you can’t picture. “A modern, responsive website” is a mood, not a deliverable.
- Revision rounds undefined—which guarantees the first disagreement lands in an invoice.
- Published prices, even as ranges.
- Named deliverables: page count, plugin list, content formats.
- A written ownership assignment—code, design, content.
- Defined exit terms: export, handover, notice period.
We publish ours—flat rates with the seven lines spelled out—because a quote you can’t read without a call is a quote you can’t compare. One wrinkle if your site lives on Wix, Squarespace or Shopify: there’s no code to assign, so “ownership” means your content and your account, and the conversation is shorter but different.
The ten questions to send any agency before signing
You don’t need a call to decode a quote; you need an email. Send the same ten questions to every agency on your shortlist, in the same words, and compare the answers side by side. The template below lifts straight into your mail client:
Subject: Our website project - ten questions before we sign
Hi [Name],
Thank you for the quote dated [date]. Before we sign, we would like
ten short answers in writing, one per point:
1. Scope: Which pages, features and integrations does the price
cover, and what is explicitly not included?
2. Content: Who writes the text, how many rounds of corrections are
included, and what counts as one round?
3. Design: Is the design a template, a premium theme, or built from
scratch, and who holds the final design files?
4. Licenses: Are theme and plugin licenses bundled, or registered
in an account we own?
5. Hosting: Who provides hosting, what does it cost per month
after the first year, and can we move the site elsewhere?
6. Maintenance: What does the monthly fee cover, and what is the
cancellation notice?
7. Timeline: How long is the build, and what happens if it slips?
8. Payment: What are the milestones, and is any part held back
until we confirm delivery?
9. Ownership: Do we own the code, design and content, in writing?
10. Exit: If we part ways, what does the handover include, and in
what format do we receive our data?
A short answer per question is fine. We plan to decide by [date].
Best regards,
[Name]
[Company]
The replies sort the shortlist for you. An agency worth hiring answers in writing, in the same order, with numbers where numbers belong. “We’ll go through that on a call” is an answer too—it tells you which line of the quote is load-bearing.
Straight answers to four questions
What does a website cost in 2026?
For a small-business site of about five pages, the 2026 medians are $3,850 in the US (Lindo, up 12% year over year) and 2,800 euros net in the DACH study, whose quotes—one identical 4–6-page WordPress brief—ran from 1,000 to 10,000 euros. A Zurich comparison of a 7-page SME site spread from CHF 790 to CHF 47,500. Plan around the medians, then read any quote that lands far outside them as a scope document first and a price second.
Why do quotes differ so much for the same project?
Because “the same project” is never the same work. In the Zurich comparison, on-page SEO was included in 43% of offers and not offered at all in 9%; first-year hosting was included in 52%; two rounds of corrections in 61%. Add Odavio’s finding that large agencies bill 1.8–2.5× more for the same line items, and a 10× spread appears without a single dishonest number in it.
Flat rate or hourly: which is fairer?
Neither by default—the model has to match the scope. Flat is fair when the scope is defined and your content exists: you pay for an outcome. Hourly is fair when the scope is genuinely open, and the US median rate is $125 an hour: you pay for time nobody can predefine. The failure modes mirror each other. A flat rate on an undefined project gets repriced mid-build; hourly on a defined one bills you for the agency’s learning curve. Ask for both versions of the same scope and read the gap.
What if an agency refuses to name a price?
That was most of the market in both studies: only 36 of the 92 DACH agencies that replied would name a price without a call first, and only 41% of the 73 US firms publish any price at all. Refusal isn’t disqualifying; it just moves the comparison onto you. Send the ten questions in writing and treat the answers as the real quote. If an agency wants a paid consult to answer them—three Zurich agencies charged CHF 150–350 for exactly that—you have your answer before the invoice does.
How we quote, and an offer
Our quotes are flat rates with all seven lines spelled out—scope, ownership, licenses, hosting, maintenance, revision count, exit—and the current prices sit on the website build page, not behind a discovery call. Every contract we sign names the exit: you own code, design and content in writing, and if you leave, you get a full handover of site, data and licenses. A quote that can’t describe your departure isn’t finished.
And the offer, in one line: forward us a competitor’s quote—the actual PDF—and I’ll send back a free line-by-line read of where the ambiguity lives. No call required, no pitch attached. The form is on the contact page.