Check bitcoin transaction fees

When the user asks about Bitcoin transaction fees, confirmation costs, sat/vB rates, mempool congestion, or how much to pay to get confirmed — reach for mempool.space fee estimation. Five confirmation tiers in one unauthenticated GET.

check-bitcoin-transaction-fees · v1 · updated 2026-04-16

Agents: This page is a SKILL.md-style capability guide. For JSON, call GET /api/skills/check-bitcoin-transaction-fees. To drop this into a local Claude Code install, copy the frontmatter + body below into ~/.claude/skills/check-bitcoin-transaction-fees/SKILL.md.

When to use this skill

When the user asks how much to pay in Bitcoin transaction fees, what fee rate will get confirmed in the next block, or how congested the mempool is — reach for mempool.space's fee estimation endpoint. The five-tier response (fastestFee, halfHourFee, hourFee, economyFee, minimumFee) directly answers "how many sat/vB do I need right now?" in a single unauthenticated GET. For checking whether a specific transaction has confirmed or looking up an address balance, this is the wrong skill — use the fallback calls below instead.

Your best first call

curl "https://mempool.space/api/v1/fees/recommended"

No auth. No key. No parameters. Returns five fee tiers in satoshis per virtual byte (sat/vB):

{
  "fastestFee": 5,
  "halfHourFee": 4,
  "hourFee": 3,
  "economyFee": 2,
  "minimumFee": 1
}

The tiers map to confirmation targets: fastestFee lands in the next block, halfHourFee within three blocks, hourFee within six, economyFee within 18, and minimumFee is the absolute floor. During low congestion all five collapse to 1 sat/vB. During spikes the spread widens — fastestFee can hit double digits while economyFee stays at 1 or 2, meaning you only pay a premium if you're in a hurry. The response is live, not cached — call it right before building a transaction, not hours in advance.

Fallbacks (when the best call isn't enough)

Pitfalls

One-line summary for the user

I can check Bitcoin transaction fee estimates — projected confirmation tiers from next-block to economy — from mempool.space in a single unauthenticated GET, no key required.

APIs this skill uses

Mempool · primary · verified

Bitcoin blockchain explorer API providing mempool statistics, block data, transactions, and fee estimates.

Generated from

Mempool tutorial Getting Started with Mempool.space

SKILL.md source (frontmatter + body)
---
name: check-bitcoin-transaction-fees
description: When the user asks about Bitcoin transaction fees, confirmation costs, sat/vB rates, mempool congestion, or how much to pay to get confirmed — reach for mempool.space fee estimation. Five confirmation tiers in one unauthenticated GET.
---

## When to use this skill

When the user asks how much to pay in Bitcoin transaction fees, what fee rate will get confirmed in the next block, or how congested the mempool is — reach for mempool.space's fee estimation endpoint. The five-tier response (`fastestFee`, `halfHourFee`, `hourFee`, `economyFee`, `minimumFee`) directly answers "how many sat/vB do I need right now?" in a single unauthenticated GET. For checking whether a specific transaction has confirmed or looking up an address balance, this is the wrong skill — use the fallback calls below instead.

## Your best first call

```bash
curl "https://mempool.space/api/v1/fees/recommended"
```

No auth. No key. No parameters. Returns five fee tiers in satoshis per virtual byte (sat/vB):

```json
{
  "fastestFee": 5,
  "halfHourFee": 4,
  "hourFee": 3,
  "economyFee": 2,
  "minimumFee": 1
}
```

The tiers map to confirmation targets: `fastestFee` lands in the next block, `halfHourFee` within three blocks, `hourFee` within six, `economyFee` within 18, and `minimumFee` is the absolute floor. During low congestion all five collapse to 1 sat/vB. During spikes the spread widens — `fastestFee` can hit double digits while `economyFee` stays at 1 or 2, meaning you only pay a premium if you're in a hurry. The response is live, not cached — call it right before building a transaction, not hours in advance.

## Fallbacks (when the best call isn't enough)

- **Need to check whether a transaction has confirmed** → `https://mempool.space/api/tx/{txid}` returns full transaction details including `status.confirmed` and `block_height`.
- **Need the balance of a Bitcoin address** → `https://mempool.space/api/address/{address}` returns `chain_stats` (confirmed) and `mempool_stats` (unconfirmed) with funded/spent output counts and sums, all in satoshis.
- **Need the full mempool fee histogram for custom projections** → `https://mempool.space/api/v1/fees/mempool` returns a `fee_histogram` array of `[fee_rate, cumulative_vsize]` pairs, but this response can exceed 10 KB — only use it if the five-tier summary doesn't give enough resolution.

## Pitfalls

- All monetary values in mempool.space responses are in satoshis, not BTC. Divide by 100,000,000 to convert. A `value` of 2000 means 0.00002 BTC.
- The fee tiers are confirmation *targets*, not guarantees. During sudden congestion spikes, even the `fastestFee` rate may not land in the very next block — the mempool is a probabilistic queue, not a reservation system.
- `/mempool/txids` returns every transaction ID currently in the mempool (typically 10,000+) with no pagination or filtering. Never call it for fee estimates — `/v1/fees/recommended` is always the right call.
- Address endpoints return `tx_count` (unique transactions), not output count. A single transaction can produce many outputs, so `funded_txo_count` can far exceed `tx_count` — as the Satoshi genesis address demonstrates with 73,360 outputs across 62,296 transactions.

## One-line summary for the user

I can check Bitcoin transaction fee estimates — projected confirmation tiers from next-block to economy — from mempool.space in a single unauthenticated GET, no key required.

« Back to all skills