Skip to main content

Preston So

Product strategist. Developer advocate. Book author. Off-the-beaten-path traveler. Language nerd. Transit lover. Fantasy mapmaker.

9 min read · May 15th 2019

Enterprise Gatsby: How to Reduce Your Digital Total Cost of Ownership (TCO) with Gatsby

In recent years, there has seemingly been no shortage of disastrous digital rollouts and replatforms in the content management systems (CMS) landscape. Despite the fact that there have never been more CMSs available on the market, both open-source and proprietary, digital stakeholders are concerned — and rightly so — by questions surrounding cost, staffing, performance, and security.

In 2017, for instance, the federal government of Canada, saddled with a dysfunctional multimillion-dollar build of Canada.ca, downsized the project after running into obstacles with Adobe Experience Manager. A similar story this year involving the botched build of Hertz’s new web presence has unleashed recriminations and brought to the forefront an increasingly nagging question: Are these traditional CMS replatforms truly worth it, or are they financial boondoggles of questionable value?

Even when a replatform or redesign is successful, issues abound in sustaining an open-source or proprietary CMS as the underlying foundation of a successful digital ecosystem in this day and age. While traditional CMSs like Drupal and WordPress still maintain enthusiastic and passionate communities, the depletion of support for community plugins and deepening concerns about CMS performance and security have led to much hand-wringing in open-source CMS communities.

Fortunately, Gatsby, when leveraged in conjunction with a range of affordable services and downright inexpensive infrastructural and content management solutions, including Gatsby’s own Preview, can offer a way forward that can help reduce your digital total cost of ownership (TCO) and increase your digital return on investment (ROI) so you can focus on what matters most: building experiences that keep apace with your user’s expectations.

In this blog post, we’ll dive into some of the ways in which Gatsby is optimal for the enterprise, whether you’re a developer championing Gatsby to the skeptical stakeholders in your organization or a marketer seeking the winning solution to your performance and preview woes. For additional background, our Director of Marketing, Linda Watkins, also has an excellent guide to talking about Gatsby with your team or your customers.

Cost: Hosting Gatsby sites is much more affordable

In today’s CMS landscape it is no longer a rarity to hear of annual contract value (ACV) amounts that stretch into seven figures, well past the realm of affordability for most businesses. Products such as Adobe Experience Manager, Sitecore, Acquia Cloud, and WordPress VIP have increasingly focused more on the enterprise market as their cloud hosting platforms begin to show their age.

What these million-dollar platform subscriptions have in common is the upward pressure on traditional server resources. As pageviews inevitably increase, the amount of expense needed to spin up new instances and load balancers becomes prohibitive. A simple spike in traffic due to a yearly event or viral social media post can lead to an eye-watering hosting bill next month due to the additional scale required.

Static hosts such as Netlify have found success in recent months due to their emphasis on painless builds and deployments, seamless integrations with tools like Gatsby, and hosting for mere pennies on the dollar thanks to a built-in content delivery network (CDN). Now that Netlify and others offer features such as free SSL, deploy previews, and AWS Lambda integration, they have become compelling rivals to traditional stalwarts like Acquia, Pantheon, and WordPress VIP.

As an anecdotal example, I was pleasantly surprised that I was able to set up an architecture consisting of a Drupal site and Gatsby site in less than an hour thanks to Netlify’s free tier. Since I don’t need custom DNS for my Drupal site, I used Pantheon’s free tier for my Drupal hosting and found that configuring Pantheon took longer than on Netlify. Within less than an hour, I had free Drupal and Gatsby hosting and a custom domain for my Gatsby site, all at an unbeatable price of zero dollars.

Enterprise users seeking a quick way to limit their TCO may look to hosting products such as Netlify and capabilities we are introducing to Gatsby Cloud for more affordable hosting. By decoupling monolithic CMS architectures like Drupal and WordPress, enterprise users can easily reduce their monthly hosting bill by multiple orders of magnitude, especially for less mission-critical web properties like brochureware and microsites.

Staffing: CMS developers are hard to find

One of the most common complaints I hear from enterprise users of CMSs is the paucity of available affordable developers to build out the digital architecture of their dreams. While there has always been downward pressure on the number of available Adobe and Sitecore developers due to their proprietary nature, the decline in the prevalence of Drupal and WordPress developers has reflected a larger trend.

