Research/Lightning

LND vs CLN vs Eclair: Comparing Lightning Network Implementations in 2026

Feature-by-feature comparison of the three major Lightning implementations: LND, Core Lightning, and Eclair, and when to use each.

bcSatoruOct 3, 2026

The Lightning Network runs on three major full-node implementations: LND, Core Lightning (CLN), and Eclair. Each is written in a different language, maintained by a different team, and optimized for a different set of use cases. Choosing the right one depends on whether you are running a routing node, building a wallet, operating as a Lightning Service Provider, or integrating Lightning into a product.

This article compares LND, CLN, and Eclair across language and architecture, BOLT feature support, plugin models, hardware requirements, and developer ecosystem. It also covers LDK as an SDK-based alternative and explains when each implementation is the best fit.

Who Builds What

Each implementation has a dedicated maintainer with a distinct philosophy about how Lightning should work.

  • LND is maintained by Lightning Labs, written in Go, and accounts for roughly 90% of public Lightning nodes. Its dominance comes from being the default in node-in-a-box solutions like Umbrel and RaspiBlitz, combined with a mature gRPC API and extensive documentation.
  • CLN is maintained by Blockstream, written in C, and known for its plugin architecture and low resource footprint. CLN was the first implementation to ship production-ready BOLT12 offers and splicing.
  • Eclair is maintained by ACINQ, written in Scala on the JVM, and powers the Phoenix mobile wallet. ACINQ also operates one of the largest routing nodes on the network, making Eclair the most battle-tested implementation for high-throughput routing at scale.

Language, Architecture, and API

The language each implementation is written in shapes its performance characteristics, deployment model, and the type of developer it attracts.

DimensionLNDCLNEclair
LanguageGoCScala (JVM)
Primary APIgRPC with REST proxyJSON-RPC (stdin/stdout)HTTP API
Extension modelMiddleware interceptorsPlugin system (any language)Akka actor model, eclair-kmp for mobile
Database backendsbbolt, etcd, PostgreSQLSQLite, PostgreSQLSQLite, PostgreSQL
Clustering / HAetcd-based HANot nativeFull cluster mode (frontend/backend split)
Minimum RAM~2 GB~512 MB~1 GB (JVM overhead)
GitHub stars~8,200~3,100~1,300

LND's gRPC API generates client libraries for Go, Python, JavaScript, and other languages automatically from protobuf definitions, which is one reason it dominates the developer ecosystem. CLN's JSON-RPC plugin system is more flexible: plugins can be written in any language and communicate over stdin/stdout, making CLN the most modular implementation. Eclair's Akka-based actor model handles concurrent channel operations efficiently, and its eclair-kmp (Kotlin Multiplatform) library powers the Phoenix mobile wallet on both iOS and Android.

Why language matters: C gives CLN the smallest memory footprint: it runs comfortably on a Raspberry Pi with 512 MB of RAM. Go makes LND easy to compile and deploy but more memory-hungry. Scala/JVM adds garbage collection pauses but gives Eclair access to the mature JVM ecosystem and Akka's concurrency model, which is critical for high-throughput routing.

BOLT Feature Support in 2026

The BOLT specification defines the Lightning protocol, but implementations adopt new features at different paces. As of October 2026, the three implementations have diverged significantly on key features.

FeatureLND v0.21CLN v26.06Eclair v0.14
BOLT12 offersExperimental (behind flag)Production (first to ship)Production (with blinded paths)
SplicingNot supportedEnabled by defaultFinal standardized version
Dual-funded channelsNot supportedSupported (first to ship)Supported
Simple taproot channelsProduction (feature bits 80/81)Not yet supportedPrivate channels only
Onion messagingForwarding only (v0.21)Full supportFull support
WatchtowerBuilt-inVia pluginVia external tools
Anchor outputsDefaultDefaultRequired (legacy removed)
Liquidity adsNot supportedSupportedSupported

The most significant divergence is BOLT12. CLN and Eclair have shipped production-ready BOLT12 offers with blinded paths for receiver privacy, while LND only supports onion message forwarding and keeps offers behind an experimental flag. Since LND represents roughly 90% of public nodes, this creates a real interoperability gap: BOLT12 offers sent across the network may fail when they hit an LND node that does not forward onion messages (versions prior to v0.21).

Splicing is the other major divide. Both CLN and Eclair support on-the-fly channel resizing via splice-in and splice-out, which lets node operators add or remove funds from a channel without closing it. LND does not yet support splicing, forcing operators to close and reopen channels when capacity needs change.

LND: The Market Leader

LND's dominance is a function of time, tooling, and distribution. It was the first implementation to reach production quality, and its gRPC API made it straightforward to build applications on top of. Lightning Labs has also shipped Loop (for submarine swaps), Pool (a liquidity marketplace), and Taproot Assets for issuing tokens on Lightning.

Strengths

  • Largest ecosystem of third-party tools, tutorials, and integrations
  • Simple taproot channels graduated to production in v0.21, making channel opens and closes indistinguishable from regular taproot transactions on chain
  • etcd-based high availability for operators who need redundancy
  • Native SQL migration continues to modernize the storage layer, replacing the legacy bbolt key-value store with PostgreSQL
  • Built-in watchtower support for monitoring counterparty fraud attempts

