The short answer
For a typical small business site, expect roughly:
- DIY builder: $15–$50/month, plus your time.
- Freelance designer: $1,500–$6,000 upfront, plus ongoing hosting and edits.
- Agency build: $6,000–$25,000+ upfront, plus a monthly retainer.
- Flat monthly fee: $150–$400/month all-in — design, hosting and updates bundled.
The best fit depends less on the sticker price and more on how much of the work you want to own long-term.
DIY builder costs
Squarespace, Wix, Shopify and similar builders publish tidy prices, usually $15–$50 a month depending on the plan. Add a domain ($15–$25/year), maybe a premium template or plugin ($50–$200 one-time) and stock photos if you don't have your own.
The real cost of DIY is time. Most owners spend 20–60 hours on the first build, then keep paying for that time whenever hours, prices or offers change. If your hourly rate matters, run the math before assuming DIY is cheapest.
Freelancer costs
A freelance designer typically charges $1,500–$6,000 for a small business build, depending on scope, location and experience. That usually covers design and launch, but not hosting, ongoing updates or copywriting. Expect to arrange hosting yourself and pay hourly for changes later.
Freelancers work well when you already know what you want, have your copy ready and don't need a lot of hand-holding after launch.
Agency costs
Traditional agency builds start around $6,000 and climb well past $25,000 for custom design, copywriting and integrations. Agencies bring polish, process and a team — but the price reflects it and ongoing changes typically bill hourly or run through a monthly retainer of a few hundred to a few thousand dollars.
Flat monthly fee costs
Flat-fee providers roll design, hosting and ongoing updates into a single recurring bill, usually $150–$400 a month for a small business site. There's no upfront project fee and small changes are included instead of billed hourly.
This model fits owners who want a working site without owning the maintenance and who'd rather trade a big one-time bill for a predictable monthly one.
Hosting, domain and maintenance
Whichever route you pick, these keep showing up:
- Domain: $15–$25/year.
- Hosting: $10–$30/month for a small business site, higher if you need email or e-commerce features.
- SSL/security: usually included; occasionally a $50–$100/year add-on.
- Maintenance: $50–$200/month if outsourced — updates, backups, small content changes and monitoring.
- Business email: $6–$12/user/month (Google Workspace, Microsoft 365).
Three-year total cost comparison
Rough all-in ranges over three years for the same small business site:
- DIY builder: $700–$2,500 in fees, plus your time.
- Freelancer: $3,000–$10,000 (build + hosting + occasional edits).
- Agency: $10,000–$40,000+ (build + retainer).
- Flat monthly fee: $5,400–$14,400 (everything bundled).
Over three years, the flat-fee and freelancer routes usually land close on total spend; the flat-fee route trades a large upfront bill for a predictable monthly one and includes ongoing updates.
How to choose
- DIY if you have time, taste and enjoy the tinkering.
- Freelancer if you know what you want and can manage hosting and edits yourself.
- Agency if you need extensive custom work and have the budget for it.
- Flat monthly fee if you want one provider, one predictable bill and no maintenance to manage.