DEV Community

Silvestar Bistrović
Silvestar Bistrović

Posted on

How do you convince a client to a static website?

Cover image — Generator

JAMstack is cool. If you haven't heard of Static Page Generators and Headless CMS yet, now's the time.

However, if you are familiar with it, and you know how to use them, then I need your opinion and help.

How do you convince a client to a static website?
What are your favorite players?
Do you have any tricks or tips you want to share?

Top comments (49)

Collapse
 
kpollich profile image
Kyle Pollich

This is wildly inaccurate and unrepresentative of the JAMstack ecosystem. I'd consider it downright naive to say there's "very little business value" in static sites.

Consider Gatsby, for example. This is an open source static site generator for React that recently raised $3.8M in funding and formed a business around static site development.

Or perhaps consider Contentful, a headless CMS popular in the JAMstack ecosystem. They just raised $28M in funding late last year.

If your clients are happy with WordPress, that's excellent. By all means stick to WordPress! Where I work, though, are clients are constantly demanding more modern toolsets and pushing the limits of what a website can be. For these clients, WordPress is not a solution in which they are interested. We work with Contentful, Gatsby, React, Serverless and more on a regular basis for some very high profile clients. I can assure you that these clients find substantial business value in these "static" websites.

We've come a long way from the previous generation of static site generators. With the ability to deploy highly dynamic, browser-based JavaScript applications to CDN's, the line between a static and a dynamic site has become increasingly blurred. Gatsby, for example, has started to move away from the term "static site generator" to avoid confusion here.

The clients with which we work are designing and requesting functionality that would not be maintainable were it implemented in a few hours with a suite of WordPress plugins, so reaching for these modern tools is much more feasible in my day-to-day work.

I strongly suggest reading up on some literature and case studies on jamstack.org/ or check out some of Gatsby's showcase to see just how much you can accomplish with these tools. You'll find sites with full login workflows, ecommerce, and more.

Collapse
 
whoisryosuke profile image
Ryosuke

I'd argue against there being "little business value" in static sites.

  • They're 10000x more efficient than their server-rendered counterparts since they can be purely served off a CDN. You get less bandwidth costs and immense scalability with static.
  • Your site is 10000x more secure because it's run off a CDN, not a server, so there's no much malicious code that can run. And even if there was some scrupulous client-side script, it'd be difficult to slip through, since content is controlled (Markdown only basically). No issues with a client installing a rogue plugin that runs mining operations or bloats the DB.
  • Since most deployments are through Git, your site is version controlled, allowing you to step backwards to a previous state, easier than a Wordpress backup.
  • You can still serve your static content from Wordpress as an API, and benefit from the flexibility of it's content structure (like using ACF).
  • Your SEO can be handled completely, like Yoast in WP. It's simply setup by the develop when they optimize the website (often using react-helmet and Markdown metadata).

It really depends on the client. If your client is looking for a product they can iteratively develop themselves, sure, Wordpress and a slew of plugins will work. But those clients probably aren't dealing with scaling issues, or honestly, they don't know what they want and the site's quality will suffer regardless.

At that point, they're not looking for a website, as much as a theme builder. Those are the clients I could recommend Squarespace or Wix and they'd probably be more satisfied with the greater degree of control. and honestly, being cheapos who want to install a plugin for a contact form instead of paying a dev to do it

 
phlickey profile image
Phil

Can I just hop on here to say that this is the most gloriously civil end to a discussion that I've ever seen on the internet.

Thread Thread
 
lassiter profile image
Lassiter Gregg

^ seconded

 
starbist profile image
Silvestar Bistrović

Use this and you have a full funcional site in matter or minutes:
github.com/netlify-templates/one-c...

Let's stop here, because we are not on the same page. Let's agree that we don't agree.

Collapse
 
cearls profile image
Chris Earls

I spent the last two years championing static sites using SSGs and a variety of headless CMSs in a marketing agency. We ultimately came back to WordPress because our clients requested it and there's a lot of value out of the box. However, I still wanted the benefits of static sites (speed, security, scalability).

