For the complete documentation index, see llms.txt. This page is also available as Markdown.

fetchFeeEstimate

Estimates the transaction fee by trying fetchFeeEstimateTransaction first and falling back to fetchFeeEstimateTransfer if the node cannot provide an estimate (e.g. for a new contract call it has not seen before).


Usage

import {
  makeUnsignedSTXTokenTransfer,
  fetchFeeEstimate,
} from '@stacks/transactions';

const transaction = await makeUnsignedSTXTokenTransfer({
  recipient: 'ST1SJ3DTE5DN7X54YDH5D64R3BCB6A2AG2ZQ8YPD5',
  amount: 1000000n,
  publicKey: '034f355bdcb7cc0af728ef3cceb9615d90684bb5b2ca5f859ab0f0b704075871aa',
  network: 'testnet',
  fee: 0, // placeholder — we'll estimate
  nonce: 0n,
});

const estimatedFee = await fetchFeeEstimate({
  transaction,
  network: 'testnet',
});
transaction.setFee(estimatedFee);

Notes

  • The builder functions call this automatically when fee is not provided.

  • Returns the middle (median) estimation from the three-tier response.

Reference Link


Signature


Returns

Promise<bigint | number>

A promise that resolves to the estimated fee in microSTX.


Parameters

opts.transaction (required)

  • Type: StacksTransactionWire

The transaction to estimate fees for.

opts.network (optional)

  • Type: StacksNetworkName | StacksNetwork

The network to query. Inferred from the transaction if not provided.

opts.client (optional)

  • Type: NetworkClient

Custom client configuration for the API call.

Last updated

Was this helpful?