unsubbed.co

Commento

Self-hosted communication & messaging tool that provides comments widget that just works.

Self-hosted commenting, honestly reviewed. No marketing fluff, just what you get when you run it yourself.

TL;DR

  • What it is: Open-source (MIT) commenting widget — think Disqus, but self-hosted, ad-free, and without the tracker payload [README].
  • Who it’s for: Bloggers, small publications, and static site owners who want reader comments without handing audience data to a third party [4].
  • Cost savings: Disqus “Plus” runs $14/mo; Commento’s own cloud runs $10/mo or $99/year; self-hosted on a small VPS costs effectively nothing [pricing page].
  • Key strength: Genuinely tiny footprint — 44MB RAM and 142MB disk in production, a statically linked Go binary with PostgreSQL [5]. Endorsed by Mozilla Foundation and used by the Swedish Red Cross, JetBrains, and Arkansas Times [homepage].
  • Key weakness: The GitHub repository is listed explicitly as a “mirror” and carries no recent commit metadata. The project’s active development pace is unclear, and third-party reviews are sparse — a yellow flag for anyone betting their production stack on it.

What is Commento

Commento is a drop-in commenting system you embed in your website with a couple of lines of HTML. Readers can post comments, reply in threaded Reddit-style threads, upvote or downvote contributions, and log in via OAuth (GitHub, GitLab, Twitter, Google) or single sign-on — or comment anonymously without any account at all [README][homepage].

The pitch is simple: Disqus is free the way a shopping mall is free. You’re not the customer; your readers are the product. Disqus injects megabytes of third-party scripts, runs trackers, and as of the README’s writing date, the company acknowledged it wasn’t GDPR-compliant [README]. Commento charges you a flat fee and tracks nothing.

Under the hood it’s a Go binary backed by PostgreSQL. Go’s static linking is the reason the server footprint is so small — there’s no runtime to install, no Node, no JVM [1][2]. You pull one binary (or one Docker image), point it at a Postgres instance, and it runs. The primary codebase lives on GitLab; the GitHub repository at github.com/adtac/commento is explicitly described as a mirror [README].

At 3,784 GitHub stars it’s a respectable project, though not in the same league as more recently active alternatives. The project was built with a clear, narrow scope: a fast comments widget that doesn’t spy on your readers.


Why people choose it

The comparison that comes up in every Commento discussion is Disqus, and the case against Disqus is straightforward. Jeff Noxon, a technical blogger who documented switching his Hugo static site to Commento, put it plainly: Disqus is free but you pay with lost privacy, third-party trackers, and page bloat [3]. He ran a self-hosted Commento instance specifically to escape that trade-off.

The homepage testimonials echo the same themes consistently. Victor Zhou, a software engineer, called it “orders of magnitude lighter than Disqus.” Paweł Urbanek, a web performance consultant, migrated in 10 minutes and cut page weight by half. Kev Quirk, a cybersecurity specialist, described it as making his site never slow down. Owen Williams, a UX manager, noted it’s “finally a decent alternative to Disqus that isn’t just selling user data” [homepage].

Those testimonials come from real, named people with public professional profiles — not the kind of anonymous five-star reviews you pad a SaaS listing with. That’s worth something.

The privacy angle has teeth beyond marketing. Commento runs entirely on infrastructure you control. When a reader comments, their data hits your server, not a third-party CDN with opaque data-sharing agreements. For European publishers dealing with GDPR cookie consent banners, or anyone whose audience has grown privacy-aware, that matters [README][4].

The SaaSHub analysis [4] frames it as the right choice for “bloggers, small to medium-sized websites, and projects that prioritize user privacy, site performance, and want a commenting solution without intrusive advertisements or tracking.” That’s an accurate read of the target.


Features

From the README and website:

