The range is real and it is wide. A DIY builder subscription gets you a live site for a few hundred a year. A freelancer on a marketplace will do a six page roofing site for low four figures. A traditional agency with a sales team, a project manager and a designer quotes mid four to five figures for those same six pages. None of them are lying about their costs. They carry different overhead and different process. What changes between them is how much of your money ends up in the thing a homeowner actually sees on their phone.
The legitimate cost drivers in roofing are photography, service area structure and forms. Original job photos from your own crews beat stock every time, and somebody has to collect, crop, caption and compress them. If you cover six towns you need six pages written differently, not one page with six city names dropped into it. Financing blocks, storm and insurance claim explainers, and an estimate form that reliably lands in your inbox all take real setup time. Load speed matters more here than almost anywhere, because a big share of your traffic is a homeowner standing in the yard looking up at a stain.
Then there is the part that is mostly margin. Discovery workshops that end in a slide deck. A custom design system for a nine page site. A logo refresh you never asked for. Stock photography licensing. Watch for setup fees that exist only to make the monthly look small, and hosting marked up many times over what it costs the vendor. The expensive one is lock in. If the site is built on a platform you cannot export and the agreement runs twelve months, part of what you are paying for is the agency's retention rate. Ask who owns the files on day one.
At any price you should get a mobile first build, a page for each core service, a page for each real service area, click to call in the header, a form that works, and your Google Business Profile connected to the site. Low four figures should add original photography, review display and competent on page SEO. Mid four figures and up should add custom design, financing integration, call tracking and a written content plan. Monthly plans should include updates. If edits are billed hourly on top of a retainer you will stop asking for them, and a roofing site that never changes stops producing leads.
Judge a quote on three questions. What ships, page by page, in writing. Who owns the domain, the hosting and the files if you walk away. How do changes work after launch and what do they cost. A good vendor answers all three without scheduling another call. If nobody can tell you the page count, the timeline or the post launch process, the number you were given is a guess. Heights publishes a $750 build and $399 a month that covers unlimited site updates, monthly content, monthly SEO for Google and AI search, and Google Business Profile work, month to month.
| What you are buying | What it usually runs |
|---|---|
| DIY template builder | A few hundred a year, plus your weekends |
| Freelancer, six to eight pages | Low four figures, one time |
| Local agency custom build | Mid four figures and up |
| National agency with a sales team | Five figures, usually on a contract |
| Heights Digital | $750 build, $399 a month |
If yours is not here, ask it on the call. You will get a straight answer.
(210) 729-4008It depends what cheap means. Cheap because the vendor reuses a proven layout and skips the discovery theater is fine. Cheap because there is no photography, no service area pages and no working form is not, because the site will never rank or convert. Ask what is included before you judge the number.
Monthly makes sense if the monthly actually buys ongoing work, meaning updates, new pages, SEO and profile maintenance. It is a bad deal when it is only a payment plan for a build you already finished. Ask what happens in month seven. If the answer is nothing, pay once and keep your money.
Send the site over. We will tell you what is broken, what you could rank for, and whether AI search knows you exist. No charge and no pitch deck.