Web Hosting for Non-Technical People: Designing a Website for Maximum Speed
The Internet is a seemingly miraculous place for small businesses. These days, there are all kinds of companies offering turn-key e-commerce site design and hosting solutions, all delivered — almost literally — at the push of a button. No design skill? No problem! No technical know-how? Who cares!
Of course, behind the scenes, things aren’t that simple. Many of these turn-key solution providers deliver bloated, inefficient, insecure back-end designs and over-sold shared hosting to house your site when you’re done. As a general rule, I advise my small business-owning friends to steer clear of the “design and host your e-commerce website for $9.99” companies, and do a little work on their own to build and host a site that works best for them.
I’m not saying every small business owner should code their own site from scratch. That would be silly. What I am saying is that — whether you build your site from scratch, or from a popular CMS like WordPress, or whether you hire somebody to build your site for you — you should make sure your site is designed as simply and intelligently (on the front and the back end) as you can. Why? Because:
- Simple, well-designed sites are faster sites.
- Simple, well-designed sites require less hosting resources, which makes them cheaper sites.
- Simple, well-designed sites rank higher in search engine results.
- Simple, well-designed sites are easier to keep up to date, which makes them more secure.
- Simple, well-designed sites are easier to edit, which makes them more adaptable to changing business conditions.
How do you do build a simple, well-designed site? The following are a few ground rules, helpful hints and specific suggestions that should make things easier for you.
Tip 1: simple is as simple does (but not looks)
Let’s start by making one thing perfectly clear: simplicity in appearance does not necessarily equal simplicity of design. The kinds of things we’re talking about here are mostly “back end” simplifiers, optimizing the parts of your site the public doesn’t see. There are some “front end” changes you can make that will help page load speeds, but mainly this is about what happens behind the scenes.
Tip 2: install caching software
Here’s a general rule of thumb: don’t make your server serve up content content if it doesn’t have to. Each time your site serves up an image, or a page framework, or any viewer-facing component that process requires the computer that is storing your site — the web server — to do a lot of resource-intensive work. You pay for all these resources, so you want to keep this kind of work to a minimum. What you want to do is “cache” as much of this content as you can.
Caching is pretty simple in concept: when you cache pages or elements, you store frequently seen content remotely, off of your web server, so it’s not called up off the server’s storage drive each time the viewer’s computer asks for it. In its most simple form, caching software stores elements of your site in the browser of your visitor. When they visit your site for the first time, your caching engine tells the browser which information to save for the next visit, which greatly decreases the load times of subsequent visits.
In the past, caching required complex coding, but these days, with standardized content management systems (like WordPress) providing the underpinnings of most small business sites, there are easy-to-install plug-ins that will do most of the heavy lifting for you. For the record, the WordPress caching plug-in our technical support team recommends most often is W3 Total Cache.
Tip 3: turbocharge your caching with a CDN
Caching software can store your content inside the site viewer’s browser, but it can also work in concert with a content delivery network (CDN) that is optimized to serve up your cached content around the globe. This means that even first-time visitors will experience faster load times when visiting your site.
CDNs used to be exorbitantly expensive systems, used almost exclusively by Fortune 500 companies, but that’s not the case anymore. Now, there are high-quality CDN options for almost any budget. We like Cloudflare. Note that while today’s CDN solutions are both affordable and very powerful, they’re not for everyone. You should definitely check with your designer, or the sales/engineering teams at your hosting company, to see whether your site’s traffic warrants the extra effort of a CDN.
Tip 4: serve only recent posts.
Here’s a simple rule of thumb for efficient design: if you have a site with chronologically sequential, frequently updated content (like a blog), design the site so that only the last two or three posts are displayed when the site is loaded. Some CMSes do this automatically, but it’s something you should make sure is happening. There’s no sense in making your server seek out, retrieve, and display content that’s months (or even years) old, when your readers don’t really want or need to see it.
Tip 5: limit your apps
Keep your apps and widgets to a minimum. These elements usually spin up whether you need them or not, and they all consume valuable system resources. So take a long, hard look at what you really need to run your site, and restrict your widgets to the ones that do serious heavy lifting. Oh, and one specific tip: skip all calendar widgets if you can; they’re incredibly resource-intensive.
Tip 6: Update your software
Make sure you’re always up to date on version updates if you use a CMS. Version updates = better performance and better security. No excuses!
Tip 7: limit your image sizes
Try to avoid widgets or plug-ins that automatically re-size images on your pages — and don’t use gigantic images as your source files. Your re-sized display images may look like tiny thumbnails, but your server will still have to spend the resource horsepower required to load them as multi-megabyte image files to begin with, before they get shrunk for cosmetic reasons. Instead, better to scale the images to the proper size before uploading them.
Tip 8: get it right the first time
Here’s the last bit of insight I want to share: I know it’s tempting to skip the process of making sure a site is designed for maximum performance before you launch it publicly — to watch it in action “in the lab” and give it the go-ahead as soon as you see that it does what you want it to do. But you must design and test your site with real-world traffic impacts in mind.
An inefficiently designed website can function quite adequately when traffic to that site is slow. But every site has a point past which each additional visitor causes it to slow down, or simply stop working. When a poorly designed site hits this point, you have a choice: tear out your old code and redesign it after the site is live, or upgrade your hosting package. The former is a giant pain in the neck — especially if the designer you worked with has already been paid, and owes you nothing anymore — and the latter is expensive. It’s always better to make sure you got a good design to start with.
By the way, for those of you who are paying somebody else to design your site: don’t feel weird about asking your designer to make sure your site has been designed with these principles — even these specific recommendations — in mind. If nothing else, it will show your designer that you’re just as serious about how your site works as you are about how it looks — and it will open a line of dialog that can only prove helpful to you and your business in the long run.