Core commenting:

  • Nested threaded replies (Reddit-style) [homepage]
  • Upvotes and downvotes [homepage]
  • Sticky comments — pin an important post to the top of a thread [homepage]
  • Markdown formatting: bold, italics, links, blockquotes, bullet lists, code [homepage]
  • Anonymous commenting (no account required) [homepage]
  • OAuth login: GitHub, GitLab, Twitter, Google [5]
  • Single sign-on (SSO) [README]
  • Email notifications [README]

Moderation:

  • Lock threads [homepage]
  • Remove off-topic comments [homepage]
  • Enforce timeouts [homepage]
  • Automatic spam detection (Akismet integration) [README][5]
  • Email moderation workflow [pricing page]

Migration and setup:

  • Import from Disqus — upload your Disqus data export [homepage]
  • Embed with two lines of HTML; the dashboard generates the snippet [homepage]
  • CSS customization for matching your site’s look [homepage]
  • Docker deployment with docker-compose [5]
  • Data export [pricing page]

What’s notably absent:

  • No built-in analytics dashboard
  • No reaction system beyond upvotes/downvotes
  • No image uploads in comments
  • No real-time live updates (comments appear on reload, not via WebSocket push)
  • OAuth providers are limited to the four supported; no LDAP

The feature surface is intentionally lean. This is not a community platform. It’s a comments widget.


Pricing: SaaS vs self-hosted math

Commento Cloud:

  • 30-day free trial, no credit card required [pricing page]
  • $10/month or $99/year flat for up to 50,000 daily pageviews [pricing page]
  • Per-domain subscription — one site per subscription [pricing page]
  • Enterprise plans for higher traffic: contact sales [pricing page]
  • Payment: credit card only (Visa, Mastercard, Amex). No PayPal, no cryptocurrency, no ACH [pricing page]

The pricing model is clean: flat fee, not per-comment or per-pageview within the limit. No per-operation anxiety.

Self-hosted (MIT):

  • Software: $0
  • VPS: $4–6/month on Hetzner or Contabo covers Commento’s actual resource needs comfortably (44MB RAM in production [5])
  • PostgreSQL: bundled in docker-compose or use a managed database

Disqus for comparison:

  • Free tier: exists, but includes ads and full tracking
  • Plus: $14/month (ad-free, but still Disqus’s servers and data model)
  • Pro: $33/month
  • Business: $83/month

Concrete math for a blogger:

Running a single blog with comments on Disqus Plus to avoid ads costs $14/month — $168/year. Commento Cloud costs $10/month — $120/year. Self-hosted Commento on a $5 Hetzner VPS: $60/year for the server, which likely hosts other things too, making the marginal cost of Commento itself closer to zero.

Over three years: Disqus Plus ≈ $504. Commento Cloud ≈ $360. Self-hosted ≈ negligible VPS cost. The savings aren’t dramatic for a single-site blogger, but the privacy and control argument doesn’t require the math to be dramatic.


Deployment reality check

The deployment story is genuinely simple, and that simplicity is a product of the Go binary architecture [1][2].

What you actually need:

  • A Linux VPS or existing server — 44MB RAM and 142MB disk for the containers [5]
  • Docker and docker-compose
  • A PostgreSQL instance (bundled in the default docker-compose setup)
  • A reverse proxy for HTTPS — Traefik works well with Commento and is documented [5]
  • An SMTP server for email notifications (optional but recommended)
  • A domain or subdomain for the Commento server

The Docker image lives on GitLab’s registry, not Docker Hub: registry.gitlab.com/commento/commento:latest [5]. This is worth knowing before you write your compose file. The GitHub repository is a mirror.

The techroads.org deployment guide [5] is the most practical walkthrough available. It documents a Traefik-fronted setup with a colocated PostgreSQL container, covering the COMMENTO_POSTGRES connection string, OAuth provider configuration, and subdomain routing. The author notes the instance ran comfortably within a 1GB server shared with a Ghost blog — the resource footprint is that small.

