Key takeaways
- A contractor website in 2026 costs $16–50/month DIY, $1,000–5,000 via freelancer, $5,000–15,000+ via agency, or $149–300/month all-in on subscription. The build price is the least interesting number.
- The number that matters is jobs to break even: a $3,000 site pays for itself in one HVAC install or roof — or about five average plumbing tickets.
- For emergency trades, your website is the closer, not the opener — Google Business Profile and Local Services Ads do the finding. The site's only job is turning the click into a call.
- The budget lever nobody prices honestly: the quote system. Call-only is free; a multi-step qualifier or online pricing tool costs more but closes dramatically better.
- The five hidden costs: bought-lead fees ($25–130/lead), per-page charges, copy revision rounds, review/speed-to-lead tools, and proprietary-platform lock-in.
Get three quotes for a contractor website and you'll get three different universes: $800, $6,500, and "it depends." Every one of them is technically honest. None of them answers the question you're actually asking.
The question isn't "what does a website cost." It's "how many jobs does this thing have to bring me before it pays for itself?" That's the only math that matters, and it's the math almost nobody in this industry will do with you — because once you see it, the sticker price stops being scary.
We build websites for a living, including for trades and home-service companies. Here's the breakdown we'd give a friend who runs a crew.
The short answer
In 2026, a working contractor website — one that actually generates calls, not just exists — costs one of four ways:
| Route | Upfront | Monthly | Year-one total | You own it? |
|---|---|---|---|---|
| DIY (Wix, Squarespace, GoDaddy) | $0 | $16–50 | ~$200–600 + your weekends | Sort of — you're renting their platform |
| Freelancer (Upwork, Fiverr, local referral) | $1,000–5,000 | $10–30 hosting | ~$1,500–5,500 | Yes, if it's built right |
| Agency | $5,000–15,000+ | $150–500 ongoing | ~$7,000–20,000 | Usually yes |
| Subscription (done-for-you, all-in) | $0 | $149–300 | ~$1,800–3,600 | No — stop paying, lose the site |
Those are real 2026 market ranges, drawn from this year's contractor pricing guides — not our price list. The DIY numbers are the platforms' own published plans. The freelancer and agency bands are what the market actually quotes. The subscription band is what done-for-you contractor services charge right now.
But here's the thing the table can't tell you: a $20,000 website that books jobs is cheap, and a $500 website that doesn't is expensive. Which brings us to the math.
The math that actually matters: jobs to break even
Take a $3,000 website — a solid mid-range build. Now divide it by what one job is worth in your trade. Typical 2026 job values reported across industry pricing roundups:
| Trade / job type | Typical job value | Jobs to pay off a $3,000 site |
|---|---|---|
| Plumbing repair / service call ticket | ~$600 average ticket | 5 jobs |
| Water heater installation | $1,500–3,500 | 1–2 jobs |
| Electrical panel upgrade (200A) | $2,000–4,500 | 1 job |
| Full HVAC system replacement | $7,000–16,000 | 1 job |
| Asphalt shingle roof replacement | $9,000–20,000 | 1 job |
Read that again. For an HVAC company or a roofer, a single closed job pays for the entire website. For a plumber, it's roughly a week of service calls. The website isn't a marketing expense at this point — it's a rounding error on one invoice.
The reason contractors overthink website pricing and underthink website performance: they're comparing the build cost to their bank balance instead of to one job's profit.
This is also why the "is it worth it" question has such a boring answer: if your site brings you even two or three extra jobs a year, it paid for itself several times over. The risk was never the price. The risk is paying for a site that doesn't convert.
Your website is the closer, not the opener
Here's the honest reframe most web companies won't give you, because it makes their product sound smaller than it is:
For emergency and high-urgency trades — plumbing, HVAC, electrical — your website does not find customers. Google does. When a pipe bursts at 9pm, the homeowner searches "plumber near me," and Google shows them the local map pack: your Google Business Profile, your reviews, your phone number. The profile is free. The click on it is free.
Your website's job starts after that click. The homeowner lands on your site with one question — "is this the right company to call right now?" — and about 90 seconds of patience. Everything your site does either answers that question or gets in the way.
This changes what you should pay for. You're not buying "visibility." You're buying a conversion machine: tap-to-call on every screen, proof you're legit in under ten seconds, and a quote path with zero friction. A gorgeous site that loads in six seconds and hides the phone number is a liability, not an asset.
And it changes the budget conversation. Google's Local Services Ads — the "Google Guaranteed" listings above the map — charge per lead by trade. Reported 2026 ranges: plumbing $25–75, HVAC $30–80, electrical $25–65, roofing $40–100 per lead. Pay-per-call networks publish medians in the same neighborhood: ~$38 for a plumbing call, ~$37 for HVAC, ~$42 for roofing, with top markets paying double or triple that.
Every one of those is a lead you rent. A website lead is a lead you own — no per-call auction, no bidding against the truck down the street. That's the real ROI case for the site: it's the only lead source on your P&L with a marginal cost of zero.
The quote system is where the budget actually goes
If there's one decision that moves both the price and the results, it's this: how does a visitor become a lead? Most quotes treat this as a line item ("contact form included"). It's not a line item. It's the product.
| Quote system | Typical cost | What it does | Best for |
|---|---|---|---|
| Call-only (tap-to-call everywhere) | $0 extra | Removes all friction for urgent jobs | Emergency trades: plumbing, electrical, HVAC repair |
| Simple quote form (texts you instantly) | Often included; $100–500 as an add-on | Captures after-hours leads you'd otherwise lose | Every trade — this is the minimum |
| Multi-step qualifier (service → zip → photos → details) | $500–1,500 add-on | Filters tire-kickers; you call back pre-sold prospects | High-ticket: roofing, HVAC install, remodels |
| Online estimator (good / better / best pricing tool) | $1,500–5,000 add-on | Visitors see real numbers before calling — and close at far higher rates | HVAC, plumbing companies willing to publish prices |
| Full online booking (live scheduling) | $50–200/mo SaaS on top | Customer picks a slot; no phone tag | Repeat-visit trades: maintenance plans, pest, cleaning |
The estimator row deserves a pause, because it answers the question every contractor asks: "should I put my prices on my website?"
Two reported 2026 examples say yes, loudly. A Denver HVAC company that lets visitors pick their home size and choose between good/better/best system tiers reported an online closing rate around 65%. A heating and plumbing company in North Carolina reported about 55% on leads that came through its online pricing tool.
Now the honest caveat, which the vendors selling these tools skip: those leads saw the price before calling. Of course they close higher — the price-shoppers self-filtered before they ever reached the phone. That's not a trick. That's the mechanism. Publishing prices doesn't just convert better; it converts better people, and your techs stop driving across town to give free estimates to customers who were never going to buy.
The most expensive quote form is the one your competitor has and you don't: every lead it captures at 11pm is a job you never hear about.
The pieces that earn their keep (and the ones that don't)
Strip a contractor site to what actually moves a homeowner from "maybe" to "calling," and it's a short list. If a proposal spends more words on animations than on these, it's selling the wrong thing:
- Live Google reviews on the page. Not screenshots, not a testimonials slider from 2019 — a live feed. Reviews are the entire trust decision for a stranger letting you into their house.
- Before-and-after photos of real jobs. A roofer's gallery is worth more than any headline ever written. Phone photos are fine. Stock photos of smiling hard hats are worse than nothing — homeowners can smell them.
- License number, insurance, years in business. Above the fold or one scroll down. This is the "are you legit" check, and it takes five seconds to pass or fail.
- Service-area pages. One page per town you serve, with real local content — not the same paragraph with the city name swapped. This is the single highest-ROI SEO play a contractor site has, and it's the thing template sites never include.
- A sticky call button on mobile. Over 60% of contractor traffic is on phones. If calling you takes more than one tap, you've built a obstacle course.
- Under 3 seconds to load on a phone. The homeowner with the burst pipe is on cellular data in a wet basement. Every second of load time is a competitor's phone ringing instead.
What's not on the list: a blog nobody updates, a drone video hero that takes eight seconds to load, a chatbot that answers nothing, and five pages of "our story." Nice to have. None of it books jobs.
Five hidden costs nobody puts in the quote
The build price is the beginning of the spending, not the end. Ask about these before you sign:
- Bought leads, forever. If your current "marketing" is HomeAdvisor, Angi, or Local Services Ads, you're paying $25–130 per lead, per the 2026 benchmarks above — and the price only moves one direction. A website that ranks and converts is the exit ramp from that treadmill. Budget the site against what you're already spending on leads, not against zero.
- Per-page and copy charges. That $2,000 quote covers five pages. Page six is $150–500. Need the copy rewritten after the first draft? $100–250 per revision round. Get the page count and revision terms in writing.
- The speed-to-lead stack. A form that emails you tomorrow is a form that loses to the competitor who texts back in sixty seconds. Missed-call text-back, instant SMS alerts, and review-request automation are usually separate small monthly tools. A 2026 home-services benchmark found 68% of contractor inquiries are lost before the business ever responds — the form is only half the system.
- Review and reputation tools. The live Google review feed, the post-job "leave us a review" text — most of it runs on a modest monthly SaaS. Worth it. Just know it's not in the build quote.
- The lock-in tax. Proprietary "done for you" platforms are cheap to start because you're renting, not buying. Stop paying and the site vanishes — you're back to zero with nothing to show for years of payments. That's a fine trade if you go in with open eyes. It's a nasty surprise if you don't.
Seven questions to ask any web vendor
Ask these on the first call. The good vendors answer all seven without flinching; the bad ones start hedging at question two.
- "Do I own the site, the domain, and the content outright?" If the answer involves their "proprietary platform," you are renting. Price it as rent.
- "What's the all-in monthly cost?" Hosting, SSL, backups, maintenance, updates — one number. If these are all billed separately, the quote isn't a quote.
- "How fast does it load on a phone — show me, don't tell me." Ask for a PageSpeed score on a site they built for a contractor, tested on mobile. Under 3 seconds or walk.
- "Exactly how does a quote request reach me, and how fast?" Email-only in 2026 is a non-answer. You want instant text alerts at minimum.
- "Who writes the copy and builds the service-area pages?" "You do" means you're buying a template with extra steps.
- "What happens if I leave?" You should get the files, the domain, and a clean handoff. If leaving means rebuilding from scratch, that's not a service — it's a hostage situation.
- "Show me two contractor sites you built — and tell me how the phones are doing." Portfolio screenshots are cheap. Lead flow is the only portfolio that matters.
So what should you actually budget?
For a typical 1–10 truck operation that wants the site to work — not just exist — budget $2,500–5,000 for the first year, all in. That covers a professional build with a real quote system, plus hosting, maintenance, and the review/speed-to-lead basics. Whether you pay it as a one-time build plus small monthly fees or as a $200–300/month subscription is a cash-flow decision, not a quality decision.
Then hold it against the only benchmark that matters: at your average job value, how many jobs pay for the year? For most trades, the answer is somewhere between one and five. If a vendor can't explain how their site earns those jobs, the price — any price — is too high.
And start with the free stuff first. Claim and complete your Google Business Profile before you spend a dollar on a website — it's free, it's where the 9pm emergency search actually lands, and no website outranks a neglected profile. Our pricing page lays out what professional builds actually cost with us, and our services cover the full setup from profile to quote system.
If you've already got a site and suspect it's the bottleneck, run it through our free site roast — we'll tell you exactly where the calls are leaking, no pitch attached. And if you want to talk through what your trade specifically needs, book a call. We'll give you the honest answer, including when the honest answer is "you don't need us yet."