---
title: estimateTransactionFee
description:
  Estimates the transaction fee in both lamports and the specified token.
---

## JSON-RPC Request

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "estimateTransactionFee",
  "params": {
    "transaction": "base64EncodedTransaction",
    "fee_token": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"
  }
}
```

## JSON-RPC Response

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    "fee_in_lamports": 5000,
    "fee_in_token": 1000000,
    "payment_address": "3Z1Ef7YaxK8oUMoi6exf7wYZjZKWJJsrzJXSt1c3qrDE",
    "signer_pubkey": "3Z1Ef7YaxK8oUMoi6exf7wYZjZKWJJsrzJXSt1c3qrDE"
  }
}
```

## cURL Example

```bash
curl -X POST http://localhost:8080 \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"estimateTransactionFee","params":{"transaction":"base64EncodedTransaction","fee_token":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"}}'
```

## TypeScript SDK

```typescript
const fees = await client.estimateTransactionFee({
  transaction: "base64EncodedTransaction",
  fee_token: "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v" // USDC
});
console.log("Fee in lamports:", fees.fee_in_lamports);
console.log("Fee in USDC:", fees.fee_in_token);
```