Realistic time estimates:

  • Technical user with Docker experience: 30–60 minutes to a working instance
  • Non-technical founder with a guide: 2–4 hours including domain and SSL setup
  • Complete Linux beginner: budget an afternoon or pay someone to do it once

What can go sideways:

  • The “latest” Docker tag from GitLab is fine for getting started but risky long-term — note which version you pull so you can roll back [5]
  • Commento runs one instance per domain; if you run multiple blogs, you need multiple subscriptions on cloud or multiple self-hosted instances (they can share a VPS)
  • There is no official Docker Hub image — the GitLab registry path confuses people expecting the standard hub.docker.com flow [5]
  • Third-party reviews are thin. The SaaSHub listing [4] has zero user reviews posted. That’s not a death knell, but it means you’re doing this with less community guidance than you’d get with more actively maintained alternatives

The elephant in the room: project activity. The GitHub repository’s metadata returned no commit date, no fork count, and no license data in our scrape — because it’s explicitly a mirror, not the source [README]. The primary development happens on GitLab. How active that development is right now is unclear from the available data. For a production system you’ll maintain for years, verify the GitLab repository’s commit history before committing to Commento.


Pros and cons

Pros

  • True MIT license. Not “source available,” not “fair-code,” not “open core with commercial strings.” MIT. You can self-host, fork, embed in your product, or build on it commercially without a licensing agreement [README][4].
  • Extremely small server footprint. 44MB RAM, 142MB disk in Docker [5]. Runs on any VPS alongside other services without dedicated resources.
  • Go binary architecture means no runtime dependencies. No Node, no Python, no JVM. Upgrades are replacing a binary [1][2].
  • Privacy by design. No ads, no tracking, no data resale [README]. GDPR-friendlier than Disqus by construction.
  • Disqus import built in. Migration is documented and supported — upload your export, done [homepage].
  • Endorsed by real organizations. Mozilla Foundation, Swedish Red Cross, JetBrains, Arkansas Times are listed as users on the homepage [homepage]. These aren’t random logos.
  • Anonymous commenting. Reducing sign-up friction keeps participation rates up [homepage].
  • Flat pricing model. No per-comment or per-pageview penalties within the tier [pricing page].
  • Akismet spam detection. Out of the box, not a plugin [5].

Cons

  • Unclear project maintenance status. GitHub is explicitly a mirror; GitLab is primary. Third-party reviews are nearly nonexistent. SaaSHub shows zero user reviews [4]. This is the biggest risk for a production deployment.
  • No image uploads in comments. Text and markdown only. For some communities this is a dealbreaker.
  • Per-domain subscription on cloud. Running three blogs means three subscriptions [pricing page].
  • Cloud payment: credit card only. No PayPal, no crypto, no ACH. Exceptions for enterprise only [pricing page].
  • Very limited third-party ecosystem. Unlike Disqus, there’s no plugin library, no CMS integrations built by third parties. You’re integrating with HTML snippets and documentation.
  • No real-time comment updates. Comments appear on page reload, not live. Minor for most blogs; notable for high-traffic live threads.
  • Docker image on GitLab registry, not Docker Hub. Adds a wrinkle to automated setups and monitoring [5].
  • Sparse community. Few Stack Overflow questions, few forum threads, few tutorials beyond the official docs and the techroads.org guide [3][5].

Who should use this / who shouldn’t

Use Commento if:

  • You run a blog or small publication on any platform (Hugo, Ghost, WordPress, static HTML) and want comments without Disqus’s tracking payload.
  • Privacy is a genuine editorial value, not just a marketing line — your readers are GDPR-aware or privacy-conscious.
  • You’re comfortable with Docker deployment or willing to pay someone to set it up once.
  • You want the lightest possible comments footprint — 44MB RAM is genuinely minimal [5].
  • You need a flat-fee cloud option under $10/month with no per-action pricing.

