Node is syncing (--% complete). Fee and mempool data may be inaccurate. View status

Free and open source. Hosted or self-hosted.

Bitcoin fee intelligence for apps and AI agents. No signup for basic testing.

Know the cheapest time to send Bitcoin.

Satoshi API gives apps and AI agents live fee recommendations, mempool context, and transaction cost estimates so they can answer the only question that matters: send now or wait and save money.

$ pip install bitcoin-mcp
You: "Should I send Bitcoin right now?"
Claude: "Fees are low right now. I would either send now if it is urgent or wait for the cheaper 1-hour window if it is not. Here are the exact sat/vB options and the cost difference."
Live from bitcoinsapi.com
Loading live fee data...

Want the same answers inside Claude or your own agent? Pair the API with bitcoin-mcp.

49
MCP Tools
115+
API Endpoints
7
Fee Endpoints
116
Tests Passing
MCP-native for AI agents Fee intelligence, not just fee rates Free & open source Monitored by UptimeRobot

Use the same fee logic inside Claude or your own agent.

Copy any prompt below into Claude Desktop with bitcoin-mcp installed. These are the highest-value workflows for first-time users.

click to copy

Save Money

"Should I send Bitcoin right now?"

Get a send/wait recommendation with specific sat/vB rates and estimated savings if you wait.

click to copy

Save Time

"Track this payment"

Paste a txid. Get confirmation count, fee rate, RBF status, and whether it'll make the next block.

click to copy

Understand

"What's happening in the mempool?"

Congestion level, fee buckets, next-block minimum fee, and total pending transactions.

click to copy

Compare

"Compare urgency levels"

Side-by-side: next block vs. 3 blocks vs. 6 blocks vs. 1 day. Exact sats at each level.

See the AI agent setup guide →

Every feature saves you money or time.

If it doesn't, we don't build it.

Saves Time: AI-Native

Pair Satoshi API with bitcoin-mcp so your AI agents can check fees, verify payments, and monitor addresses without custom wrappers.

Saves Money: Fee Intelligence

"Fees are low. Good time to send." Combines multiple fee targets with mempool state so you never overpay. In the March 12 live example, waiting about an hour cut a 140 vB transaction from 299 sats to 159 sats, a 46.8% savings.

Saves Money: Self-Hostable

$0/month vs $49-100/mo for competitors. Your node, your data, your API. Apache-2.0 licensed. Or use our hosted version free.


Bitcoin data, agent-ready.

Bitcoin Core's JSON-RPC was built for humans at a terminal. Satoshi API wraps it in a clean REST layer that AI agents and applications can consume directly - with MCP tooling, fee intelligence, typed responses, and smart caching. Instead of calling estimatesmartfee five times and doing math, your agent gets a single endpoint with human-readable recommendations in sat/vB.

bitcoin-mcp
AI agent interface (Claude, GPT)
Satoshi API
REST API (this project)
bitcoinlib-rpc
Typed Python RPC client
Bitcoin Core
Your full node

Everything you need to make a better Bitcoin fee decision.

Clear fee recommendations, easy integration, and a path from first call to production use.

MCP-Native for AI Agents

Pair with bitcoin-mcp to give Claude or GPT direct access to live Bitcoin fee and mempool data through MCP tool calls.

Fee Intelligence

"Send now or wait?" Not just a fee rate - actual recommendations with mempool context. Congestion scores. Block weight analysis. All in sat/vB.

Self-Hosted

Your node, your data, your API. No third party sees your queries. No vendor lock-in. No surprise pricing changes. Apache-2.0 licensed.

Agent-Ready Responses

Every response: { data, meta }. Every error: { error }. Request IDs on everything. Consistent and predictable - ideal for agent parsing.

Production-Ready API

Reorg-aware caching, tiered rate limiting, input validation, API key auth, Docker support, and a consistent envelope from the first curl call to a real integration.