JavaScript is quickly winning out as the only language that can operate shared code across both client and server (in a paradigm known as universal or isomorphic JavaScript), and it has seen incredible growth in the web development community. In every year since 2014, JavaScript and Java have edged out other programming languages as the most commonly used on GitHub. Meanwhile, PHP fell from third to fourth, and other previously popular languages like Ruby are seeing even steeper declines.

As university programs and coding bootcamps continue to swap previously intermixed curricula with JavaScript-only pedagogies, JavaScript adoption has continued to widen. In Stack Overflow’s yearly Developer Survey, JavaScript has posted increases every year since 2016, when it was voted most popular language by 55.4% of respondents. In 2019, that percentage was 67.8%. While these data only paint part of the picture, it is clear that JavaScript has emerged as the runaway victor when it comes to languages that cross the server–client divide.

Many enterprise websites are stymied by the perceived scarcity of developer resources, whether it is due to a lack of specialized expertise or budgetary restrictions that limit available compensation. Today, it is no secret that PHP developers in the Drupal and WordPress communities command hourly rates and salaries that far outpace those of their JavaScript counterparts in the React and Vue.js communities. Glassdoor statistics support this, with PHP developers paid on average $93,987 per year, while JavaScript developers are compensated on average $72,500 per year.

For enterprise users, hiring more affordable developers with a flexible, more modern skill set is one of the best ways to reduce TCO. In fact, many consultancies in the Drupal and PHP landscape are beginning to shore up their JavaScript and React resources to prepare for a coming wave of client work that places a high premium on interactive user experiences but refuses to pay more for the same expected end result.

Performance: Optimization at every page interaction

Enterprises today expect fast performance at every stage of page interaction: first load, moving between pages, and dynamic updates and transitions that occur after page load. Traditional CMSs like Adobe, Drupal, Sitecore, and WordPress have long struggled with performance bottlenecks at each step of this process, whether it is due to an oversized server bootstrap, overly stale cache, a lack of prefetching across linked pages, or an unwieldy Ajax or JavaScript API for frontend interactions. As new users continue to acquire smartphones at a high rate in low-bandwidth network areas, these concerns become even more paramount.

Gatsby solves all of these problems thanks to its focus on rendering server-side markup first and foremost before handing off all asynchronous rendering to a React application initialized client-side. With its prefetching, Gatsby users can rest assured that any link click will lead to an instantaneous render rather than a roundtrip back to the server. Moreover, because React controls all state after the page has loaded, the management of interactive functionality becomes a much simpler consideration. Our very own Dustin Schau recently penned a deep dive into what makes Gatsby’s performance so incredible.

These performance benefits also advantage other important enterprise priorities such as accessibility. In a market segment where a site’s user experience can lead to outsized consequences on a company’s bottom line, accessibility is an essential component of any CMS architecture. Due to its rigid emphasis on server-side rendering and progressive enhancement, Gatsby is accessible out of the box, and with the help of libraries such as @reach/router, its focus management and keyboard interactions are second to none. Our Head of Learning, Marcy Sutton, recently wrote about our commitment to accessibility and released Gatsby’s first Accessibility Statement. In addition, an A11y Talks episode last week about accessibility in the headless CMS landscape touched on of Gatsby’s most distinctive accessibility features and how they compare to prevailing traditional CMS approaches.

Enterprise Gatsby users can benefit immediately from two key sets of advantages built into Gatsby and its infrastructure: delivery optimization and payload optimization. Because Gatsby sites, at their foundation, are static sites, they can be deployed without a server and cached in a content delivery network (CDN) that reduces the time for assets to arrive on a user’s device. In addition, thanks to performance enhancements on Gatsby itself, such as progressive image loading and responsive image handling, as well as CSS inlining, Gatsby sites tend to be much faster than their traditional CMS counterparts.

If you are still skeptical about Gatsby’s enterprise-readiness when it comes to performance, consider the steady stream of success stories that we have already seen coming from Gatsby users, including organizations like Youfit, which saw a 22% increase in organic traffic and a 60% increase in lead conversion rates after improving performance and accessibility outcomes, and SendGrid, whose knowledge center halved page load times thanks to Gatsby’s performance optimizations. IBM, too, perhaps the ultimate enterprise technology company, found striking Lighthouse score increases of up to 89 points in every category during a new site build for the Carbon Design System project, and Harry’s, while implementing the site for their new women’s brand Flamingo, discovered that pages were loading five times faster than before thanks to Gatsby.

Security: CMS vulnerabilities are increasingly frequent

