What Features Are Essential for Small Business and Nonprofit Organization Websites

Gregory Heller Profile Photo
Gregory Heller


August 14, 2009

What Features Are Essential for Small Business and Nonprofit Organization Websites

Recently Acquia solicited some feedback from us about what kind of features we though would be useful to small businesses for their upcoming product, code named "Acquia Gardens". While we typically only work with small businesses with a social mission, we often do hear from businesses looking for web development work. In addition, I feel I have a pretty good beat on what small businesses need for a web presence given my regular attendance at the Seattle Drupal User Group (SeaDUG), Drupal Camps, and being "that guy" that my family and friends always refer to people who need websites. After responding to the inquiry, I though this would be a good topic for the blog, and to invite some other suggestions.

When I visit a business's website there are generally 3 things I am looking for:

  1. Their Location
  2. Their Hours of Operation
  3. Contact Information

If a website doesn't provide that information, than in most cases I'd say it fails. Beyond that what else should a small business, or small non profit website offer?

  • About: Information about the business or organization, and then also bios or profiles of the key people or staff, like the founder of the company, who are they, their story, and a picture.
  • Offering: What products or services do they offer? A description of each, possibly a picture, and link to examples of these in their portfolio (see below)
  • Portfolio: Examples of their work, or successes, or ongoing projects. This could be complimented with or supplanted by testimonials.
  • News Room: articles and accolades, and/or links to them, along with the ability to attach a scanned copy. Think of this as the wall of clippings hanging next to the register, or the "as seen on [the local news]". For non profit orgs, they often ask for a place to put press releases. I am not a big fan of press releases. I think they are a bit of a vestige of the past, especially for most organizations, posting them on the web is fine and all, and it can certainly help for SEO, but you really need to file those releases with something like PR Newswire. Your audience probably doesn't want to read through a dry press release, but they would read a blog. What is the difference? Both are content, and both can talk about a new product, service or initiative, but the tone of the blog entry is much less formal, and much more authentic (or at least it should be -- if your blogs read like press releases you are blogging wrong).
  • Links: Links to where you can buy a product, or where else you can find the company or organization on the web: Twitter, YouTube, Facebook, LinkedIn, etc...
  • Photo Gallery: the ability to post pictures, whether it is of happy customers, a company's work (like an architect or interior designer, or landscaper... this stuff is also part of the portfolio above), business owner with local elected officials, or tossing out the first pitch at a little league game. This functionality could be offloaded to Flickr, for example, but small organizations don't have the time to manage many things when it comes to the website, so giving them one place for it all is probably better, as long as it is easy.
  • Calendar: the ability to post upcoming events, and also show past events. Events should have information not just about start and end times, but also locations, and any costs associated, as well as the ability to add an image (either before, like a flyer or advertisement, or after)
  • Blog: I believe that even small businesses should be blogging. It is a way to build up a loyal customer base (tell them how things are going with the business, link to interesting articles, announce special promotions, or new products) and to increase organic traffic via search engines. But a blog should really only be a part of the site if the company or organization can commit the resources to regularly blog, which I would consider weekly or more frequently than that.

So all that was really "content" oriented features. There are also true functionality oriented features that users look for and at a minimum they include:

  • Contact: ability for site visitors to contact someone via email, and/or by phone. I've seen some sites that are clearly built with blogging software jerry-rig commenting for contacting, and that is just lame. A contact form is essential. Put some spam blocking on it too.
  • Send to Friend & Share: Send to friend functionality used to be all you needed, but now, making it easy for a site visitor to post the site or page to Facebook, Twitter, Google Book Marks, Delicious, etc... is crucial.
  • Printer Friendly Pages: I think this is less important these days, but since it is easy to provide, a printer friendly button, or PDF this page option is nice.

The last bit, which is really specialized depending on the business or non-profit has to do with transactions:

  • Email Signup: let users signup for email updates or special offers
  • E-commerce: I'm not even going to go there because there are so many variables, but if you are going to think about e-commerce then you better be sure the revenues justify the expense of implementing it.
  • Donations: this one is for non-profits, again, it is specialized and important, but really requires much more planning and requirements gathering. Again, be sure the revenues justify the expense of the functionality.

On the "back end" creating all of this content should be easy. Page titles and urls should be automatically configured for SEO benefits without requiring much additional configuration from the site owner. Spam protection should be built in and easy to maintain, especially if any kind of commenting is allowed. Automated link checking to make sure that all the links on the site work, and if they don't the site owner is notified of the problem and can correct it, Google Webmaster tools can be used for this, though it is not automated.  Google Analytics or a comparable web analytics package to provide information on traffic and visitor behavior is also important for any site.

For small business and small non profits, its important to keep it simple, both in terms of features and functionality, and design. With small budgets these organizations probably can't afford fancy design or implementing it, so sticking with clean, user friendly visual and information design is key. Of course it should be easy to change some colors and add in a logo, move things around and such, but there is definitely a line that should not be crossed.  Most site visitors are not going to remember design subtleties, they are going to remember if they could find the information they were looking for easily. (Read Steve Krug's Don't Make Me Think if you don't believe me on this one.)

