| title | What is Checkgate? — Feature Flags Without the Round-Trip |
|---|---|
| description | Learn how Checkgate eliminates per-evaluation network latency by running the flag decision in-process, and how it compares to LaunchDarkly and Statsig. |
Checkgate is a self-hosted, open-source feature flag engine built for teams that need fast, reliable flag evaluation without sending data to a third-party SaaS vendor.
Most feature flag services evaluate flags on their servers — meaning every isEnabled() call is a network request. This introduces:
- Latency — even a fast remote call adds 5–50ms per flag check
- Reliability risk — if the flag service is down, your flag evaluation breaks
- Vendor lock-in — migrating away is painful and expensive
- Data privacy concerns — user attributes are sent to an external service
Checkgate takes a different approach: local evaluation.
- Your server runs the Checkgate control plane (a single Rust binary)
- Each SDK connects once via SSE and receives the full flag set
- All evaluation happens in-process, in memory — no network calls
- When flags change, the server pushes deltas via SSE instantly
The result: sub-microsecond flag evaluation with real-time updates and zero external dependencies at evaluation time.
Checkgate is a complete feature-flag platform, not just a toggle store:
- Multivariate flags — boolean, string, integer, and JSON flags, with per-rule return values and weighted variant distributions (60/30/10 splits) for A/B/n tests.
- Targeting & rollouts — attribute-based targeting rules (string and numeric operators), reusable segments, sticky percentage rollouts, and prerequisite flags.
- Analytics & experimentation — impression tracking, exposure dashboards, and an A/B testing beta that measures conversion goals and reports statistical significance.
- Governance — RBAC, an audit log, change-request approvals, scheduled changes, and personal access tokens.
- A full ecosystem — native SDKs (Node.js, Web/WASM, React Native, Flutter), a type-safe codegen CLI, edge evaluation, SSR/bootstrap helpers, and infrastructure-as-code via a Terraform provider and Kubernetes operator.
| Checkgate | LaunchDarkly / Statsig | |
|---|---|---|
| Evaluation location | In-process (local) | Remote HTTP / local with proprietary SDK |
| Evaluation latency | ~100ns | ~5–50ms (remote) |
| Update propagation | SSE push, <50ms | Polling / streaming |
| Self-hosted | Yes | No (or enterprise-only) |
| Open source | Apache 2.0 | Closed source |
| Vendor lock-in | None | High |
| A/B testing | Beta (goal events + significance) | Yes |
| Infrastructure as code | Terraform + Kubernetes operator | Terraform (managed) |
| Pricing | Free — your infra cost only | Per-seat / per-MAU |
- Not a managed service — you operate the server yourself (a single Docker image covers it).
- Not a full product-analytics warehouse — Checkgate records evaluation impressions and conversion events for exposure and A/B analysis, but it is not a replacement for a dedicated BI/analytics stack. (Warehouse export is on the roadmap.)
- Teams that want full control over their feature-flag infrastructure.
- Applications where evaluation latency matters — hot paths, mobile apps, edge/SSR, real-time systems.
- Organizations with data-residency requirements that prohibit sending user data to third parties.
- Companies replacing a per-seat / per-MAU SaaS flag vendor with a flat-cost, self-hosted alternative — see the migration guide.
- Developers who prefer open source and want to read, extend, and own the system.