Finding out the most popular headless Node.js CMS
I’m often asked, “What’s the recommended headless Node.js CMS?"
I generally respond, “That depends on your requirements."
But, in many situations, the requirements aren’t quite clear. And, in such cases, we resort to the wisdom of the crowd by trying to find out the most popular headless Node.js CMS. And, in situations of lack of information, it generally makes sense. If a framework is popular, there’s a greater chance that:
- It will have atleast the basic issues sorted out.
- It will be maintained actively for longer.
- Furthermore, it will be easier to find developers familiar with it.
But, I often wonder how to effectively determine the popularity of a framework or library. What metrics matter? In what situations? I’m using this blog post as an opportunity to delve deeper into this.
The Contenders
The following are the major Node.js based headless CMS frameworks that I know of & have considered for this comparison:
- Sanity CMS
- Strapi.js
- Directus
- Payload CMS
- Keystone.js
NPM Package Download Stats
The “Weekly Downloads” stat published for every public npm package on npmjs.com has been one of the most commonly used metrics to determine packages' usage. The fact that there are multiple websites (e.g., - this, this, and this) to compare these download stats shows how commonly this metric is used to evaluate the popularity of the libraries.
This metric can definitely be gamed and has its own limitations. Despite that, it is one of the best available indicators of the actual use of a library.
From the above chart:
- The weekly download numbers for Strapi and Sanity CMS are substantially higher than the rest of the CMS frameworks.
- Both Sanity CMS and Strapi have been around for longer than the last couple of years (when their upward trend seems to be picking up in the graphic above). So, I would not attach much meaning to the faster pace of their upward trend in the chart above.
Github Stars
Github stars for the code repositories in the dev community are akin to the Instagram likes in the social media world. While it doesn’t reflect actual usage, it is a decent indicator of the dev community’s awareness & sentiment about a framework.
Observations from the above chart:
- The star count for Strapi is the highest. Also, the trend of growth for it seems to be the most positive among the frameworks.
- The steep growth for Payload CMS is promising; it would be interesting to see how it moves in the next year or two.
- Sanity CMS’s low star count in comparison to its high download numbers is puzzling.
# of NPM Releases Every Quarter
While this metric is not an indicator of a framework’s popularity or usage, it can effectively be used to weed out libraries that aren’t actively being managed (even if they are currently popular).
From the chart above, it appears that all the frameworks are being actively developed and released frequently. It isn’t feasible to draw any conclusions from the difference in the number of quarterly releases.
SimilarWeb Monthly Visits to the Framework Website
The monthly traffic to the framework’s website can be a useful indicator of:
- The framework’s usage (visits to the website for the framework documentation)
- Interest of the dev community in the framework (visits to explore the framework options)
Unfortunately, there is no reliable way to know the actual traffic stats for the websites. So, we rely on the SimilarWeb stats:
From the chart above:
- Visits to Sanity CMS’s website appear to be the highest, followed by the visits to the Strapi website.
- The higher visits to the Sanity and Strapi websites are generally in sync with the high npm downloads.
Social Clout
Like the Github stars metric, the frameworks' social authority can be used to quantify the dev community’s awareness & interest in the frameworks. From the large number of social networks & metrics available to the public, I chose the following:
- Devs on Twitter love Directus! That, combined with its Discord member count, indicates the dev community’s liking for Directus.
- Like with Github stars, the lack of Sanity CMS’s social clout is interesting given its high usage.
- Strapi’s social following across Reddit, Twitter and Discord reflects its awareness among developers.
Conclusion
The various metrics in the sections above can be categorized into two groups to measure a CMS framework’s popularity : usage & community awareness.
- Based on the downloads and website visits, Strapi and Sanity CMS appear to be the most used frameworks.
- Based on the social metrics, Strapi and Directus appear to be the frameworks that draw developers' interest the most.
Back in 2017, I started working as an independent web performance specialist for React frontends. Over the years, a few of the teams where I worked for long were kind enough to let me help solve their CMS issues.
Fast forward to now, I have worked with multiple teams to choose the right CMS framework and then setup + implement the chosen solution.
To discuss your CMS specific pain points, email me at punit@tezify.com.