Weaknesses

  • No production BOLT12, splicing, or dual-funded channels: three of the most important features for the network's evolution
  • Higher memory and storage requirements than CLN
  • The update_fee vulnerability disclosed in August 2026 (fixed in v0.18.3-beta) highlighted risks in fee negotiation logic
  • Middleware interceptors are less flexible than CLN's plugin model

Core Lightning: The Plugin Powerhouse

CLN takes a modular approach: the core node handles channel management and gossip, while everything else lives in plugins. This design keeps the binary small and lets operators customize behavior without forking the codebase.

The plugin architecture

CLN plugins communicate with the node over JSON-RPC via stdin/stdout. They can hook into events (channel opens, payment attempts, gossip updates), register new RPC commands, and modify node behavior at runtime. The commando plugin enables remote node management authenticated via runes: a macaroon-like system for delegating fine-grained permissions to remote clients.

The v26.06 release made the xpay payment engine the default, replacing the legacy pay command. xpay provides improved pathfinding and routing performance, while xkeysend modernized spontaneous payments with cutting-edge routing support.

Strengths

  • First implementation to ship production BOLT12, splicing, and dual-funded channels
  • Lowest resource footprint: runs on a Raspberry Pi with 512 MB RAM
  • Plugin system allows arbitrary customization without core modifications
  • Splicing enabled by default lets operators resize channels without closing them
  • Cryptographic payment proofs for BOLT12 offers via the createproof command

Weaknesses

  • Only runs on Linux and macOS, limiting deployment options
  • Smaller ecosystem of third-party tools compared to LND
  • No native clustering or high-availability mode
  • A critical security incident in August 2026 required emergency patches and a 14-day source code embargo, affecting an estimated 33,000 channels holding roughly 3,750 BTC
August 2026 CLN security incident: AI-generated vulnerability reports uncovered critical flaws in CLN's channel management code. Operators were told to install emergency binaries or take nodes offline. The v26.06.8 patch (September 22, 2026) fixed three confirmed bug classes, including a channel-closing flaw that could cost operators funds. As of October 2026, attackers are actively targeting nodes still running older versions.

Eclair: Built for Scale and Mobile

Eclair occupies a unique position: it powers both enterprise-grade routing infrastructure and the leading self-custodial mobile wallet. ACINQ operates one of the largest routing nodes on the network using Eclair's cluster mode, while the Phoenix wallet runs Eclair's Kotlin Multiplatform library on end-user devices.

Cluster mode

Eclair's cluster architecture splits a single logical node into frontend and backend servers. Frontend nodes handle gossip, routing table syncing, and BOLT 1/7 messages (the CPU-intensive and bandwidth-heavy work). The backend node manages core channel state and BOLT 2 messages. Frontend nodes are stateless and can be stopped or added without affecting operations, as long as at least one frontend remains available. This is the only implementation that supports horizontal scaling natively.

Phoenix and the single-channel UX

Phoenix pioneered the concept of a single-channel mobile wallet using splicing. Instead of managing multiple channels with different peers, the wallet maintains one channel to ACINQ's node and resizes it via splice-in and splice-out as needed. Phoenix was also the first wallet to ship full taproot channel support, achieving roughly a 20% reduction in on-chain fees for channel opens and closes.

Strengths

  • Only implementation with native cluster mode for horizontal scaling
  • Battle-tested at scale: ACINQ's routing node processes high volumes daily
  • Standardized splicing support, BOLT12 with blinded paths, dual-funded channels, and liquidity ads all shipped in v0.14
  • eclair-kmp provides a production-proven path to mobile Lightning
  • Zero-fee commitments using v3/TRUC transactions reduce cost for channel partners

Weaknesses

  • Smallest developer community: roughly 1,300 GitHub stars versus LND's 8,200
  • JVM dependency adds operational complexity and memory overhead
  • No built-in watchtower: operators must integrate external monitoring
  • Scala expertise is less common than Go or C, narrowing the contributor pool

LDK: The SDK Alternative

LDK (Lightning Dev Kit) is not a node implementation but a Rust library that lets developers build custom Lightning nodes. Maintained by Spiral (a subsidiary of Block, Inc.), LDK powers an estimated 25% of all Lightning Network volume as of mid-2026 through integrations in Cash App, Lightspark, and Alby Hub.

The core library (rust-lightning) provides over 900 methods covering full Lightning functionality, while LDK Node wraps this into roughly 30 API calls for simpler integrations. In April 2026, Spiral announced LDK Server: a full Lightning daemon built on LDK with native support for splicing, BOLT12, async payments, zero-fee commitments, and full LSPS specification support out of the box.

LDK supports BOLT12 offers natively and has production splice-out support, putting it ahead of LND on protocol features while offering more flexibility than any standalone node implementation.

Security Track Record in 2026