That's when we found a service called HardyPress. They host WordPress in an anonymous environment that goes to sleep when you're not using it. A static version of the site is deployed to a CDN when you're ready to publish changes. It's been the best of both worlds for us.

You do still have to think about what it would mean for your WordPress site to be static. Not all plugins will work. HardyPress does provide support for Contact Form 7 and search.

I have no affiliation with HardyPress. I just think it's an ingenious idea.

hardypress.com/

Collapse
 
starbist profile image
Silvestar Bistrović • Edited

I haven't heard of HardyPress, but I will take a look at it.

I know about projects with Wordpress REST API as a backend with static page generators. This is similar approach, I think.

Thank you for sharing.

Collapse
 
cearls profile image
Chris Earls • Edited

Yes, the WordPress REST API is another option, but it isn't used with HardyPress. You build your site like you normally would (besides not being able to use every plugin) and it deploys a static version of your WP frontend. Yes, this means your templating is still done in WP. We settled on using Timber to make that part less painful. :)

upstatement.com/timber/

Collapse
 
bgadrian profile image
Adrian B.G.

I dont get it, you are the professional, you should decide which solution is the best.

Anyway you can just lay out the advantages of not having a server, which are costs and performance, low complexity and cheaper.

Collapse
 
ben profile image
Ben Halpern

I haven’t done a lot of client work but I’ve definitely had some hair-pulling interactions where they had heard about some random technology or wanted me to use the same stack some other project is using for completely arbitrary reasons.

I’ve learned how to really get this out of the way early. Lay down the law in this regard.

Collapse
 
starbist profile image
Silvestar Bistrović

That is precisely my point, which advantages, how to present them, and so on. I am a professional, and I know all that, but I am interested in how others do it to help others, not just me.

Collapse
 
bgadrian profile image
Adrian B.G.

Ah I see, then you should have started with how you solved this problem in the past, what worked and not, then others can add extra info.

Thread Thread
 
starbist profile image
Silvestar Bistrović

I am sorry for the misunderstanding.
Do you have anything to share now that you know the intention of this discussion?

Thread Thread
 
bgadrian profile image
Adrian B.G.

No sorry, I was just trying to put myself in your shoes and that is all I came up with.
I stopped doing freelancing and working with the end customer many years ago, I felt like I will live less if I kept doing it 😁.

Collapse
 
whoisryosuke profile image
Ryosuke • Edited

How do you convince a client to a static website?

I show them the benefits, whether it's the savings on hosting/bandwidth costs, or the lightning fast load times of static vs server-side. I also show them the process of adding content, and managing the behemoth.

If by the end of the short presentation they're impressed enough, we go static! If not, I lean towards more common solutions like Wordpress.

It also depends on the situation. I'm obviously assuming the site benefits from being static. If it was a dynamic community site like dev.to, I wouldn't recommend static. It's easier to recommend when there are pros to outweigh cons.

What are your favorite players?

NextJS is great for simpler projects with a few, non-dynamic pages (/about vs /blog/).

GatsbyJS is fantastic for generating larger static sites with dynamic pages. Since Gatsby loads all your content during development and runs the build process, it can generate physical static pages for anything you need. So you can take hundreds of Wordpress blog posts and generate real HTML pages.

Netlify CMS is an admin panel for static websites. It seems to be the solution to brining a human element to static sites, since most are deployed via Git using Markdown -- not the most non-dev friendly process.

I haven't tried it yet, but Jigsaw looks like a great static site option for PHP/Laravel devs.

Solutions like Gitbook, Docusaraurus, React-Styleguidist, etc -- all do an excellent job of creating a (nearly) zero-config build process for documentation. Drop a Markdown file, or run a CLI, and you've got yourself an entire documentation website, looking slick and styled.

Do you have any tricks or tips you want to share?

Make lots of boilerplates (or find/clone some). Most SSG solutions are great, but they're far from fully featured out-of-the-box. GatsbyJS for example has plugins for sitemaps, RSS, etc -- but you have to install and configure it for each project.

Having structured projects for certain situations, like documentation, make the process of rolling out another static site so much easier.

