Eleventy vs Hugo vs Astro: the SSG cluster
Eleventy, Hugo, and Astro are three very different answers to the same question: how do you generate static HTML efficiently? Hugo is written in Go and optimized for build speed at scale — it can process tens of thousands of pages faster than most Node.js-based generators. Astro takes a component-first approach, letting you write React, Vue, Svelte, or vanilla JS components that ship minimal JavaScript by default. Eleventy takes the most “HTML-first” position: no default frontend framework, template-language agnostic, and a build output that is as close to the HTML you write as possible. Zach Leatherman's background in web fonts and web standards shows in the tool's ethos — Eleventy cares about the quality of the output in a way that framework-first generators sometimes do not. All three are excellent tools for developers. None of them are designed for a content creator who wants to publish a post by clicking a button rather than committing a Markdown file.
When developer-time investment is worth template-language flexibility
Eleventy's template-language flexibility is a genuine differentiator. Being able to use Liquid for one collection, Nunjucks for another, and plain JavaScript for data processing in the same project gives teams the freedom to adopt the tool incrementally rather than committing to a new paradigm all at once. The web.dev documentation site (Google's web standards reference), the W3C website, and Tailwind CSS's documentation have all used Eleventy in some form, which is evidence of the quality it produces at scale. But that quality comes from developer effort. Eleventy does not generate a newsletter subscription form or a Stripe checkout page; those are engineering tasks. For a solo content creator or a small team without a frontend developer on staff, the investment in learning Eleventy's template layer, wiring external services, and maintaining a build pipeline is time that comes out of writing and audience-building. The question is always whether that trade-off makes sense for your specific situation.
Out-of-the-box CMS vs build-your-own Eleventy: time-to-launch math
A realistic Eleventy setup for a content creator who wants blog, newsletter, and commerce involves: choosing and forking a community starter (30 minutes), customizing the templates (2-4 hours depending on design requirements), setting up Netlify or Vercel deploy (30 minutes), integrating a headless CMS for non-git editing (2-4 hours), wiring a newsletter service (1-2 hours), and adding Stripe payments via serverless functions (4-8 hours). That is a reasonable estimate of 10-19 hours of setup work before the first post. Ongoing maintenance — Node.js updates, dependency security patches, template debugging, build failures — adds 1-3 hours per month for a moderately complex site. VeloCMS's time-to-first-post is under 5 minutes. Monthly maintenance is zero beyond writing content. The math favors Eleventy when the setup work is done once and amortized over years, the person doing it enjoys the work, and the site does not need newsletter or commerce. It favors VeloCMS when the priority is shipping content quickly and maintaining momentum without engineering overhead.