Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
LIGHTNING-FEERATES(7)					 LIGHTNING-FEERATES(7)

NAME
       lightning-feerates -- Command for querying recommended onchain feerates

SYNOPSIS
       feerates	style

DESCRIPTION
       The  feerates command returns the feerates that CLN will	use. The feer-
       ates will be based on the recommended feerates from  the	 backend.  The
       backend	may  fail  to provide estimates, but if	it was able to provide
       estimates in the	past, CLN will continue	to use those for a while.  CLN
       will also smoothen feerate estimations from the backend.

       Explorers  often	 present  fees	in  "sat/vB": 4	sat/vB is 4000perkb or
       1000perkw.

       Bitcoin transactions have non-witness and witness bytes:

         Non-witness bytes count as 4 weight, 1 virtual byte. All bytes other
	  than SegWit witness count as	non-witness  bytes.  *	Witness	 bytes
	  count	as 1 weight, 0.25 virtual bytes.

       Thus, all perkb feerates	will be	exactly	4 times	perkw feerates.

       To  compute  the	 fee for a transaction,	multiply its weight or virtual
       bytes by	the appropriate	perkw or perkw feerate returned	by  this  com-
       mand, then divide by 1000.

       There is	currently no way to change these feerates from the RPC.	If you
       need  custom  control  over  onchain feerates, you will need to provide
       your own	plugin that replaces the bcli  plugin  backend.	 For  commands
       like  lightning-withdraw(7) or lightning-fundchannel(7) you can provide
       a preferred feerate directly as a parameter, which  will	 override  the
       recommended feerates returned by	feerates.

         style	 (string)  (one	 of  "perkb", "perkw"):	Fee rate style to use.
	  This can be: perkw - provide feerate in units	of satoshis  per  1000
	  weight  (e.g.	the minimum fee	is usually 253perkw).  perkb - provide
	  feerate in units of satoshis per 1000	virtual	bytes (eg. the minimum
	  fee is usually 1000perkb).

NOTES
       Many other commands have	a feerate parameter. This can be:

         One of the strings to	use lightningd's internal estimates:

	    urgent (next 6 blocks or so)
	    normal (next 12 blocks or so)
	    slow (next	100 blocks or so)
	    minimum for the  lowest  value  bitcoind  will  currently	accept
	     (added in v23.05)
         A number, with an optional suffix:

	    blocks  means  aim	for confirmation in that many blocks (added in
	     v23.05)
	    perkw means the number  is	 interpreted  as  satoshi-per-kilosipa
	     (weight)
	    perkb means it is interpreted bitcoind-style as satoshi-per-kilo-
	     byte.

       Omitting	the suffix is equivalent to perkb.

