Why I disabled comments on my websites

In early 2020, I disabled comments on every website I run. Here is how and why I did it.

Most comments are crap

On All About Berlin, readers share their experience with Berlin's notoriously unpredictable bureaucracy. On Wiser Coder, they confirm that 5 year old solutions still apply, or provide better ones. Some ask tricky questions that highlight flaws in my answers. These comments are invaluable, but they're also very rare.

Some readers thank me for helping them. It's nice to feel that your work is appreciated. I appreciate those comments in private, then delete them. They clutter up the page, and do not help other readers.

Then there are the bad comments. Some are stupid, and others are downright nasty. I've been called a crook and threatened with legal action before. Thankfully, I don't dabble in political commentary.

At last, there's good ol' spam, which represents the bulk of the comments. Spam filters handle most of them, but enough get through to make manual moderation a necessity. Auto-approving comments is just calling for trouble.

Put simply, comments are not an exciting novelty anymore. They're just a thing I have to check every few days. They're work.

Comments are hard

If you care at all about performance or privacy, comments can be hard to implement properly. On a simple website, they can easily become the most complex part of the frontend.

First, there's performance. Comments require a bunch of extra database queries, and make cache busting more difficult. On All About Berlin, disabling comments reduced my page load time from 900ms to 300ms, and greatly simplified caching. Now, most of All About Berlin is static, so I can cache everything without much thinking.

Second, there's privacy. If you want to outsource the job, you can use a third-party solution like Disqus or Facebook Comments. Those platforms are cleverly disguised ad networks, and I would rather avoid them. I do not feel comfortable loading those party scripts on my websites, or forcing users to sign in before they can comment.

I was happy with WordPress' commenting system and Akismet's excellent spam filter, but Craft CMS does not offer equivalent solutions. Verbb's Comments plugin ($50) did a reasonably good job, but the documentation was lacking, and the keyword-based spam filter wasn't enough.

I just want to build websites, man!

None of these challenges are insurmountable, but they are still a barrier to putting content on the internet.

I build websites because it's fun, and it should remain fun. Comments are a chore to implement, and a chore to moderate. They are not calm technology, and they do not bring joy, so they got axed. Running a website in Germany is burdensome enough as it is.

Email works better

My personal website does fine without comments, but All About Berlin depends on them. At the end of every page, I added a paragraph that invites readers to email me.

Emails trickle in at about the same rate as comments before them, but spam comments are completely gone. Reader questions and feedback are delivered straight to my inbox. I can triage, file and search those emails just like any other.

However, what I like the most about emails is their conversational nature. My answers leave the door open to followup questions and updates.

So far, I am happy with this decision.