You'll notice that nothing I have listed above is particularly complicated. Most of the functionality and features is easily achievable through existing Drupal modules and some configuration. With the introduction of the Features module, much of the configuration could be reduced to "features" that can just be turned on or off depending on the client.

The other thing to mention is that all of this functionality is also basically available through an amalgam of free or nearly free web services. Stitching together Tumblr, Blogger, Wordpress or event Google Sites with Google docs (for forms) and Google calendar, Flickr or Picasa for images, and Google groups, or Constant Contact for mailing lists could also achieve much of this. Granted the result would be a bit more Frankenstein-ish, and putting it all together and maintaining it would be more of a challenge, ultimately a more fragile solution and one that won't grow easily and smoothly.

The key take-away is that the functionality has been commoditized, and when things are commoditized, the price basically trends towards zero, especially in the digital age. The value worth paying for is making all of this run smoothly and reliably and look pretty.

If Acquia Gardens can deliver this, then it will be a fantastic product and service for small businesses and organizations, and one that gives them a platform for growth because it is built on Drupal.

So what do you think? Are there other features that you would put on the list for these types of websites? Leave a comment.

Share it!


Ejoyed your post - nice job!

I would just add a "Resources" sectionto your existing recipe - articles, surveys, best practices, tips, white papers, reports, etc. about the industry they serve - if a small business can add an educational component to their website there is some real value add to the customer.  This type of content also helps with SEO.  


Absolutely! But it of course depends on the type of business and also the capacity of the organization to create and maintain these resources.  I could certainly see a small cleaning service, for example, having a list of resources about the benefits of regular cleaning (health and environmental) as well as using green cleaning products.  But I am also a firm believe it is good to "do what you do best and link to the rest" so if there is better, more up to date and more regularly maintained information out there, I would suggest and encourage a organization or business to consider linking to it, rather than attempting to reproduce it for themselves.

This too can help with SEO, in so far as the link includes some context around it, and it may result in inbound links.

I hope your post encourages more people to chime in. Your summary sounds spot on, there are tons of tools out there, but most small businesses and nonprofits don't have time to reseach and find the right ones, let alone stitch them together into a cohesive site.


Hey Greg,


I thought that was a very good write-up. I'd just like to add that mailing list management is not always trivial, especially for a small business or small non-profit. I have been using the Campaign Monitor commercial service lately to send out emails to our mailing list because of their really good templates which display consistently in most email clients and because of their sophisticated link tracking. However, we can afford to use it only a couple of times a month (there is a very small fee for each email sent but it can add up), and it uses its own email list which we have to maintain separately from our Drupal site registration. This can be confusing for users and produces extra work for us.

CiviCRM now provides tighter integration with Drupal and the mail server functionality appears to be getting easier to set up but I still feel this solution can be overly burdensome for very small companies. This solution can also raise the hosting requirements. It's difficult to run on shared hosting.

That leads to another issue. It's difficult I think for small businesses to determine their hosting requirements and whether particular hosts meet those requirements. It's easy to run a basic Drupal site on shared hosting, but adding Views (particularly Views with larger queries), multimedia sometimes, CiviCRM, etc., can quickly increase the php memory requirements and the demands on the mysql server to where one can really slow sites if not out of memory errors. And yet paying for and maintaining a virtual private server or a private server can be impossible for a small company or non-profit for which the web site is a necessity but may not generate much income directly to pay for itself.

So I think we need to continue to work on making Drupal (not just core but a full real-life installation) lightweight enough to run on shared hosting and/or we need to continue to bring down the price of VPS hosting, maybe cloud hosting which is on the verge of becoming trivial to set up) so that these thousands of very small companies can make full use of Drupal.




You are aboslutely right that email list management is non trivial.  For many small businesses or organizations their site visitors do not become "registered users" in the Drupal sense of it, so using a 3rd party mailing tool, whether an announcment list provided by a web hosting company (mailman or ezmlm for example) or a service like Vertical Response, MyEmma, MailerMailer, ConstantContact, Campaign Monitor... is a good solution and there is not the confusion you mention of having an email list subscription separate from a user account on the site.

Hosting requirements are also important, and you are right that not all hosts are created equal, and the last thing a small organization (business or otherwise) wants to worry about is their webhost. Certainly as you add modules and complexity it is quite possible to outgrow a shared hosting though for many "brochure ware" like sites there are many low cost shared hosting options available.  Also, I think (and Linea can correct me if I am wrong) that Acquia Gardens would include hosting.

Yes, Acquia Gardens will include hosting that's optimized for Drupal. Our plan is to include a big collection of D7 modules and themes for people to use. We'll update core and the modules and themes on Acquia Gardens so users won't have to worry about it.


Thanks for a succinct coverage of business essentials. I agree with your list of primary essentials: location, hours, contacts. 

My beef with many business web sites is when I have to wait for flash to load to get to the essentials.  (By default, I disable flash on my browser for security reasons.) One of the things I like to do is copy/paste essential information, which is another failure of flash as a content delivery tool.