Clean JSON. Real Bitcoin data. Instant answers.

Ask "should I send now?" and get a real answer, not a raw number.

Request

GET /api/v1/blocks/latest

Response

{
  "data": {
    "hash": "00000000000...",
    "height": 885421,
    "tx_count": 3847,
    "size": 1648231
  },
  "meta": {
    "cached": false,
    "node": "local"
  }
}

Explore all endpoints →


Built for people making Bitcoin decisions in software.

Start with the fee workflow, then expand into payments, mempool analysis, and self-hosted infrastructure.

Wallet and App Developers

Building a wallet, payment processor, or Bitcoin app? Start with fee recommendations, transaction cost estimates, and mempool context before you wire in more advanced flows.

curl https://bitcoinsapi.com/api/v1/fees/landscape

AI Agent Builders

Give Claude or your own agent a safe, structured way to answer fee questions, compare urgency levels, and explain what is happening in the mempool.

# Claude Desktop via bitcoin-mcp
"bitcoin": {
  "command": "bitcoin-mcp",
  "env": {"SATOSHI_API_URL": "http://localhost:9332"}
}

Node Operators

You already run Bitcoin Core. Add a cleaner REST layer on top so you can query fees, monitor the mempool, and build dashboards without repeating RPC plumbing.

curl localhost:9332/api/v1/mempool
# Congestion level, fee buckets,
# next-block minimum fee

Analysts and Educators

Use the live API and docs to explain fee timing, compare urgency levels, and show how mempool pressure changes the cost of a transaction.

curl localhost:9332/api/v1/mining
# Difficulty, hashrate, next
# retarget height, blocks until

Fee intelligence at the core. Everything else you need around it.

Fees, mempool, blocks, transactions, mining, network, prices, and real-time streams.

MethodEndpointDescription
GET/healthNode reachability check
GET/statusFull node status (sync, peers, disk)
GET/blocks/latestLatest block analysis
GET/blocks/tip/heightCurrent chain height
GET/blocks/tip/hashCurrent tip block hash
GET/blocks/{height_or_hash}Block by height or hash
GET/blocks/{height}/statsDetailed block statistics
GET/blocks/{hash}/txidsTransaction IDs in a block
GET/blocks/{hash}/txsFull transactions in a block
GET/blocks/{hash}/headerRaw block header
GET/tx/{txid}Transaction analysis (fees, SegWit, Taproot)
GET/tx/{txid}/rawRaw decoded transaction
GET/tx/{txid}/hexTransaction as hex string
GET/tx/{txid}/statusConfirmation status
GET/tx/{txid}/outspendsSpending status of each output
GET/utxo/{txid}/{vout}UTXO lookup (spent/unspent)
POST/decodeDecode raw transaction hex
POST/broadcastBroadcast signed transaction
GET/feesFee estimates (all targets)
GET/fees/recommendedHuman-readable fee recommendation
GET/fees/{target}Fee for specific confirmation target
GET/fees/landscapeShould I send now or wait? Decision engine
GET/fees/estimate-txTransaction size and fee cost estimator
GET/fees/historyHistorical fee rates and cheapest hour
GET/fees/mempool-blocksFee distribution by projected blocks
GET/mempoolMempool analysis (congestion, fee buckets)
GET/mempool/infoRaw mempool info
GET/mempool/tx/{txid}Single mempool entry
GET/mempool/txidsAll mempool transaction IDs
GET/mempool/recentRecently added mempool entries
GET/miningMining stats (difficulty, hashrate, retarget)
GET/mining/nextblockNext block template analysis
GET/networkNetwork info (connections, relay fee)
GET/network/forksChain tips and fork detection
GET/network/difficultyCurrent difficulty and retarget info
GET/network/validate-address/{addr}Validate a Bitcoin address
GET/pricesBTC price in 6 fiat currencies Extended
GET/stream/blocksReal-time new block events (SSE)
GET/stream/feesLive fee rate updates every 30s (SSE)
GET/address/{address}Address balance and UTXO summary Extended
GET/address/{address}/utxosList unspent outputs for an address Extended
POST/registerSelf-serve API key registration
GET/tools/exchange-compareCompare exchange prices and fees Extended

