Inbound Liquidity. Lightning Node operators and users love it and hate it. It is possibly the most annoying part about starting a Lightning Node or a mobile wallet that gives users direct control of channels (such as Eclair). This article will help demystify acquiring and keeping quality inbound liquidity so that you can be confident that any funds you send will succeed.
We will be starting with what I believe is the easiest and cheapest way to get inbound liquidity, and then move to more complex ways. Each method will include pros and cons. Not every method will be addressed, because there is a good chance that I do not know about all of them.
First, let’s cover a few basics. What is inbound liquidity in the Lightning Network? Put, inbound liquidity is the number of sats a given channel can receive from another lightning node. Your node’s inbound capacity is the inbound liquidity of all channels. Also, “inbound” and “remote” liquidity mean the same thing. “Outbound” and “local” are also synonymous.
Now to answer the question you are here for:
How do you get inbound Lightning Liquidity?
The first and arguably easiest way to get inbound liquidity is to ask for it. You can ask for some channels on Twitter, various telegram groups, or Reddit communities. Or you can ask any friends that run routing nodes.
Pros: No cost to you. Nothing to lose by asking.Cons: Low rate of success. Sometimes a kind soul will open, but not always.
The big issue with this one is that those running successful routing nodes (the ones you want to have inbound liquidity from) usually don’t have an incentive to lock up their capital in a channel with a node with little if any reputation on the network. In their mind, their capital would likely be better put to use by opening a channel to another well-established node.
That said, there are kind node runners out there willing to lend a helping hand. This is especially true if the node you are bootstrapping will be used for business. Those who run routing nodes usually like opening channels to businesses because they can collect fees at a higher frequency due to the routing flow of liquidity going from their outbound side.
The easiest method
Probably the easiest method. When you open a channel, all funds are on your side. Meaning, you cannot receive it on that channel. But, as you spend funds out of that channel (maybe for a meal or gift card), the funds move to the remote site organically.
This means, you guessed it, you can receive payments! This movement of liquidity in a natural way can help you jumpstart your node’s power to receive payments. Next time you want to eat, check out something like bitrefill.com and spend some sats on a gift card. You will get inbound liquidity in return automatically.
After you ask the community/friends/family for some liquidity, the next thing to do is bootstrap some liquidity yourself. This method will cost you a few sats in fees to external services, but you’ll get quality inbound almost immediately.
I personally like this strategy because it does not require me to talk to anyone. The only downside is it requires you to have some sats first. You do this by taking all the capital you plan to use when opening channels and opening the largest channel you can to one of the biggest nodes on the network. ACINQ, Bitrefill, others.
After the channel is open, you use a submarine swap such as Lightning Labs’ Loop-Out service, to pull back your funds to your on-chain wallet while leaving the channel open. This shifts funds from the outbound side (your side) to the inbound side. Now you have liquidity and have your funds back on the chain so you can open smaller channels. After the smaller channels are open, you can use a circular rebalance to move funds from the large inbound channel to your other channels, route permitting.
Some run successful high-reputation nodes that have capital sitting on the sides. They want to open channels to other nodes but do not do it for free. You can buy inbound from them, or what is also called “leasing liquidity.” There are currently two primary ways to do this. One on LND, and one on C-Lightning. Depending on what node implementation you are running you would use one or the other. Let’s start with LND.
For LND, you would use Lightning Pool by Lightning Labs. Lightning Pool is a blind auction system that matches a bid side and an ask side to create channels. Someone who wants inbound liquidity would post a bid, and someone who wants to sell liquidity would post an ask. The one posting the bid would also offer a certain amount in a percentage as payment to the peer that matches with them. This is a blind auction system, and you do not know who will match you.
Getting Liquidity with Voltage
At Voltage, we make getting liquidity on lightning pool easy with our Flow product. Any LND node on the network can use Flow to order inbound liquidity from the Lightning Pool marketplace. More information can be found here.
For C-Lightning, there is Liquidity Ads. Liquidity Ads is a peer-to-peer channel liquidity feature that allows you to choose who you accept inbound liquidity from. You still have to pay the one opening to you, but you know who it is beforehand.
These are not the only methods; they are the most common and the ones I use the most. You can get creative with your own way of getting inbound, based on your own goals and use cases. There is not a one-size-fits-all option with Lightning, but hopefully, these four methods will help get you started.