LND Channel Rebalancing Strategies -- Keep Liquidity Flowing
LND Troubleshooting GuideChannel rebalancing moves liquidity from outbound-heavy channels to inbound-heavy ones, keeping your node able to route payments in both directions.
Check Current Balances
lncli listchannels | grep -E "chan_id|local_balance|remote_balance"
Circular Rebalance with lncli
# Pay yourself via a circular route lncli sendpayment --dest <your_pubkey> \ --amt 500000 \ --last_hop <channel_to_drain> \ --outgoing_chan_id <channel_to_fill>
Using bos (Balance of Satoshis)
bos rebalance \ --out <outbound_peer_pubkey> \ --in <inbound_peer_pubkey> \ --amount 1000000 \ --max-fee-rate 200
Automated Rebalancing with charge-lnd
# Install pip install charge-lnd # Config: /etc/charge-lnd.conf [default] strategy = proportional min_fee_rate = 50 max_fee_rate = 500 auto_rebalance = true auto_rebalance_scale = 1.0
Key Principles
- Only rebalance if routing fees earned outweigh rebalancing cost
- Keep local:remote ratio between 20:80 and 80:20
- High-capacity channels to well-connected nodes rebalance more efficiently
Common Errors
- "insufficient local balance" — channel already drained, choose different outbound
- "no route found" — raise max fee rate or choose different channel pair
- Fee cost exceeds routing income — skip rebalancing, let organic traffic balance the channel