Skip it (consider Remark42 or Giscus instead) if:

  • You need an actively maintained project with a public commit history you can inspect. Remark42 has a clear GitHub presence and recent releases; Giscus is built on GitHub Discussions and has active development.
  • You want real-time comment delivery or WebSocket-based live threads.
  • You need image upload support in comments.
  • Your community management requires granular moderation permissions across a team.

Skip it (stay on Disqus or go Commento Cloud) if:

  • You have no technical experience and no one to help with a server setup.
  • You need a completely hands-off managed service.
  • Your site gets more than 50,000 daily pageviews and you haven’t talked to Commento’s enterprise sales team.

Skip it (evaluate Isso or Schnack) if:

  • You want an even simpler self-hosted option with a smaller dependency tree and don’t need SSO or OAuth.

Alternatives worth considering

  • Remark42 — the most actively maintained self-hosted alternative. React-based frontend, Go backend, supports multiple sites from one instance. More complex to configure but better documented and clearly maintained. Worth comparing commit history directly before deciding.
  • Giscus — uses GitHub Discussions as the storage backend. Free if your audience is GitHub-familiar. Zero infrastructure to maintain. Works for technical blogs; wrong fit for general audiences who don’t have GitHub accounts.
  • Utterances — older GitHub Issues-based system. Simpler than Giscus but even more GitHub-dependent.
  • Isso — Python/SQLite, very lightweight, self-hosted only. No OAuth, no SSO, but minimal footprint and simple configuration.
  • Disqus — the incumbent. Easiest integration, biggest network effects, no server to manage, free tier available. You pay with reader data and page load weight [README][homepage].
  • Hyvor Talk — commercial hosted alternative to Disqus. Privacy-focused, no ads, $5/month. Not self-hostable, but viable if you want managed without Disqus’s model.

For a non-technical blogger who wants to escape Disqus, the realistic shortlist is Commento vs Remark42 vs Giscus. Giscus if your audience is technical. Remark42 if you want the most feature-complete self-hosted solution. Commento if the footprint and simplicity are the primary criteria — but verify the GitLab project’s current activity before committing.


Bottom line

Commento delivers exactly what it promises: a fast, privacy-respecting, ad-free comments widget with a binary that fits inside a small VPS alongside everything else you’re running. The architectural choices are sound — Go binary, PostgreSQL, MIT license, Docker-native. The testimonials on the homepage are from real people with verifiable professional backgrounds, not filler. Mozilla Foundation endorsement is not nothing.

The honest concern is maintenance trajectory. Third-party reviews are nearly absent, the GitHub repository is a mirror with no commit metadata, and the community support surface is thin. Whether the GitLab project is actively maintained is something you should verify directly before deploying to production. If you check the GitLab commit log and find recent activity, Commento is one of the cleanest solutions in this space. If the commit history has gone cold, Remark42 is the safer bet.

For a non-technical founder who has someone technical to handle the setup once: $5/month VPS, 45 minutes of work, no Disqus, no trackers, no ad network injected into your readers’ browsers. That’s the deal.

If the deployment is the blocker, that’s exactly what upready.dev handles for clients — one-time setup fee, you own the infrastructure.


Sources

  1. Self-hosting · Commento — Official self-hosting documentation. docs.commento.io. https://docs.commento.io/getting-started/self-hosting/
  2. Self-hosting · Commento (GitLab mirror) — Commento GitLab documentation. commento.gitlab.io. https://commento.gitlab.io/docs/getting-started/self-hosting/
  3. Jeff Noxon“Using Commento with Hugo: An experiment with self-hosted comments” (Mar 17, 2019). jeff.noxon.cc. https://jeff.noxon.cc/tags/tech/
  4. SaaSHub“Commento reviews. Is Commento good?”. saashub.com. https://www.saashub.com/commento
  5. Techroads.org“Building a self-hosted Commento system for embedding comments with Docker and Traefik”. techroads.org. https://techroads.org/building-a-self-hosted-commento-system-for-embedding-comments-with-docker-and-traefik/

Primary sources:

Features

Authentication & Access

  • Single Sign-On (SSO)