As a longtime member of the Drupal community, I vividly remember the first several days and weeks after Drupalgeddon, one of the worst vulnerabilities to afflict Drupal sites and a wake-up call for the Drupal community when it came to security. Even today, security issues are announced at a steady pace in the Drupal and WordPress communities, and developers are often pressed into service in the wee hours of the morning to patch their sites before they are hacked into oblivion. These are expensive and highly disruptive sources of abject terror in any enterprise organization.

The notion of active servers being accessed by nefarious actors is entirely foreign to Gatsby and other JAMstack technologies that traffic solely in static assets and content cached in CDNs. There are no active databases to infiltrate and certainly no administrative CMS interfaces located on the same domain as a Gatsby site. These two components of security illustrate how effective Gatsby is in this area: one can’t hack Gatsby because there’s nothing running to hack, and one can’t hack Gatsby’s data because CMSs and data layers are located elsewhere.

This brings us to one of the most compelling benefits of decoupled CMS architectures that exemplify the separation of concerns between content production and content display. Because Gatsby sites start out as static assets and simple markup, they are effectively flat manifests of content uncoupled from their production and storage. In fact, a Gatsby build could feasibly occur with content sourced from a locally hosted or firewalled CMS inaccessible to the wider web — and attackers would be none the wiser!

For enterprise users, some of the contextual administration capabilities available in CMSs such as in-context editing and layout management have led to a tight coupling between content and its display that leads directly to vulnerabilities like the one that decimated so many Drupal sites in late 2014 (and again in 2018). By utilizing a content mesh architecture (see Sam Bhagwat’s article series for an excellent treatment of these approaches) with many arbitrarily interchangeable services, enterprises can not only force threats to disperse to a variety of discrete services but also lock down their content management and data access entirely.

At Gatsby, Preview is just the beginning

Earlier this year, Marisa Morby, our Product Manager, announced a closed beta for our Gatsby Preview product, which will make it painlessly easy for content marketers and editors to preview their content in context on a Gatsby site with as little overhead or latency as possible. With initial support for content management workflows using Contentful, we are hard at work to enable rollouts on a variety of CMSs across the spectrum of solutions. Sign up for the waitlist for open beta today!

Many of us at Gatsby have enterprise CMS backgrounds and deeply understand the problem of fast deployments and fast content updates, both of which have a considerable impact on a company’s internal developer experience and content staleness. Add in the volatile elements of embargoed content and regulatory compliance, and the picture becomes more complicated still.

Fortunately, Gatsby is currently hard at work on supporting incremental builds for Gatsby Cloud, which will allow changes in large content corpuses (i.e. 100,000 or 1,000,000 content nodes and higher) to be reflected in partial Gatsby rebuilds that only incorporate content that changed since the last deployment. Previously, Gatsby builds would require a full import of all content, leading to prohibitively long deployment times for sites relying on gargantuan and highly relational content sources.

Conclusion: Gatsby is enterprise-ready

At Gatsby, we’ve heard many questions about whether Gatsby is truly ready for the enterprise. The short answer is yes or very soon, depending on your requirements. After all, Gatsby currently lacks many of the features that end-to-end CMSs routinely tout such as contextual editing and layout manipulation. At the moment it also doesn’t have some of the features needed to support compliance in the evolving digital landscape such as HIPAA, FEDRamp, and others, but they are on our radar.

Nonetheless, Gatsby makes up what it lacks at the moment in the administrative experience with benefits in other ways that make it a uniquely compelling choice for enterprises seeking an ambitious developer-first solution paired with sensible defaults for performance and security. If you are seeking a decoupled CMS solution that includes a fast-off-the-shelf frontend and security benefits that stand up to any traditional CMS currently in vogue, Gatsby should be at the top of your list of considerations.

We’re just getting started! In addition to our ongoing beta for Gatsby Preview, soon to be opened up to the general public in open beta (join the waitlist today!), we’re hard at work on features we know will be relevant not only to Gatsby’s early adopters but also enterprise users who require fast deployment times in addition to live high-fidelity preview and quicker turnarounds in content production workflows.

You’ll soon be hearing much more from us on this, and we’re excited to share it all with you!

Special thanks to Sam Bhagwat, Jim Ettig, Michelle Gienow, Jason Lengstorf, Kyle Mathews, Marisa Morby, and Linda Watkins for their feedback during the writing process.

Tagged with accessibility, ecommerce, enterprise, performance, securityView all Tags

Enjoyed this post? Receive the next one in your inbox!

Docs
Tutorials
Plugins
Blog
Showcase