Rebalancing fees headache

Node: HiFiBTC

So, the community seems to want to keep the fees down for routing whitch is all well and good :sunglasses:, but I can’t seem to rebalance my channels without paying fees that are more than what the channel will bring in! :sob: Looping seems to be the worst. Trying to loop even 500k sats cost me 2,200+ sats! I’m using rebalance-lnd which is nice, but then I end up spending a bunch of time trying to rebalance 100k at a time.
There has got to be a better way! So far, it doesn’t seem worth my time to try and keep these channels rebalanced. I guess I’ll try the automatic rebalancing schedule next.
Thanks for listening to me vent. :smiling_face_with_three_hearts:


It’s certainly art and science, and that’s the beauty of LN. With the risk of mansplaining, let me share a couple of hints which hopefully make rebalancing less tiresome.

Rebalancing is interconnected with your fee-strategy, and your channel composition.

  • when your fees are lower than your peers, no profitable rebalancing is possible. Don’t be shy cranking them up
  • when you have more sink channels than drainers, you won’t be able to get to a balanced state without swaps (which are costy)
  • when you leave it be and hope for the best, traffic plummets eventually, because as node runner, you should always chase the liquidity demand

Here a couple of suggestions

  1. finding the right peer set: for liquidity insights, and for channel simulator
  2. I’ve build a wrapper around rebalance-lnd, which should take some of the heavy lifting away from you (the 20 x 100k moves can be tiresome, not with this script)
  3. NGU built an almost fully automated rebalancer, based on rebalance-lnd. I have this running now for a while, and it’s working exceptionally well. There is a Telegram Group for it’s users, shout if you are curious to join

Hope there is some stuff which helps. This journey took me a couple of months, lot’s of learning as a reward. Best of luck on yours!


The lndg app has something missing.

Is not clear that should be run in /umbrel/ folder or out.
The lndg/data folder is not created, so the password.txt file also is not created. If you try to create it manually, it doesn’t work.

Please, can you give more details how you installed this in umbrel?

Oh well, he missed adding those necessary pieces into the main readme.
See these steps in the release notes: Following those steps should address what you’re running into:

Docker/Umbrel Install Users

IF YOU CANNOT LOG INTO YOUR NODE after the update because the password has stopped working, this is because the default data directory has been relocated to allow for a cleaner install process. Follow the steps below to restore your existing database.

  1. Stop LNDg
    cd ~/lndg
    docker-compose down
  2. Update docker-compose.yaml volumes section to the below (Umbrel example) with: nano docker-compose.yaml
  - /home/umbrel/umbrel/lnd:/root/.lnd:ro
  - /home/umbrel/lndg/data:/lndg/data:rw
  1. Run the following commands
    mkdir data
    mv db.sqlite3 data/
  2. Continue with update
    docker-compose build --no-cache
    docker-compose up -d

Let me know if that helps or no

Sorry, did all that but still get:
mv: cannot stat 'db.sqlite3': No such file or directory

OK, sorry, my mistake.
As I do not have a RPi Umbrel, my user name is not umbrel.
I changed that /home/umbrel/umbrel/lndg in /home/user/lndg and now it works

Let’s see what is doing this app…

1 Like

The secret is to find channels with high inbound and outbound demand, and not waste time trying to rebalance, in my opinion. A few examples of nodes with high demand: bfx-lnd0, bfx-lnd1,, ln.nicehash and SeasickDiver.
I have forwardings between nicehash and bfx-lnd0 almost everyday. So this way they rebalance themselves. :smiley:
And it’s also good to have a channel with low fee nodes like “zero fee routing”.


And what do you do with seasick, bfx and loop once they are 100% inbound / remote?
Three options, You

  1. close the channel and reopen. Need an ever growing stack of sats and keep paying onchain fees
  2. swap in. Need onchain sats, again, and pay b/w 2-5% ppm for bolt / loop
  3. rebalance, ideally for less (eg 80%) of your incurred ppm price to them

For me, 3 works better as it’s more economically effective.


@everyone @here has experience with LNDg AR (Auto Rebalance) functionality?

Talk with the LNDg bois…

@DarthCoin thanks… so should I take your response as “stay away from it” ?

No, but use it wisely. Is a good tool, works fine, I test it.

Ok, sound’s good :grin: I’m testing it too… I believe the results will start showing up after a few days/weeks. @DarthCoin any thoughts on it? Did you deactivated again because you prefer manage rebalances manually instead leaving it to an automated cronjob?

Yes, the results are not immediately, you need patience and a lot of routing.
I deactivate it, because now I am participating in the movement #ZeroFeesFebruary so balancing is doing itself now. My node is routing like crazy.
So LNDg can handle that. LNDg is more when you use specific fees.
Will see next month, maybe I will start a new movement test, #ZeroBase-1ppm
All these tests are to watch and learn how LN react to these policies.

That could be cool! I still need to understand how to join the #ZeroFeesFebruary too :sweat_smile: or is not a thing I should do when starting a new node?

You need to reclaim your node in amboss first, then just set your fees to 0/0 and click on join community.
Send me the request link and I will accept it. Other 2 members have to accept it too.

1 Like

:white_check_mark: Job done to support #ZeroFeesFebruary !

  • Claimed Node on Amboss
  • Setup Fees to 0/0
  • Also connected with zeroFeesRouting (not sure it help support the movement :thinking:)

@DarthCoin here did I get the request link from? Amboss?

which one is yours?

it helps you more.
Check also this list

1 Like

Legend, thanks for sharing :pray:


OK approved, I informed another 2 members to give you the approval

1 Like