Static vs. CMS, what's the best solution for clients?

6 years ago from , Freelance designer and front end developer

There was a post earlier today about whether or not people still build static sites for their clients. That discussion begs the question, if not static then what?

There's a wide range of 'CMS' options out there from database-driven solutions like WordPress and Drupal to static site generators like Jekyll and Middleman. WordPress and Drupal can be easy for clients to update once they are set up, but there is a ton of associated overhead. Jekyll and Middleman are dead simple, but require some knowledge of command line and markdown to redeploy after making changes.

When dealing with clients building stuff like landing and marketing pages what is your preferred solution? What's the perfect balance between usability for the client and ease of development?


  • Jon GoldJon Gold, 6 years ago

    A better CMS, I think. I really don't know the answer, but I want to kill myself working with WordPress or Drupal - so whilst the client might enjoy the editing interface, they won't be getting a website to edit because they won't have a web designer by that point.

    Jekyll is fantastic but obviously it's not perfect for non-technical users. Things like Prose.io are cool but they still don't tell the whole story - they're great for editing text but CMS's aren't just about editing text - they're about reviewing drafts and installing plugins and doing adminy stuff - letting people feel like they're in control.

    I don't think Jekyll is great because it's a static site generator - it's great because it has a sane API, where the alternatives have mindnumbingly awful APIs. I'd keep an eye on Ghost and Buckets - I don't think the CMS is dead, just that the incumbents are shitshows.

    The caveat is the death of CMSs for small, personal sites for technical owners. Remember years ago when every designers' portfolio site was a sprawling WordPress/Drupal/Joomla/PHP Nuke/Mambo/kill-me-now mess? Every post was a database entry in a MySQL database you had no idea how anything really worked and FOR THE LOVE OF GOD ALL YOU WANTED TO DO WAS LOOP OVER SOME IMAGES? Jekyll solves that; there's no need for a CMS for that junk.

    8 points
  • David KanedaDavid Kaneda, 6 years ago

    Hey Will, my own 2c:

    Static site generators are great for developers, but typically not for clients. Additionally they have limited URL structures (there are things they can't accomplish with regard to search or filtering results based on the URL). If you are interested, however, I would definitely recommend systems like Statamic and Kirby over ones like Jekyll and Middleman (both are flat-file based but provide admin UIs).

    I started a branch last year which has a lot of great thoughts on the subject: http://branch.com/b/what-s-your-favorite-website-cms

    Not to spam, but I'm currently working on a database-powered solution for Node.js (Buckets, which aims to have the power of systems like Drupal, the UX ease of apps like Tumblr, include file/git-based templating, be wicked fast, and still yet be totally open source and self-installable. This is early on in development, so clearly not an option for a looming deadline, but just highlighting as I'd love to get more feedback on what would make a great CMS here: https://assembly.com/buckets

    7 points
    • Marc EdwardsMarc Edwards, 6 years ago

      Statamic and Kirby look brilliant. Really nice.

      I'm currently using a combination of Hammer, CodeKit and have toyed with Cactus. They're all good, but don't have a CMS beyond editing text files (which works for me, but might not for clients).

      And, good luck with Buckets!

      3 points
      • Jonathan YapJonathan Yap, 6 years ago

        Upvote for the same flow of hammer and codekit for dead simple static sites.

        But I find grunt/gulp with handlebars.js/templating engine more powerful and flexible for those that doesn't require the capability of a full blown CMS

        0 points
  • ポール ウェッブポール ウェッブ, 6 years ago

    I've always worked on top of Wordpress for clients. It may not be the simplest, but it is certainly the best for most clients. Nearly everyone knows it exists, there are plugins galore, and clients finding help on their own isn't impossible.

    4 points
    • Giulio MichelonGiulio Michelon, 6 years ago

      Same for me, mostly for plugins

      0 points
    • Coulter PattonCoulter Patton, 6 years ago

      Same here. I think the tradeoffs are worth it. I can always find a viable solution for clients, and clients can always find numerous, well-documented resources for whatever they need to accomplish.

      I've considered looking for other solutions, but until something comes along that has the same vibrant ecosystem as Wordpress, I'm willing to put up with the small amount of frustrations I do come across from time-to-time.

      Most of my clients don't need bleeding-edge technology, they just need a simple, stable platform to work with.

      0 points
  • pjotr .pjotr ., 6 years ago

    I use a combination of the two. Siteleaf is a CMS that generates static files and pushes them to your server. There is an admin interface that a client/whoever can use to add pages, post articles and add files.

    Another new CMS that seems super nice is Webhook. It was successfully funded on Kickstarter a littler while ago. I got into the beta but haven't had the time to go completely through it yet. However I will say the amount of documentation and tutorials available for a CMS that is still in closed access is tremendous.

    3 points
    • Dave SniderDave Snider, 6 years ago

      Designer of Webhook here. If anyone here wants in the beta just send me an email dave@webhook.com. I can sneak you all in.

      Thanks for the kind words about our documentation. Hopefully you find the system as easy to use.

      1 point
  • Jack CallisterJack Callister, 6 years ago

    I've been using Contentful for a new client and so far have been very pleased with not having to build a CMS (both myself and client) and instead can focus on the design and UX.

    I'm using it inside a Rails application with the Ruby API wrapper. This means when the client asks for some crazy calculator thingy I can just code it in Rails.

    Just as a prediction - content API's look like the way to go! No more doing the same thing over and over. Well other than setting up Contentful of course...

    2 points
    • mewo a, 6 years ago

      I agree content API's are the future. Particularly for mobile, I've had a look at contentful, I just wish something like it existed that you could host on your own server. Some of my clients have restrictions around this. Also free to $100 p/m is a steep jump.

      1 point
      • Jack CallisterJack Callister, 6 years ago

        It is incredibly steep. It seems theres a small hole in this market, or at least a lead contender hasn't emerged yet.

        Another thing to educate clients (and ourselves!) on is the fact that a WYSIWYG is rather meaningless since content is now distributed and displayed in various ways.

        0 points
  • Sheffield LeithartSheffield Leithart, 6 years ago

    I've been using AnchorCMS for a lot of clients recently. It's simple, light, and easy to customize. It only supports Markdown so far, so if your clients want to update their pages, they'll have to learn it. I'm thinking about integrating a WYSIWYG or something like Ghost's editor soon.

    2 points
  • barry saundersbarry saunders, 6 years ago

    Obligatory it depends and there's no perfect balance warning, but in my experience:

    • yes we certainly build static sites for clients, particularly for promotions and campaigns
    • few clients ever learn to use their CMS, so it's really about whether you want to use a CMS or not.
    • remember this before suggesting a client build a blog because they will very, very rarely update it.
    • if you're building landing pages or marketing pages, the tradeoff of the design restrictions a CMS will introduce versus the ability to update a page (that may only have a short life anyway) will affect your decision. The exception here is if you need to do A/B or multivariate testing (though you can do this without a CMS in some respects)
    • if the client just wants to be able to tweak copy, you can use an XML file or even Google Docs to manage the actual text content and use a static site anyway. Or you can use a tool like Cloud Cannon which gives you a static site but also generates a limited-access content editor for clients. Or they can email you the changes marked up in Skitch or something (a lot of design feedback comes this way)
    • if the client already has a need for a CMS, they probably have a CMS in mind that they've already bought into. This will usually be for business reasons so you'll have little influence over this decision, and the CMS in this sector are industrial-grade behemoths like Sitecore or Sharepoint.
    1 point
  • Sam MularczykSam Mularczyk, 6 years ago

    CMS for sure. Static site generators are just too difficult for most clients to use, and seriously, the point of using either of these is to make life easier for the person who's maintaining the site. Why choose an option that actively works against the average user's skills?

    Static generators are fantastic if you know what you're doing, but they're too much work for everyone else.

    A great middle-ground is Kirby CMS - a simple, NoDB CMS that you can maintain using both static files and an admin panel. My clients absolutely love how easy and efficient it is, and you can do some surprisingly complex, DB-like stuff with it.

    1 point
  • Jorge MartinsJorge Martins, 6 years ago

    I think kirby deserves some attention, as well as it might answer your question.

    It quite balances the easiness of development of a static site generator, with the comfort of having a complete web "content management" interface (away from the code) for the client; they call it the panel

    1 point
    • Sam MularczykSam Mularczyk, 6 years ago

      Kirby is awesome. Posted a comment about it and saw yours - couldn't recommend a better CMS.

      0 points
  • Alec SibiliaAlec Sibilia, 6 years ago

    Hey Will,

    Check out Bluetrain.io. We're a CMS built for developers aimed at solving exactly this problem (using a CMS to generate static files). We support local development (with a sync tool) and development on our platform with an easy content editing environment for your clients. We're also totally free up to 5k page views per month.

    0 points
  • Thibault MaekelberghThibault Maekelbergh, 6 years ago

    Here's a belgian developed CMS by one of the biggest and most famous agency's.

    It's called ForkCMS, it's open source and seems to be loved by many developers here.

    I've never used it before but it seems like something I'd give a go and it has a pretty well-educated userbase.

    0 points
  • Nick HileyNick Hiley, 6 years ago

    I've just used Cockpit for my last client. It's very good and lightweight. You can customise it as much as you want too!


    0 points
  • Daniel PuglisiDaniel Puglisi, 6 years ago

    I'm done with traditional CMS systems. It was too hard for me to build really customized features for my clients and working with plugins (I'm looking at you Wordpress) wasn't nearly that pleasant than my current solution.

    What is my current solution?

    Just plain and simple Rails apps stripped down to the core functionality my client needs. For pages with a deep navigational structure and a lot of static content I've developed a gem called seiten.

    0 points
  • Jonathan YapJonathan Yap, 6 years ago

    Oh, one interesting CMS to look at is http://www.webhook.com which came out of kickstarter not too long ago. I haven't try it out extensively as it's still in private beta but the approach of building a custom CMS that suits your project sounds like a fantastic way to roll out client projects. It's one to watch for the future.

    0 points
  • Nathaniel PeralesNathaniel Perales, 6 years ago

    I use Wordpress for clients and friends. Most people like being able to be able to update their about section, or video section or blog, depending on the client.

    It does have a pretty messy admin area, but with the Adminimize plugin, my clients don't have to see any of that stuff.

    Also with the Advanced Custom Fields and their Repeater plugin, it makes it really self explanatory for my clients to update whatever they need.

    Even my mom was able to update my sisters volleyball website with no help from me, I just gave her the log in information with a custom user for her, admin section all hidden with adminimize and she figured it out.

    0 points