After just a few weeks I think I’ve come to the conclusion that running a Lightning Node at this point in time cannot be done profitably. If I’m wrong, please reply.
I have read all of the articles and watched all of the videos I can find. Some ones I’ve found most useful are:
- Four Tips for Running a Profitable Lightning Network Node by Erin Malone
- Building a Lightning Network Node for Routing – Parts 1-3
- How to run a Bitcoin Lightning Network node by BTCsessions
- Start and Manage a Bitcoin Lightning Node
- Bitcoin Lightning Network Node Umbrel/Thunderhub Tutorial by Ian Majors
- How to choose the right Lightning Network Channels for your Bitcoin node by Jonathan Levi
- Imbalance measure and proactive rebalancing for the Lightning Network
- Lightning 101: Node Profitability feat. Plebnet by Lightning Labs
The basic steps I have followed based on my learnings go something like this:
-
First, study node information available from Amboss and Lightning Terminal to identify peers to connect to. I aim for a mix of channels (both sinks and sources) with
A. relatively low outgoing fees
B. lots of good connections & growth
C. relatively high rank for Betweenness / Hopness / Hubness -
I’ve opened 15 balanced channels either using Liquidity Swaps or rebalancing unilaterally after opening, with a capacity of at least 2-5M sats each
-
I set fees fairly high at first (ie. >500ppm and >10 base fee)
-
I set MAX HTLC at no more than 500,000 sats (I do this to take advantage of my base fee by allowing the channel to be used multiple times instead of one or two large transactions depleting the liquidity)
-
Wait and watch for a few hours to see if any movement occurs…
-
If movement occurs, I either leave fees alone or raise them incrementally until activity slows (being careful not to squash it completely)
-
If no movement occurs after a few hours, I begin reducing fees incrementally until liquidity starts to move (I generally use the same fees for all channels but may set certain channel fees higher if they get much higher usage)
-
When liquidity moves to one side of the channels routing activity stops. At this point I have two choices:
A. If I have enough funds on-chain I can open new channels that I think might complement my existing channels by pulling or pushing liquidity – essentially rebalancing my unbalanced channels for me.
B. Alternatively, I can rebalance my existing channels to feed the movement of liquidity and get things moving again.
I currently have 15 channels with 50M sats total capacity.
Finding the right mix of channels that might rebalance themselves has been elusive. I have not figured out how to do this, or if it can even be done at all.
Therefore I’m forced to manually rebalance. However, rebalancing is very tedious/time-consuming – failures happen frequently using RTL, Thunderhub and Lightning Terminal. I know there are scripts to help automate this process, but as a newbie with only minimal command line experience, I haven’t worked up the courage to try to implement this yet.
More importantly, rebalancing is costing me more than the fees I am able to collect – often by a factor of 10-15x.
For example, this week I spent 5,287 sats to rebalance 5,896,030 sats and to open a new 5,000,000 channel. I now have 10,896,030 sats ready to flow. I just need to calculate what fees I should charge. Just to break even I would need to set my rate at 485 ppm, OR limit the MAX HTLC to 200,000 sats (for example) and set fees to 436 ppm + 10 base fee, or 385 ppm + 20 base fee, etc. etc. But I think these rates may be unworkable since I’m not seeing any movement at these levels.
So my questions are:
-
What could I be doing that I’m not already?
-
Is there something obvious that I’m doing wrong?
-
Is it perhaps too early in Lightning Network’s life cycle, or wrong time in the macro market cycle to expect to earn profits from routing? I did some back-of-the-napkin math and figure it will be easier to turn a profit (or at least break even) as the price of BTC increases since we’ll be able to facilitate a higher number of Lightning transactions with fewer Sats. But until then?
I have found some good tutorials, articles, and guides on this forum and others, but I think for Lightning Network to succeed we need many more that dive into the details of how to route profitably; to help newcomers understand best practices around how to choose complimentary peers to channels with, calculate fee rates, etc. That, in addition to vast improvements to the UX/UI of many of the tools currently available. Otherwise I foresee many would-be node operators will get frustrated losing money and simply quit. I want to keep trying, but I also can’t continue to operate at a loss.
Thoughts?
UPDATE:
As noted above, I spent 5,287 sats to put 10,896,030 sats into position – a spend rate of 0.048522%.
After setting my fees as described, today I earned 2,466 sats from 4,987,055 sats forwarded – an earn rate of 0.049448%.
0.049448% - 0.048522% = 0.000926%
Perhaps this means I am heading the right direction.
Hey, it’s slim, but it’s something
UPDATE:
After 1 month of operation my Lightning node lost 142,315 sats. This includes fees earned from forwards minus my rebalancing fees, loops, and all of the on-chain fees to open 17 channels and to close a few that I shouldn’t have opened.
Perhaps over time I can make up for this initial loss, but I don’t see it. Collected fees from forwards only amounts to 10,018 sats, and to make that happen I had to do a lot of rebalancing. Need to reevaluate.
Would love it if others would share their results and tips for what works / doesn’t work.