Bitcoin price
One BTC, in every fiat currency that matters — sourced live from CoinGecko.
BTC / USD
BTC Price
live- 24h
- +1.36%
- Market cap
- $1.6T
- Supply
- 20,029,650 / 21M
When someone asks “what’s the price of Bitcoin right now?” — and as a Thai engineer holding since late 2017, I get asked this a lot — I’ve learned to push back. There is no single price. There is the last trade on Coinbase, in dollars, a few seconds ago. There is the simultaneous quote on Bitkub, in baht, which is not the dollar price multiplied by today’s USD/THB rate. There is the OTC desk in Lagos quoting a 7% premium. The number at the top of this page is a useful approximation — a reference rate aggregated across major venues — but the moment you treat it as “the price,” you’ve lost the plot.
What “the price” actually is
A Bitcoin price quote is a snapshot: one trade, on one exchange, in one currency, at one timestamp. Coinbase sees a price; Kraken sees a different one milliseconds later; Binance sees something else. Arbitrageurs squeeze the gaps closed within seconds, but they never fully disappear, especially during volatility. What we display is a reference rate — a volume-weighted blend pulled from CoinGecko, aggregating hundreds of pairs. A fair approximation, not a fact.
This matters because you cannot transact at the reference rate. You only transact at whatever your exchange quotes when your order fills, minus spread and fee. Reference rates are for orientation, not execution.
Why local prices diverge
Anyone who has bought Bitcoin in Thailand knows the Bitkub price, expressed in USD, isn’t quite the global average — sometimes a percent or two higher. In Argentina or Nigeria, the spread can hit double digits during currency crises. Why?
Three reasons. First, regulatory friction: capital controls and KYC make cross-border arbitrage hard. Second, banking limits: even where the protocol is unrestricted, the fiat on-ramp isn’t — wire delays, daily caps, and correspondent banking choke equalizing flow. Third, OTC versus spot: when regulated spot is thin, large buyers go peer-to-peer or OTC, and those quotes drift. The “global average” assumes liquid arbitrage. When arbitrage breaks, local prices float.
This isn’t a Bitcoin bug. The protocol doesn’t care what fiat thinks. The divergence lives at the fiat layer.
Market cap, with caveats
Market cap is spot price multiplied by circulating supply — today, near 19.85 million coins. The metric is more approximate than it looks.
A meaningful portion of mined coins haven’t moved in over a decade. Satoshi’s estimated 1.1 million BTC have not budged since 2010 and probably never will. Lost coins — keys destroyed, drives wiped, seed phrases forgotten — are conservatively estimated in the millions. None of those can actually be sold at the current price. Market cap assumes every coin is liquid. It isn’t. Treat it as a comparative anchor across time and against other assets, not as a literal valuation of “all the Bitcoin.”
Circulating versus total supply
Bitcoin has a hard cap. The whitepaper and source code agree: the block subsidy halves every 210,000 blocks (roughly four years), and the geometric series converges. Terminal supply lands at approximately 20.999999 million BTC — a hair under 21 million, thanks to an early integer-rounding quirk. Today about 19.85 million are mined; the rest emerges block by block as halvings cut issuance.
This is why “circulating supply” and “total supply” are essentially the same number for Bitcoin. No treasury, no founder allocation, no unlock cliff. What exists exists because it was mined under the same rules every node enforces. Jameson Lopp maintains a clean reference at lopp.net/bitcoin-information.html.
Why we use CoinGecko
For pricing I use the CoinGecko API. It’s free at our volume, supports 60+ fiat currencies — including THB, which many providers skip — and has been more stable in my testing than alternatives. For block and mempool data I use mempool.space directly. Don’t trust, verify: every number on this site links back to a primary source you can check.
Reading the 24h change
The 24h price change is the most-clicked, least-useful number on every Bitcoin dashboard, including this one. A 2% daily move means almost nothing. ETF flow imbalances, futures basis arbitrage, leverage liquidations cascading on perps, a single whale rebalancing — any of these can produce intraday moves that reverse the next day. The number is honest; the implied story usually isn’t.
I don’t use the 24h change to make decisions, and I’d suggest you don’t either. Stack on a schedule. Look at multi-month trends if you must look. The daily candle is mostly noise.
The sat per dollar mental model
The single most useful framing I’ve internalized: invert the price. Instead of “Bitcoin is at $95,000,” think “one dollar buys about 1,053 sats.” That’s sats-per-USD. As Bitcoin appreciates, sats-per-USD falls. The end state — hyperbitcoinization — is sats-per-USD approaching zero, because no quantity of dollars meaningfully purchases sats anymore.
This frame fixes a psychological bug in fiat-denominated thinking. When the BTC/USD chart goes up, sats-per-USD goes down, and stacking gets harder. When everyone panics and the chart is red, sats-per-USD goes up, and your stack accelerates. The chart at the top of this page is fiat-pricing Bitcoin. The mental model I actually use is Bitcoin-pricing fiat.