LND Circular Rebalancing - Fix No Route and Fee Errors
What Is LND Circular Rebalancing?
Circular rebalancing sends a payment that routes out one channel and back through another, redistributing liquidity without closing channels. Essential for routing node operators.
Common Errors
- no route found for circular rebalance
- insufficient local balance to initiate rebalance
- FAILURE_REASON_NO_ROUTE: rebalance failed
- fee too high for rebalance to be profitable
Manual Circular Rebalance via lncli
# Create a self-payment invoice lncli addinvoice --amt 100000 # Pay it via specific outgoing channel lncli payinvoice --outgoing_chan_id <chan_id> <payment_request> # Force a specific route lncli buildroute --amt 100000 --hops <hop1>,<hop2>,<your_node> lncli sendtoroute --payment_hash <hash> --routes <route_json>
Use balance-of-satoshis (bos)
# Install bos npm install -g balanceofsatoshis # Rebalance: move 500k sats from chan A to chan B bos rebalance \ --out <outgoing_peer_pubkey> \ --in <incoming_peer_pubkey> \ --amount 500000 \ --max-fee-rate 500
Use lndmanage
pip install lndmanage lndmanage rebalance --outgoing-channel <chan_id> --incoming-channel <chan_id> --amount 200000
Reduce Rebalance Fees
- Set --max-fee-rate to limit fee spend (e.g. 200 ppm)
- Target channels with cheap peers in between
- Use bos --max-fee to cap absolute fee in sats
- Rebalance during low-fee periods (weekends/nights)
Need help optimizing your routing node? DM on Nostr.