I only do basic custom websites for small businesses. A basic site may include information pages, a contact form, blogging features, and photo galleries, wrapped into the website's look and feel.
Free tip: Don't go overboard with your website!
Many businesses get sold on a complicated website that doesn't do anything for them. In this day and age, a small business website should portray your company's image, be user-friendly and meet your marketing goals while being as simple as possible.
web hosting and domain names
These are places I like and recommend:
Domain Names at NameCheap. I know you've seen GoDaddy everywhere. I don't recommend them, and you can find a lot of people who don't like them for various reasons. One reason is, they try to sell you a bunch of stuff you probably don't need, and nickel-and-dime you for features that are standard at most places.
That's why I moved all my domains to NameCheap. They have competitive prices for domains, and better prices than GoDaddy for basic SSL certificates ($10.95 RapidSSL for 1 year). No place is flawless, but NameCheap is very good and has monthly discount codes for new domains. Another good alternative that people seem to like is Moniker.
A good web host is also important.
For general hosting, I like InMotionHosting. If you are hosting a WordPress site, I recommend WPWebHost. There are plenty of hosts out there. I have experience with both of these companies, and I still like them.
If you want to keep all your eggs in one basket, domain registrars will often offer hosting, and web hosts will often times give you a deal on domain registration as well. I prefer to diversify as much as reasonably possible and pick the best companies for each.
Note: Domain and web hosting info is updated as of 2020. The links above are affiliate links, and using them will give me a kickback if you decide to do business with them. Thanks!