Collapse
 
mrispoli24 profile image
Mike Rispoli

Coming to this thread a little late, but I have recently had to answer this question many times over, so I decided to do a little googling and arrived here...

First, I think the discussion here went a bit off the rails. Some people went down the path of "use the right tool for the job," which is valid, but irrelevant to this thread. The situation I find myself in more often is the client is a candidate for JAMstack, but that means they are also a candidate for Wordpress, how do I convince them to buy my product? The fact is these tools both get the job done but I work faster and deliver a better product in a custom, modern tool chain. So, if you want me to build your website, then these are the tools I use, and I can give this to you with exceptional service, fewer compromises, and at a good price.

In the end, you are the product, not the website. So when I sell a client I sell myself first. So when we arrive at the question of CMS to use, the tension is between wanting ME to build it but not wanting to use something they haven't heard of.

Here's the thing, I don't do Wordpress, or joomla, or drupal ever (anymore). I don't have to make every website on earth. I spent the better part of my early career wrestling with these CMS's, and they worked well for me back then. The issue is, most clients quickly learn they don't want to mess around with design as much as they thought and are constantly calling for tutorials on how to edit the navigation or to add a tag or how to edit something I had to hard code because it wasn't something the CMS supported out of the box.

Then I got DDoS attacks on wp-login pages, databases that weren't backed up, or had to deal with a purchased template that didn't work 100% on the version of PHP they were running on some cheap hosting provider. I even had a template that used to mysteriously wipe the custom CSS for no apparent reason. I've spent hours trying to implement a design that a friend of a friend gave to a client, frustrated at the fact that I knew I could hard code it in thirty minutes if I didn't have to deal with making it totally editable in this CMS or work with X plugin.

Then I got used to version control, continuous deployment, automated testing, and at last found Contentful. I got used to an easy CDN for images that handled all sorts of manipulations as well as being able to do full re-designs later on without ever having to migrate a database or deal with hosting. Clients were actually editing their content only, they got exactly the design they wanted, for the budget they set out for. They were happy and so was I.

The fact is I don't need to build everyone's website. And if someone comes to me that really cannot live without Wordpress I'm happy to point them in another direction. But if you want my team and I to build your site it isn't going to be with Wordpress. I will work my ass off to get you exactly the design you dreamed about and will make sure that you are satisfied enough to never want to go with another developer.

There's a lot of talk about business in this thread without actually talking about a customers number one business need. A reliable, consistent developer that delivers a super fast, awesome website and can be called on over and over again to deliver updates. My advice to you is sell yourself and your company first to the client, then use whatever technology helps YOU deliver on the best possible service to that client.

After reading this thread I realized there's a million technical reasons to not use Wordpress anymore, but very few that clients understand, because what they are buying is a service not a website.

Whether or not there is immense business value in a specific site architecture is the wrong argument to have. There is immense business value in having the right person or team do the job and do it right the first time. I craft websites now that are always backed by a headless CMS but may or may not be JAMstack compatible but I constantly remind myself before every pitch the technology is irrelevant right now, make sure they buy the team first.

Collapse
 
starbist profile image
Silvestar Bistrović

Great point of view. I agree 100% about selling yourself and your services first. I don't see a problem in working with WordPress, mainly because I am rarely in charge of the backend, database, or security.

Thank you for the great response.

 
phlickey profile image
Phil

(100% sincere, no sarcasm here.)

Collapse
 
cotcotcoder profile image
JeffD

How do you convince a client to a static website?

Security :) (and no update every week like Wordpress or Joomla)
Performance is a good point too.

What are your favorite players?

