What a Small Business Website Costs
Most US small business websites cost between $2,000 and $8,000 in 2026. A simple brochure site starts near $500 to $1,500. Ecommerce runs $1,000 to $12,000 depending on catalogue and integrations. Enterprise builds start around $20,000 and go up from there.
Those ranges are wide because a website is not one product. The same five-page brief can honestly be quoted at $1,500 or $15,000 depending on who writes the content, how the design is produced, and what the site has to talk to. Here is what actually moves it.
The seven variables that set the price
1. Who writes the copy
This is the single biggest hidden cost and the most common reason projects stall. If you supply finished copy, the build is faster and cheaper. If the agency writes it, add $150 to $500 per page. If nobody writes it, the project sits at ninety per cent complete for three months.
2. Template or custom design
A well-chosen template with your brand applied properly costs a fraction of a custom design and, for many businesses, performs just as well. Custom design earns its money when your brand is a genuine differentiator or your content does not fit standard patterns.
3. Page count, but not the way you think
Ten pages using three layouts costs less than five pages using five layouts. Ask for a quote by template rather than by page and the number usually drops.
4. Integrations
A contact form is trivial. A booking system that checks live availability, a CRM sync, a payment gateway, a stock feed from a warehouse system — each is a small project with its own failure modes. This is where quotes diverge most.
5. Content migration
Moving 200 existing blog posts with their images, formatting and URLs intact is real work. Redirect mapping so you do not lose search rankings is real work too, and it is frequently left out of quotes.
6. Who maintains it afterwards
A site built so your marketing team can edit it without a developer costs more up front and far less over three years. A site where every text change is a support ticket is cheaper on day one and expensive forever after.
7. Performance and accessibility
Hitting Core Web Vitals and WCAG accessibility standards is not automatic. It requires decisions during the build, not a pass at the end. If a quote does not mention either, assume neither is included.
The costs that turn up after launch
Budget for these separately, because they are rarely in the build quote:
- Hosting — $5 to $50 a month for most small business sites
- Domain — $10 to $20 a year
- SSL — usually free now, but confirm
- Plugin and theme licences — $100 to $500 a year for a typical WordPress site
- Maintenance — updates, backups and security monitoring, $50 to $300 a month
- Content — the ongoing cost most businesses ignore entirely
What a fair quote looks like
A quote you can trust names the number of templates, says explicitly who writes the copy, lists every integration by name, states the browsers and devices tested, and gives a fixed date rather than a duration. Anything vaguer than that is not a quote, it is an opening position.
Common questions
Is a cheap website worse for SEO?
Not inherently. Cheap sites tend to be worse for SEO because they skip the parts that take time — page speed, heading structure, internal linking, meta descriptions — not because of the price itself. A well-built $2,000 site can out-rank a badly built $20,000 one.
How long does a small business site take?
Four to eight weeks with content ready. Twelve or more without. The build is rarely the bottleneck.
Should I pay monthly for a website?
Be careful. Some monthly plans are genuine maintenance. Others are rentals where you never own the site and lose it if you leave. Ask who owns the code and the domain, in writing.
How we price it
Our website development quotes are fixed price against a written scope, with a fixed date, and built so your team can update the content without raising a ticket. If you are selling online, ecommerce is scoped separately because the integrations dominate the cost.
Tell us what the site needs to do and we will give you a number rather than a range.

1 comment