All endpoints prefixed with /api/v1. Interactive docs at /docs (Swagger UI) and /redoc.

Follow progress on GitHub.


From zero to a better fee decision in 60 seconds.

Option 1: Use the hosted API (no setup)

No node, no install, no signup. Start with the fee endpoints that answer "send now or wait?":

# Get current fee recommendations
curl https://bitcoinsapi.com/api/v1/fees/recommended

# Latest block analysis
curl https://bitcoinsapi.com/api/v1/blocks/latest

# Mempool congestion
curl https://bitcoinsapi.com/api/v1/mempool

# Mining stats
curl https://bitcoinsapi.com/api/v1/mining

No API key needed for GET requests. Try the interactive API playground.

Option 2: Get a free API key (10x higher limits)

Unlock 10,000 requests/day and POST access. Takes 5 seconds:

Advanced: Self-host on your own node

Already running Bitcoin Core? Run the full API locally: pip install satoshi-api && satoshi-api. Unlimited requests, full privacy. Self-hosting guide →

Python SDK

Use the Python SDK for typed access to all endpoints:

pip install satoshi-api-sdk

Source: github.com/Bortlesboat/bitcoin-api/tree/main/sdk

Free to start. Self-host when you want full control.

The hosted API is the fastest way to try it. Self-hosting is the long-term path if you want unlimited usage and full privacy.

Self-Hosted

Free forever
  • Run on your own node
  • Full API access
  • Unlimited requests
  • Full source code (Apache-2.0)
  • Docker + pip install
View on GitHub

Pay-per-call x402

$0.01/call
  • No API key needed
  • Pay with USDC on Base
  • AI analysis, tx broadcast
  • Built for AI agents
  • Standard HTTP 402 protocol
  • 109 endpoints remain free
Try the Demo

Need higher hosted limits or a specific integration path? Contact api@bitcoinsapi.com.

How x402 pay-per-call works

x402 is an open payment standard built on HTTP 402 by Coinbase and Cloudflare. It lets any client — human or AI agent — pay for an API call with stablecoins, no account required.

1. Request a premium endpoint — you get back 402 Payment Required with the price and wallet address 2. Your client signs a USDC payment on Base and resends the request with an X-PAYMENT header 3. The payment is verified by a facilitator and you get the data
# Step 1: See the 402 challenge
curl https://bitcoinsapi.com/api/v1/x402-demo
# Step 2: Complete the flow
curl -H 'X-PAYMENT: demo' https://bitcoinsapi.com/api/v1/x402-demo

Payments settle on Base (Coinbase L2). Compatible with any x402 client including the official SDK.

You have options. Here is why this one exists.

FeatureSatoshi APIRaw RPCHosted APIs
AI agent support (MCP)Yes, via bitcoin-mcpNoNo
Fee intelligenceSend now or wait? Congestion scoringRaw values onlyVaries
Setup timeMinutes, not hoursAlready thereSign up + API key
Self-hostedYesYesNo
PrivacyYour node, your dataYour nodeThey see your queries
Pay-per-call (x402)Yes, USDC on BaseNoNo
CachingReorg-aware TTLNoneVaries
Rate limitingBuilt-in, tieredNoneYes (their limits)
Input validationBefore RPC callNoneYes
Cost to start$0 (hosted or self-host)$0$50-500+/mo
Vendor lock-inNone (Apache-2.0)NoneYes

Get a better Bitcoin fee decision in 60 seconds.

No signup, no install, no node. Check live fees now or plug the API into Claude via MCP.

Want to be an early tester? Open a GitHub issue or join the Discord community and tell me what is missing, confusing, or broken.