Methods, strategies, types, recommendations of how to start running a LN node and operate its liquidity.
Updated May 02, 2024
This guide is dedicated for all those new users, that want to start learning about (LN) Lightning Network nodes and choose the right type of method for his own necessity.
Inside this guide you will find many links to many other specific guides. Please don’t ignore them. This guide is a guidance between all of them, to help you choose your best path through Lightning Network.
There’s a MISCONCEPTION around the new bitcoiners that you MUST run a dedicated public routing node in order to be able to do some LN payments.
These will be the questions we will try to answer in this guide:
- Why do you want to run a LN node?
- What type of hardware you will use?
- What type of software you could use?
- What type of node do you want to run (public or private)?
- To which node peers you should connect?
- How you will manage the channels liquidity?
WHY do you want to run a LN node?
A. You are a simple LN user that just want to pay with sats your shopping
- you will need more outbound liquidity because you will send out more
- but also some inbound in case you need to receive from friends or others.
- good peers to connect so your txs will go through easily and cheaper
- you don't need to use too much funds in your LN node, enough to cover your spending
- you do not need a public routing node just for that!
B. You are a merchant or freelancer or service provider selling online or physical products/services using LN
- you will need more inbound liquidity, that means other peers or even your own customers to open channels towards your node
- publish your node ID to your customers and encourage them to connect to your node and pay you directly, even without fees
- empty periodically your filled channels so you will have again "space" for more income payments. There are many ways to do this.
- you will need good, big channels to be able to receive as many payments you can
- you don't need to put too many funds from your side, you are the receiver not the spender
C. You are just a node operator, you are more interested in routing txs through LN
- you do not make too many payments using your node (bad, really bad)
- you will need both inbound and outbound liquidity. And a lot, so be prepared with large chunk of funds to put into your LN channels. So if you want to be a routing node with 20k sats or 1M sats... FORGET IT! Go back to sleep.
- you will need balanced channels, so you better join into PLEBNET or Lightning Network Plus
- you will need to know how to do fees channels management, so start learning
- you will need to have a strong hardware and always online node. This is not a joke!
- you can slowly enter into Lightning Pool and "rent"/auction your node liquidity. But you will need a strong node and lot of liquidity to really see some "income".
D. You are testing and learning, or a developer using a node as a base
- you need just some few inbound and outbound channels to play with.
- you do not need too much funds in it.
- is better to inform your peers that you are a temporary peer for them, your node is just a testing ground, so they will not expect you to be online or forever peer.
- you could have public and private channels, testing around.
E. You want to be "Uncle Jim Bank" for your family and friends
- you will offer BTC/LN banking services for your family and friends. That means a lot of responsibility and trust. This is not a joke, your are a real bank now.
- you will need some liquidity in both ways (in/out) to cover your "customers" needs. Remember: your node liquidity is their "water in the pipes" not their funds. So keep your pipes always filled with water.
- you can offer many "services" that you can achieve using LNDHUB, read more:
- Umbrel + LNDHUB + Bluewallet / Zeus
- Umbrel + LNBits lndhub + Bluewallet / Zeus
- LNbits Banks
- Private LN banks
- you will need to educate your customers about how to use these services, so start making your own simple web guides for them
- you want to offer LSP services for private nodes
F. "I want to earn money with my node, I want gainz, I want a certain % to give me every month", "I want to mine bitcoins with my node", "I want passive income"...
- FORGET ABOUT IT!
- This is wrong mentality, this is lazy communist mentality, get money for doing nothing. To earn money you and your node need work hard.
- A BTC/LN node is not a shit DeFi shitcoin airdrop, it's a serious thing. If you came from that "dark side" there's "no soup for you".
- Stop thinking like that and review the previous 5 points
What type of hardware you will use?
OK so after you decide which type of node you want to run, choose the hardware for it.
Keep in mind some important aspects:
- If you want to run a public routing LN node, choose a good hardware, reliable. Here I wrote a dedicated guide about BTC/LN node hardware. Choose accordingly for the type of use will have that node.
- If you want to run a private LN node, is enough just a good mobile device. Here I wrote 2 guides about using private LN nodes on mobile devices:
What type of software you could use?
Yes, many noobs just go for the easiest path, jumping into Umbrel, myNode, Citadel, Embassy etc but don’t know that later will realize that is more than just that. Yes, those are good to start learning, easy to install, but later the user will discover will want more than that and will need to migrate or start over with a new software node.
So here in this guide I listed all types of software that you can run a desktop node.
So before choosing one, think twice what are you going to do and analyze each detail.
If you just want to run a private LN node on your mobile, here are three detailed guides about all LN apps comparing them by type and features:
- Lightning Wallets Comparison Guide
- Private Lightning Network Nodes
- Getting Started Stacking Sats Noob Journey
What type of node do you want to run (public or private)?
Many new users don’t even know the existence of these terms: public or private node.
A PUBLIC LN node means:
- your channels are announced publicly on the LN graph and can be visible with all their details into any Lightning Node Explorer (mempool, amboss, 1ML etc).
- your node ID and name, IP, Tor URL are visible and can be consulted on any LN Explorer.
- your LN channels COULD DO ROUTING of others txs, that means even that if you do not do any payment for yourself, your node will still move funds, forwarding the payments coming through your node, so some channels will drain the liquidity and some other will get filled. So you will need to find the methods to keep a balance of them. As I explained in more details here.
- you will have to do intensive liquidity management for your channels if you really want your node to do routing.
- you have to keep your node 365/24/7 online (or as much is possible) so your node could have good reliability, availability and centrality and increase its ranking.
- if you want to run a public node for routing but still want to keep a certain level of privacy, you could use a Tor node (is quite bad for routing) and put it behind a VPS clearnet server, using TunnelSats.com or use multiple methods of decoy, as I explained in this guide.
- a public node could still have private channels (unannounced), but these will NOT DO ROUTING at all. If you have a good public routing node, you can still offer private channels for mobile users, in this way you are offering your public liquidity for them. As I explained in this dedicated guide.
A PRIVATE LN node means:
- your channels are ONLY unannounced (private) on the LN graph and are NOT VISIBLE on any public LN explorer. These channels use route hints in order to be able to make the payments. The route hints are provided by the public nodes to which are connected.
- your LN node is NOT VISIBLE or can be consulted on any LN explorer.
- you can make and receive payments but you will NOT BE ABLE to do routing. Routing means forwarding other nodes payments through your node.
- you do not need to do any rebalancing or channels liquidity, only in cases you need to receive or send more from a specific channel.
- you do not need to keep your private LN node online all the time. But at least every 2-3 days, open it, let it sync and even make some payments, even that are small. Have some activity, otherwise your peers could interpret it that is a dead zombie node and will force close the channel with you.
- Here you can find a dedicated guide about private lightning nodes.
To which node peers you should connect?
This is quite complex question and each one should do his own analysis based on the usage of his node.
I start building a personal list of nodes, selected manually, after monitoring them for several days. I am not saying that these nodes are the best, but I like to keep track of nodes that I would like to connect with.
I will update it periodically, based on personal and manual criteria, observing their activity on Amboss.space LN explorer and other tools. My criteria is not based on BOS scores and other stuff like that. Is more about what is their L2 of connections, what are their fees, how often they open/close channels, time keeping their node online. Think more about how will be YOUR txs routed through these nodes and later deal with having a routing node.
Also is not really necessary to connect to all from this list. But some of them are good to have them as your peers.
Another important aspect for me to choose peers is: avoid those nodes that they use exorbitant fees, just to rip off other users in fees. I don't give a shit about what others are trying to say that is race of gaining capital on LN, but for me LN is more a way to transact cheap and fast and not to "earn sats" from routing. So if a node with high exorbitant base fees and/or ppm will connect to my node, I will disable the channel or simply close it.
First of all this is a good start to connect to one of these merchant nodes from this Amboss Community of Merchants Nodes. They need inbound liquidity, so if you have a new node, you help them, they help you.
Also here is a huge list of 0 base fee nodes, curated by René Pickhardt.
Consider also looking to the Zero Base Fee Community on Amboss and all other Amboss Communities.
The list order is random, no preferences.
WATCHED NODES by category
The list order is random, no preferences, is just a reference and orientation.
LSP nodes (Liquidty Service Providers)
These are very important sources, because are well connected, their centrality is good and are dedicated to have a strong reliability and large liquidity. Not all are using low fees, but in general yes., because they think in large volume of txs.
These nodes need liquidity on both sides of the channel, so is good that you watch them and keep that balance when is neeed. Adjust the fees and min/max HTLC accordingly or even make a circular balance between other of your channels.
- ⚡ IBEX - dynamic fees | 3M min chan | note 6/10 | LATAM exchange LSP
- ⚡ Voltage Flow - 1/500 policy | 1M min chan | note 8/10 | good liquidity
- ⚡ CoinGate - 1/1 policy | 1M min chan | note 8/10 | huge node
- ⚡ LNBig - low dynamic | no min chan | note 8/10 | various liquidity nodes
- ⚡ BitcoinVN - 1/dynamic | 6M min chan | note 8/10 | Vietnam exchange / LSP
- ⚡ FlashSats - 0/0 policy | 5M min chan | note 8/10 | offers inbound LSP
- ⚡ LNServer - 0/0 policy | 2M min chan | note 8/10 | offers inbound LSP
- ⚡ Megalithic - 0/0 policy | 1M min chan | note 9/10 | offers inbound LSP
Exchanges / swaps nodes
People start using more exchanges that offer withdrawals over LN. And they need liquidity and you can be a bridge between exchanges and users. Your bank customers also want to buy more sats, using your bank channels.
These nodes need more balance on their side. So you will need to push more the sats on their side, so they can have more liquidity for users withdrawals. These are good pair to circular rebalance with the merchant channels.
- ⚡ Boltz - 1/dynamic ppm | 1M min chan | note 8/10 | swap node
- ⚡ ZigZag - 1/1 policy | no min chan | note 7/10 | swap node
- ⚡ FixedFloat - 1/1 policy | 10M min chan | note 7/10 | swap node
- ⚡ Deezy - 0/dynamic | 400k min| note 8/10 | swap node
- ⚡ River - 0/dynamic | 10M min | note 8/10 | big exchange node
- ⚡ CoinOS - 1/1 policy | no min chan | note 6/10 | swap node
- ⚡ Kraken - 0/dynamic | 1M min chan | note 7/10 | exchange node
- ⚡ NiceHash - 1/dynamic | 500k min chan | note 7/10 | exchange node
- ⚡ Bitfinex - 1/1 policy | 2M min chan | note 7/10 | various nodes
- ⚡ Biscoint.io - 0/0 policy | no min chan | note 7/10 | Brazilian exchange
- ⚡ SouthxChange - 0/dynamic | no min chan | note 7/10 | exchange node
- ⚡ Kollider - 1/dynamic | 2M min chan | note 7/10 | derivative trading exchange
Wallet provider nodes
If you want to have direct fast routes and interoperability between many mobile users, you should be well connected with these nodes. This will offer to you and your “bank customers” a fast and reliable route to transact with other users over the Lightning Network.
These nodes need liquidity on both sides, or watch the behavior of your own users, maybe you have more saviors than spenders. The idea is to not clog them, remaining without liquidity on the side is needed.
- ⚡ Blixt - 1/dynamic ppm | no min chan | note 8/10 | LSP provider, LN wallet
- ⚡ Olympus LSP - dynamic | 1M chan size | note 9/10 | LSP provider, LN wallet
- ⚡ WoS - 0/dynamic | no min chan | note 7/10 | large coverage of users
- ⚡ Acinq - 1/dynamic | no min chan | note 7/10 | Phoenix wallet provider
- ⚡ Breez - 0/dynamic | 3M min chan | note 7/10 | Breez wallet provider
- ⚡ Alby - 1/1 policy | 4M min chan | note 7/10 | Alby browser wallet, various nodes
- ⚡ Strike - they have many nodes, good as peer for vast network connected
- ⚡ Zebedee Nodes - Gaming wallet nodes, they need liquidity / you need connections
Merchants / Services providers nodes
This is also an important source, to offer to your bank customers direct channels with those merchants they use more. So if you already know which merchants they want to use, open channels with those. Not just that you offer liquidity for your own bank users, but also for external LN users that are paying to those merchants. Check on BTCMap those merchants near by and ask them if they need liquidity. Then open a channel with their node.
These nodes need more balance on your side of the channel. Why? Because you will have more users paying towards them. So they are a good pair to circular rebalance the channels from exchanges.
- ⚡ Fold - 1/dynamic ppm | no min chan | note 7/10 | satsback, card provider
- ⚡ LNMarkets - good peer, lots of txs, provide trading on LN
- ⚡ Moon - 1/1 policy | no min chan | note 7/10 | card provider, good connections
- ⚡ OSHI - 0/dynamic fees | note 6/10 | too many disabled ch | oshi.app
- ⚡ Merchants Community - various merchant nodes in Amboss Community
Rings of Fire, Liquidity swaps, NodeRunners Communities
This is a special category, is optional. It is good to start with, when you do not have so many channels and you want your node to became more “visible” in the network. Don’t use it excessively because not all nodes in there are good for your needs. Many of them just want “passive income” and trying to suck sats from your node fees.
These nodes will always offers you already balanced channels, using the ring tools. That’s a good thing to start, you will have liquidity on both sides. Also if you are new into running a node, the RoF community is very helpful and will give you the best advice to configure your node.
Telegram groups: Rings of Fire, Satoshi Radio, Plebnet or LightningNetwork.Plus - amazing web to join to rings with other plebs.
See the section about LN nodes tools in this awesome list with things you can do on LN and use them to tune-up your node.
Other good nodes
This is the category of nodes that you can expand when your node is already well connected and you want to reach the outer limits of the LN Galaxy. Are nodes that you want to help, nodes that are from other “LN Banks” and you want to be connected and are not from any of previous categories.
But be aware, select them with caution and watch them during the initial period. If are not well worth it, close them. Nodes that are not moving any sats during a certain period are totally useless.
- ⚡ RecklessApotheosis - 0/dynamic ppm | no min chan | note 8/10 | plebnet node
- ⚡ BlackBox - 0.4/dynamic fees | 5M min ch| note 8/10 | both sides mover, good peer
- ⚡ Hades - 0/dynamic ppm | 5M min ch | note 8/10 | interesting node, low fees
- ⚡ Satstacker - 0/1 policy | 1M min chan | note 8/10 | well connected, collaborative
- ⚡ South Korea - 0/dynamic ppm | no min chan | note 7/10 | plebnet node
- ⚡ Rust-eze - 0/dynamic | 1M min chan | note 7/10 | promising pleb node
- For mobile private LN nodes, here is a community list of good nodes, that accept private channels.
How you will manage the channels liquidity?
A - For a public routing node
Before we begin, bookmark this excellent special guide “Configuration of a routing node” - By LND team. This is a MUST read and use guide.
A good 3-5-10-20M sats channel (or even bigger) with one of these will be good to have for your new node. Do not open a channel for less than 3M sats. Will be useless. Channels smaller than 3M sats will be mostly ignored for routing.
Also the cost of opening and closing small channels is too high to run them. When you open a channel are many “reserves” and hidden costs that noobs usually don’t know or ignore them but then later they are crying “why my 20k sats channel balance is going down"?”. You have the anchor channel reserve, you have the channel reserve, you have the commitment fees that can vary in time and affecting your channel available sats, you have the HTLC min/max that your peers can set.
So in order to avoid all this trouble, just open min 3M sats channel and forget.
Choose wisely a peer and also check on LN Node Insight simulating a channel with each of them and see what advantages will bring to your node.
Once you open the channel, depending on your outbound/inbound liquidity available, loop-out something like 30-40-50 % of that liquidity to balance a bit the newly created channel. That will help to get the grip. You can use a temporary external LN wallet or just swap into onchain. Those loop out funds will help you later to open more channels.
To loop in / out sats, you can use:
- Boltz.exchange - simple, fast, swaps from LN to onchain
- Swap Market - based on Boltz code, include other non-custodial swaps
- Deezy.io - simple fast, LSP, swaps LN - onchain
- CoinOS.io - web wallet, onchain, LN, swaps, custodial or non-custodial
- ZigZag.io - simple fast, swaps from LN to onchain (be aware, sometimes they run out fast of liquidity)
- FixedFloat - simple fast, swaps from LN to onchain
- Integrated swaps into RTL and Thunderhub (are using Loop and Boltz)
- RoboSats (onion link) - fiat <--> LN and LN <-->onchain swaps, totaly private, Tor only
- DiamondHands - run by a Japan node runners community
- Submarine Swaps - run by Alex Bossworth (LND dev)
- Here I wrote a dedicated guide about LN submarine swaps
For a public routing node this is the most important chart report: YOUR TOTAL liquidity report (screenshot from Thunderhub node management web app)
As you can see, it is not so important to keep a perfectly balance on each channel, but on your total inbound and outbound liquidity. A disruption into this balance, let’s say you have 60% outbound and 40% inbound total liquidity, could affect your routing directly, will have less payments routed. Why? Because if you do not have enough “space” to receive and forward a payment, your node will reject the route.
You can adjust this lack of liquidity with:
- >make swap in or out into a channel that is drained or too much filled
- using Lightning Terminal Loop
- using LNDg tool for automatic adjusting liquidity
- adjust the fees for specific channels to push the liquidity in the side where is needed most
- adjust the min or max HTLC amount (valve system)
- optimize your node centrality - very good guide
Here in this guide also you can find more node management tools, automated scripting, balancing.
General recommendations for public routing nodes:
- try to keep as much is possible a channel open. But if the channel is quite small and you see you have a good amount of forwarding through it, close it and open a bigger one.
- keep your node as much reliable is possible. Your node reputation depend on that.
- do not run a Tor only node if you want to do routing. Routing means PUBLIC. Tor only nodes will not be reliable and reachable 100% and that will affect not only you but everybody else in the network.
- If you want privacy before routing, DO NOT RUN A PUBLIC NODE!
B - For private LN nodes
In this category is quite simple and all depends of your usage of these private LN nodes.
Basically you need to find some good public nodes to which to connect:
- to provide you lowest fees possible
- accept to open smaller channels
- accept to open private channels and keep them open as long you have activity
- provide good and fast payment routes
Even with these, try to avoid opening smaller channels, like 20-50-100k sats. A regular 1-5M sats channel will be ok, enough to provide you a good amount of payments.
Also have prepared 2-3-4 channels on your mobile private node. Why not just 1? Because you never know when your peer is offline, or do not have good routes and also with at least 3 channels you can use the MPP (multi-part payment), splicing your payment amount in smaller parts and send through multiple routes. This aspect will not just increase your privacy but also is a more efficient way to use your channels and the network.
For Blixt LN node I wrote on their docs page multiple use case scenarios and channels management.
For Breez, Electrum LN node I wrote some scenarios for liquidity here.
For Zeus, recently it was introduced the embedded LND node so users can run the Zeus node in their mobile devices.
- Here I wrote a getting started guide for Zeus LN node
- Here I wrote an advanced guide for Zeus LN node
- Read more documentation how to use their integrated LSP and node here.
For Phoenix I would suggest the following scenario:
Phoenix is opening a channel slightly bigger than what are you depositing, I could say with a 10% more. And for each channel opening is charging a 3000 fee. If you start spending from that channel, do not spend it all, because they will close it. If you leave some sats in the channel and make another deposit from another LN wallet, but no more than the size of the channel, the sats will fit into that already open channel and will not be opening a new one. So no more 3000 sats fee.
If you deposit from an onchain address, then it will open a new channel even if you already have an almost empty channel.
I suggest to make first time a bigger deposit, and like that opening a bigger channel. Spend from that channel slowly until you reach the balance of 1% of it. Then refill. until 99%. And so on. In that way you keep that channel open and pay less fees.
Also keep in mind that after you open a bigger channel and do not want to open more channels, by mistake, disable the option “automatic on-the-fly channel creation” from Settings - Payment options and fees. Activate that option only when you want to open new channels. Remember, if you do not have enough “space” to receive, the payment will be failed, with that option disabled.
If you run your own desktop node at home, you could also use:
- LNBits lndhub
- BoltCard lndhub
- Lightning Terminal LN accounts
- BTCPay LN bank plugin
- Alby Hub, self hosted with "uncle Jim" feature
So you practically can be your own LSP for smaller amounts of LN accounts from your own node, without revealing your hole liquidity, node info and access. You can use for these accounts Zeus or Bluewallet or BoltCard mobile apps and even Alby as browser extension.
CONCLUSION
As you can see there are many ways to use Lightning Network, not just “Run a Umbrel node”, and the users should choose wisely the path they want to follow, that could serve better their own needs and use cases.
I hope this guide make the path more clear for you, the new LN user trying to understand all these terms about routing, nodes, liquidity and don’t know from where to start.
I know that maybe you expected to see in this guide more technical explanations, charts, graphs etc but that is not the goal of this guide. The goal is for you to start using your brain, read all the links inserted (that will lead you to many other detailed guides), expand your knowledge. Some aspects are not even mentioned here, not to hide from you or distract you, but to make you read more those links inserted.
Is not a simple journey, I know, because I was in the same situation like you, struggling to understand all these aspects. But I was persistent in reading, testing, learning multiple methods, listening a lot of video demos, talking with experts, devs.
Now I just want to give you back my accumulated knowledge, to help you find the right information for each use case. Sometimes many users are rambling around trying complicated things and methods, without knowing that also exist simple solutions, that sometimes are not so well presented in the community of doesn’t have a big marketing budget to be shilled all around.