RETURN VALUE
       On success, an object is	returned, containing:

         perkb	(object, optional): If style parameter was perkb.:

	    min_acceptable (u32): The smallest	feerate	that we	allow peers to
	     specify: half the 100-block estimate.
	    max_acceptable (u32): The largest feerate we will accept from re-
	     mote  negotiations.  If a peer attempts to	set the	feerate	higher
	     than this we will unilaterally close the channel (or simply  for-
	     get it if it's not	open yet).
	    floor  (u32):  The	 smallest feerate that our backend tells us it
	     will accept (i.e. minrelayfee or mempoolminfee). (added v23.05)
	    estimates (array of objects): Feerate estimates from plugin which
	     we	are using (usuallly bcli). (added v23.05):
	    blockcount	(u32): The number of blocks the	feerate	is expected to
	     get a transaction in. (added v23.05)
	    feerate (u32): The	feerate	for this  estimate,  in	 given	style.
	     (added v23.05)
	    smoothed_feerate  (u32):  The feerate, smoothed over time (useful
	     for coordinating with other nodes). (added	v23.05)
	    opening (u32, optional): Default feerate for  lightning-fundchan-
	     nel(7) and	lightning-withdraw(7).
	    mutual_close  (u32,  optional): Feerate to	aim for	in cooperative
	     shutdown. Note that since mutual close is a negotiation, the  ac-
	     tual  feerate used	in mutual close	will be	somewhere between this
	     and the corresponding mutual close	feerate	of the peer.
	    unilateral_close (u32, optional): Feerate for commitment_transac-
	     tion in a live channel which we originally	funded.
	    unilateral_anchor_close  (u32,  optional):	 Feerate  for  commit-
	     ment_transaction in a live	channel	which we originally funded (if
	     anchor_outputs was	negotiated). (added v23.08)
	    delayed_to_us  (u32,  optional): Feerate for returning unilateral
	     close funds to our	wallet.	deprecated in  v23.05,	removed	 after
	     v24.05
	    htlc_resolution (u32, optional): Feerate for returning unilateral
	     close  HTLC  outputs to our wallet. deprecated in v23.05, removed
	     after v24.05
	    penalty (u32, optional): Feerate to use when creating penalty  tx
	     for watchtowers.
         perkw	(object, optional): If style parameter was perkw.:

	    min_acceptable (u32): The smallest	feerate	that you can use, usu-
	     ally the minimum relayed feerate of the backend.
	    max_acceptable (u32): The largest feerate we will accept from re-
	     mote  negotiations.  If a peer attempts to	set the	feerate	higher
	     than this we will unilaterally close the channel (or simply  for-
	     get it if it's not	open yet).
	    floor  (u32):  The	 smallest feerate that our backend tells us it
	     will accept (i.e. minrelayfee or mempoolminfee). (added v23.05)
	    estimates (array of objects): Feerate estimates from plugin which
	     we	are using (usuallly bcli). (added v23.05):
	    blockcount	(u32): The number of blocks the	feerate	is expected to
	     get a transaction in. (added v23.05)
	    feerate (u32): The	feerate	for this  estimate,  in	 given	style.
	     (added v23.05)
	    smoothed_feerate  (u32):  The feerate, smoothed over time (useful
	     for coordinating with other nodes). (added	v23.05)
	    opening (u32, optional): Default feerate for  lightning-fundchan-
	     nel(7) and	lightning-withdraw(7).
	    mutual_close  (u32,  optional): Feerate to	aim for	in cooperative
	     shutdown. Note that since mutual close is a negotiation, the  ac-
	     tual  feerate used	in mutual close	will be	somewhere between this
	     and the corresponding mutual close	feerate	of the peer.
	    unilateral_close (u32, optional): Feerate for commitment_transac-
	     tion in a live channel which we originally	funded (if anchor_out-
	     puts was not negotiated).
	    unilateral_anchor_close  (u32,  optional):	 Feerate  for  commit-
	     ment_transaction in a live	channel	which we originally funded (if
	     anchor_outputs was	negotiated). (added v23.08)
	    delayed_to_us  (u32,  optional): Feerate for returning unilateral
	     close funds to our	wallet.	deprecated in  v23.05,	removed	 after
	     v24.05
	    htlc_resolution (u32, optional): Feerate for returning unilateral
	     close  HTLC  outputs to our wallet. deprecated in v23.05, removed
	     after v24.05
	    penalty (u32, optional): Feerate to use when creating penalty  tx
	     for watchtowers.
         onchain_fee_estimates	(object, optional):

	    opening_channel_satoshis (u64): Estimated cost of typical channel
	     open.
	    mutual_close_satoshis  (u64):  Estimated  cost of typical channel
	     close.
	    unilateral_close_satoshis (u64): Estimated	cost of	 typical  uni-
	     lateral close (without HTLCs). If anchors are supported, this as-
	     sumes a channel with anchors.

	    htlc_timeout_satoshis (u64): Estimated cost of typical HTLC time-
	     out transaction (non-anchors).
	    htlc_success_satoshis  (u64): Estimated cost of typical HTLC ful-
	     fillment transaction (non-anchors).
	    unilateral_close_nonanchor_satoshis  (u64,	 optional):  Estimated
	     cost  of  non-anchor  typical  unilateral	close (without HTLCs).
	     (added v23.08)

       The following warnings may also be returned:

         warning_missing_feerates: Some fee estimates are missing.

ERRORS
       The feerates command will never error, however some fields may be miss-
       ing in the result if feerate estimates for that kind of transaction are
       unavailable.

TRIVIA
       In C-lightning we like to call the  weight  unit	 "sipa"	 in  honor  of
       Pieter  Wuille,	who  uses the name "sipa" on IRC and elsewhere.	Inter-
       nally we	call the perkw style as	"feerate per kilosipa".

AUTHOR
       ZmnSCPxj	<<ZmnSCPxj@protonmail.com>> wrote the initial version of  this
       manpage.

SEE ALSO
       lightning-parsefeerate(7),   lightning-fundchannel(7),  lightning-with-
       draw(7),	lightning-txprepare(7),	lightning-fundchannel_start(7)

RESOURCES
       Main web	site: <https://github.com/ElementsProject/lightning>

EXAMPLES
       Example 1:

       Request:

       $ lightning-cli feerates	-k "style"="perkw"

       {
	 "id": "example:feerates#1",
	 "method": "feerates",
	 "params": {
	   "style": "perkw"
	 }
       }

       Response:

       {
	 "perkw": {
	   "opening": 7500,
	   "mutual_close": 3750,
	   "unilateral_close": 11000,
	   "unilateral_anchor_close": 3750,
	   "penalty": 7500,
	   "min_acceptable": 1875,
	   "max_acceptable": 150000,
	   "floor": 253,
	   "estimates":	[
	     {
	       "blockcount": 2,
	       "feerate": 15000,
	       "smoothed_feerate": 15000
	     },
	     {
	       "blockcount": 6,
	       "feerate": 11000,
	       "smoothed_feerate": 11000
	     },
	     {
	       "blockcount": 12,
	       "feerate": 7500,
	       "smoothed_feerate": 7500
	     },
	     {
	       "blockcount": 100,
	       "feerate": 3750,
	       "smoothed_feerate": 3750
	     }
	   ]
	 },
	 "onchain_fee_estimates": {
	   "opening_channel_satoshis": 5265,
	   "mutual_close_satoshis": 2523,
	   "unilateral_close_satoshis":	4170,
	   "unilateral_close_nonanchor_satoshis": 6578,
	   "htlc_timeout_satoshis": 7293,
	   "htlc_success_satoshis": 7733
	 }
       }

       Example 2:

       Request:

       $ lightning-cli feerates	-k "style"="perkb"

       {
	 "id": "example:feerates#2",
	 "method": "feerates",
	 "params": {
	   "style": "perkb"
	 }
       }

       Response:

       {
	 "perkb": {
	   "opening": 30000,
	   "mutual_close": 15000,
	   "unilateral_close": 44000,
	   "unilateral_anchor_close": 15000,
	   "penalty": 30000,
	   "min_acceptable": 7500,
	   "max_acceptable": 600000,
	   "floor": 1012,
	   "estimates":	[
	     {
	       "blockcount": 2,
	       "feerate": 60000,
	       "smoothed_feerate": 60000
	     },
	     {
	       "blockcount": 6,
	       "feerate": 44000,
	       "smoothed_feerate": 44000
	     },
	     {
	       "blockcount": 12,
	       "feerate": 30000,
	       "smoothed_feerate": 30000
	     },
	     {
	       "blockcount": 100,
	       "feerate": 15000,
	       "smoothed_feerate": 15000
	     }
	   ]
	 },
	 "onchain_fee_estimates": {
	   "opening_channel_satoshis": 5265,
	   "mutual_close_satoshis": 2523,
	   "unilateral_close_satoshis":	4170,
	   "unilateral_close_nonanchor_satoshis": 6578,
	   "htlc_timeout_satoshis": 7293,
	   "htlc_success_satoshis": 7733
	 }
       }

Core Lightning v25.02					 LIGHTNING-FEERATES(7)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=lightning-feerates&sektion=7&manpath=FreeBSD+Ports+14.3.quarterly>

home | help