I use Pelican (only because it's Python and I can read the code/develop plugin)

Do you have any tricks or tips you want to share?

Just an advice: if you never tested static sites and if you are affraid to be limited by markdown syntax, some plugin/extension allow personnal syntax to be exported in your own html.

Collapse
 
starbist profile image
Silvestar Bistrović

Thank you for your comment.

Collapse
 
colbyhub profile image
Colby Hubscher
  1. Using a headless CMS, (check out Sanity or NetlifyCMS) my clients actually feel empowered to edit the site content, knowing that they can't muck up the design or flow of the website.
  2. No plugins, core, or theme to update – saving my clients $$$ in maintenance costs.
  3. The obligatory comment about performance, security, and free hosting.

But obviously – like others have stated – use the right tool for the job (even if that means resisting the urge to use Gatsby for everything).

 
misterhtmlcss profile image
Roger K.

I"m going to argue a different way in favour of the 'JAMstack'; I hate marketing buzz, but whatevs.

This is the business value from what I can see; I'm newer to SPGs, so I could be wrong, but it's my current opinion.

Static sites do the following:

  1. They are very very fast. Most WP sites that are setup on a budget are not fast and actually require hiring the right developer, not just 'any' developer to get it to serve quickly. Not the case with SPGs, if you can write HTML, CSS and JS then you are booming; it's very hard to make a slowly served site I'd wager.

  2. Clients think they can just slap in a plugin and get a rocking; this is why wordpress is slow and they don't know who to call or what to do and they are channelling money into SEM and SEO and losing money there hand over fist; this is a huge value.

  3. The code tends to be more easily read. This means if they call me up and say 'hey Roger can you create an xyz or do xyz', often I can do it in an hour or so and it's still fast and it's still easily read by the next guy.

  4. Backups are built into the system al a github/git.

  5. Security issues are basically null. In comparison to any surface like WP, effectively using Hexo, et all is a zero risk scenario.

  6. Price. Outside of tools like Contentful and their type, the pricing is as close to $0 as you can get, which means I'm getting the lions share and that is good for me and good for my investment in good customer service.

Important caveats:

  • With Netlify and CloudCannon content management is included and no longer an issue of paying some over charging headless CMS provider extortion rates to just serve content.

  • Most SPGs come with Let's Encrypt and CDN built in and not as a value add either.

Honestly I'm very happy to have finally sold a client on a SPG and while down the road they may need to include a more diverse solution; today it'll be a great launch site for them handling so many potential scenarios without additional work on my or their part.

PS. This doesn't at all dismiss wordpress; that would be silly to say one over the other, just simply that SPGs have a ton of value and are very valid from a business use case.

Collapse
 
imthedeveloper profile image
ImTheDeveloper

I recently moved a bank from sitecore over to netlify, algolia, contentful using Gatsby and react.

The biggest selling point? Cost, security and flexibility.

Moving to jam stack offers huge potential for the future I reviewed all of the architecture patterns and with the bank wanting their content produced once but available anywhere it made real sense to move away from a tightly coupled traditional CMS.

One huge benefit of headless and the JAM stack is the incremental movement you can make.

We started out using just the static website and blog posts, product info and other content was all produced in markdown files. This got us to a point of replicating what we had without needing sitecore. It was also insanely fast without any database connections and Gatsby handling the build.

After that we added in contentful and removed the markdown where appropriate.

Collapse
 
stargator profile image
Stargator

I would argue against the "clients can also manage their content themselves". As someone who has been a part of a group for 3 years. They are techno-phobic, yet willing to trust an outside vendor to manage their website including login credentials and personally identifiable information of their users.

If they could allow themselves to not have a login feature and just post their content publicly, a static website would serve their needs greatly and would reduce the cost of having someone "maintain" it.

 
whoisryosuke profile image
Ryosuke • Edited

I'm all for empowering clients. But when you've worked as long as I have, you've probably come across some clients that will nickel and dime you for services.

The kind of client that gets upset over charges for "updating the website" when you have to spend time swapping text and images they're indecisive over (and wanted moved around 3-4x). The same client that'll often insist to do work themselves, or in some other cases, outsource labor to cheaper places, and in even worse cases -- come back with broken code from that cheaper dev and ask you to fix it.

I'm not saying every client is like this, but I will say that these are the clients who prefer "simpler" plug and play solutions like Wordpress. It's the kind of client that doesn't respect your time as a professional. The same kind of client that'll pervade any service industry (like plumbing, car detailing, etc).