All three implementations faced security incidents in the August-September 2026 timeframe, a reminder of the operational burden involved in running Lightning infrastructure.

  • CLN (August 2026): AI-generated vulnerability reports led to emergency patches and a 14-day source code embargo. Three bug classes fixed in v26.06.8, with active exploitation confirmed by October
  • LND (August 2026): an update_fee exploit allowed channel initiators to manipulate fees, potentially leaving counterparties with unrecoverable funds. Fixed in v0.18.3-beta
  • Eclair (September 2026): three peer-triggered vulnerabilities in channel closures, splicing, and on-the-fly channel funding could redirect balances toward miners or strand funds mid-transition. Fixed in v0.14.3

These incidents highlight a structural challenge: running a Lightning node requires active security monitoring, prompt patching, and operational expertise regardless of which implementation you choose.

Decision Matrix: Which Implementation to Choose

The right implementation depends on your use case. Here is a framework for deciding.

Use caseRecommendedRationale
Hobbyist routing nodeLNDLargest ecosystem of guides, tooling, and community support. Node-in-a-box solutions ship with LND pre-configured
High-volume routing / LSPEclairNative cluster mode, proven at scale by ACINQ, PostgreSQL backend for production databases
Resource-constrained hardwareCLNRuns on a Raspberry Pi with 512 MB RAM. Smallest binary and lowest resource usage
BOLT12 and splicing todayCLN or EclairBoth ship production BOLT12 and splicing. LND does not yet support either in production
Mobile wallet developmentLDK or Eclair (eclair-kmp)LDK provides embeddable Rust libraries with Swift/Kotlin bindings. eclair-kmp powers Phoenix on iOS and Android
Custom application integrationLDKFull control over storage, networking, and key management. No separate daemon process required
Plugin-heavy customizationCLNJSON-RPC plugin system supports any language. Most extensible architecture
Taproot channels nowLNDOnly implementation with production simple taproot channels (feature bits 80/81)

Network Statistics and Market Share

As of mid-2026, the public Lightning Network comprises roughly 17,400 nodes, 41,000 channels, and approximately 4,900 BTC in public channel capacity. These numbers are down from a peak of around 20,700 nodes in 2022, reflecting both network consolidation and the growth of private channels that do not appear in gossip data.

LND runs on approximately 90% of public nodes, largely because node distribution platforms default to it. CLN accounts for roughly 5% of public nodes. Eclair holds less than 1% of public nodes, though ACINQ's routing node handles disproportionate volume. LDK, being an embedded library rather than a standalone node, does not appear in node counts but powers an estimated 25% of total Lightning volume through integrations in major applications.

For a broader analysis of where the Lightning Network stands today, see The State of the Lightning Network in 2026.

The Interoperability Challenge

Lightning's multi-implementation model was designed to prevent monoculture, but the feature gap between implementations creates real friction. The most pressing issue is BOLT12: CLN, Eclair, and LDK all support it, but LND's 90% node share means most of the network cannot originate or terminate BOLT12 offers natively.

Splicing creates a similar divide. A CLN or Eclair node can resize channels on the fly, but if their peer runs LND, both sides are stuck with the traditional close-and-reopen workflow. Dual-funded channels face the same compatibility barrier.

These divergences slow adoption of new protocol features and create operational headaches for Lightning Service Providers who must support peers running different implementations. Some LSPs run multiple implementations simultaneously to ensure compatibility, adding to their operational burden.

The Operational Burden of Running a Lightning Node

Regardless of which implementation you choose, running a Lightning node requires ongoing work: channel management, liquidity balancing, fee estimation, security patching, and monitoring. The August-September 2026 security incidents across all three implementations underscore that this is not a set-and-forget activity.

For users who want Lightning compatibility without the operational complexity, protocols like Spark provide an alternative approach. Spark eliminates the implementation choice entirely: there are no channels to manage, no liquidity to balance, no gossip to sync, and no security patches to monitor. Users hold self-custodial Bitcoin that can send and receive Lightning payments through Spark Service Providers, with instant settlement and no node infrastructure to maintain.

Not either/or: Spark includes native Lightning support, so users can pay BOLT 11 invoices and receive Lightning payments without running any node software. The complexity of choosing and operating a Lightning implementation is abstracted away entirely.

Looking Ahead

The three implementations are converging on a shared feature set, but at different speeds. LND's eventual adoption of BOLT12 and splicing will close the most critical interoperability gaps, while CLN and Eclair continue to push the protocol forward with features like async payments and advanced PTLCs. LDK's growing volume share suggests the future may be more about embedded Lightning libraries than standalone node daemons, especially for mobile and application use cases.

For developers building on Lightning, the Spark SDK offers a simpler integration path: a single API for Bitcoin and Lightning payments without the need to choose, deploy, or maintain any Lightning node implementation. For those who do want to run their own node, the decision comes down to priorities: LND for ecosystem breadth and taproot channels, CLN for modularity and protocol-leading features, and Eclair for scale and mobile.

This article is for educational purposes only. It does not constitute financial or investment advice. Bitcoin and Layer 2 protocols involve technical and financial risk. Always do your own research and understand the tradeoffs before using any protocol.