Forgive the Betteridge’s Law of Headlines title, but it’s posed as a question because it’s a case of it depends.

When you’ve been blogging for a few years like me, you get regular questions from people asking how they can get started. Which is great! Some of the more intrepid or curious among you also note that my HTML source credits Hugo as the site generator, and naturally want to know if they should use it too.
My answer is always the same: think about the writing first, and the tool second. Aka, you should worry less about the tools you use, and more about getting your thoughts down. It’s easy to get mired in the intricacies of whatever CMS you’ve chosen, when really even a basic ClassicPress, Textpattern, or Micro blog would do the trick. Heck, even Mastodon has support for longform text. You can always move your words elsewhere if its something you want to pursue.
I guess then I’m really answering whether Hugo is worth considering. I can only speak for my own experience, but I’m assuming that’s what you’re here for.
I’ve been using Hugo as my static-site generator for more than a decade. It’s the only one I’ve used that has been able to scale to my now tens of thousands of posts without breaking a sweat. My budget Fedora/FreeBSD Ryzen 5700X, my NetBSD ThinkPad X230, my MacBook Air, and my aging Xeon homelab server can all preview or generate the site within 10-40 seconds, as can my cloud instance with a single vCPU core. Go, and by extension Hugo, are fast… especially when coming from the dozens of minutes spent waiting for Jekyll.
Hugo’s documentation and community are also excellent. I’ve never had to post a question in the forums because invariably someone has already asked it, and received assistance. @bep and @jmooring are worth their weight in gold with their patience and clear instructions.
But there are challenges. I won’t go into the nitty gritty of static versus server-side hosting here, save to mention that you’ll be using a text editor and running terminal commands. If that’s not your cup of tea, I get it. Textpattern would still be my recommendation for a server-side platform that’s easy to install and maintain without the “kitchen sink-itis” that comes with other modern blogging software.
Hugo’s specific challenges, at least for me, can be boiled down to Go’s somewhat confusing template syntax, and Hugo itself being a moving target at times.
Go’s templating system is not as intuitive as Liquid, which is what the Jekyll static site generator uses. This may not be an issue if you use a pre-baked Hugo theme, or only tweak existing ones for your blog. But for those looking to create their own themes, Hugo’s taxonomy system and layouts can be challenging, especially at first. It makes way more sense to me now that I’ve been learning Go and understand some of its data structures (such as slices), but there’s definitely a learning curve.
Hugo also has a reputation for breaking code changes. Newer releases regularly revise function calls and configuration syntax, so a theme you used or last updated a year ago likely won’t work today. The Hugo binary will warn you of pending changes when you rebuild your site, but this still means there’s a steeper ongoing cost to maintaining a current Hugo site than other CMS that have assumed backwards compatibility. Hugo is not a set-and-forget tool, unless you don’t update it.
In short, is a phrase with two words. I’d say Hugo is worth considering if you want to start blogging, provided you keep on top of changes, take the time to learn its syntax, and are fine with using a terminal to maintain it. I do sometimes miss having a database I can use to bulk update posts, but then I remember I’m not having to maintain a database. Irrespective of its aforementioned shortcomings, I also know that when I run that hugo command I’ll have an entire site done in the time it takes me to grind beans for a coffee. That’s worth a lot to me.
.png)

