Static websites have become incredibly popular, powered by generators like Hugo, Jekyll, Gatsby, Next.js, Eleventy, and Astro. They offer unparalleled performance, security, and hosting simplicity. But there’s one feature that seems fundamentally at odds with the “static” nature: comments.
Static sites are, by definition, pre-built HTML files served directly to users. There’s no server-side processing, no database queries at request time. This architecture provides:
Yet comments require dynamic behavior:
This creates a fundamental tension that third-party services exploit.
Several commercial services have emerged to solve this problem:
| Service | Pricing (2025) | Key Features |
|---|---|---|
| Disqus | Free (with ads) / $11+/mo | Large network, heavy tracking |
| Commento | $10/mo | Privacy-focused, lightweight |
| Hyvor Talk | $6-19/mo | Feature-rich, good spam filter |
| Fastcomments | $5-50/mo | Real-time, lightweight |
| Utterances | Free | GitHub-based, requires account |
| Giscus | Free | GitHub Discussions-based |
Your comments are valuable content. With third-party services:
Commercial comment systems often:
What seems like $10/month becomes significant at scale:
With your own system:
Third-party widgets often:
By the end of this book, you’ll have the knowledge to build a comment system that:
┌─────────────────────────────────────────────────────────────┐
│ YOUR STATIC WEBSITE │
│ │
│ ┌──────────────────────────────────────────────────────┐ │
│ │ Blog Post │ │
│ │ │ │
│ │ [Your amazing content here...] │ │
│ │ │ │
│ └──────────────────────────────────────────────────────┘ │
│ │
│ ┌──────────────────────────────────────────────────────┐ │
│ │ 💬 Comments Section │ │
│ │ ┌────────────────────────────────────────────────┐ │ │
│ │ │ 👤 Alice · 2 hours ago │ │ │
│ │ │ Great post! Really helped me understand... │ │ │
│ │ │ 👍 12 💬 Reply │ │ │
│ │ │ └─ 👤 Bob · 1 hour ago │ │ │
│ │ │ Thanks Alice! I had the same experience │ │ │
│ │ └────────────────────────────────────────────────┘ │ │
│ │ │ │
│ │ ┌────────────────────────────────────────────────┐ │ │
│ │ │ ✏️ Add a comment... │ │ │
│ │ │ [ ] │ │ │
│ │ │ [Submit] │ │ │
│ │ └────────────────────────────────────────────────┘ │ │
│ └──────────────────────────────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────┘
│
│ API Calls
▼
┌─────────────────────────────────────────────────────────────┐
│ YOUR COMMENT BACKEND │
│ │
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────────────┐ │
│ │ API │ │ Spam │ │ Database │ │
│ │ Gateway │──│ Filter │──│ (Your choice) │ │
│ └─────────────┘ └─────────────┘ └─────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────┘
To get the most from this book, you should have:
Don’t worry if you’re not an expert in all areas—we’ll explain concepts as we go.
Each chapter includes:
In the next chapter, we’ll dive deep into understanding what makes comment systems challenging and explore the fundamental decisions you’ll need to make.
Your journey to comment independence starts now.
Navigation: