Let me back up. Central banks operate on quarterly cycles. Long-term planning. Reserve requirements. They're not comfortable with decentralization. When they look at stablecoins, they see a threat to monetary policy transmission. When they look at CBDCs, they see an opportunity to reclaim that control.

Use case. Programmable contracts. Purely stablecoins. You can't write a smart contract against a digital euro that doesn't exist yet. So fintech companies, tokenized securities platforms, they'll use USDC or USDT. When CBDCs become programmable, that might change. But policy is slow. I'd guess we're five years away from a meaningful programmable CBDC market. Maybe more.

The thing nobody says publicly. CBDCs are about control. Monetary policy. The central bank wants visibility. They want the ability to enforce sanctions. They want to know where the money is. Stablecoins are about freedom. No one controls them except the issuer. The issuer is trying to stay solvent but there's no central authority. This is the real difference. It's not technological. It's political.

Use case. Retail payments. I want to send someone money. A CBDC is better. It's backed by the government. No counterparty risk. The merchant knows it's real. They won't take a stablecoin because stablecoins can de-peg. But CBDCs require accounts and infrastructure. Not every country has that built yet. Stablecoins work immediately. This is why stablecoins are winning in countries with broken banking systems. Argentina, Venezuela. The local currency is garbage. A stablecoin is better than nothing.

The final thing nobody wants to say. CBDCs are just digital fiat. They don't solve the underlying problem of fiat currency, which is inflation. If the ECB can print digital euros like they print paper euros, the purchasing power decreases the same way. Stablecoins attempt to solve this by fixing supply and backing with reserves. But as we saw with UST, that's an illusion. There's no escape from the central bank problem, only different ways of dealing with it.

The interoperability question is important. CBDCs are designed to be closed systems. If you're using the digital euro, you're in the eurozone settlement infrastructure. Cross-border between CBDCs? They're trying. mBridge was a project between Hong Kong, Thailand, UAE, China on CBDC interoperability. Slow progress. Stablecoins on the same blockchain work immediately. USDC on Ethereum can cross borders in seconds. The problem is regulatory. Stablecoins aren't legal in every jurisdiction. CBDCs are legal by definition because the central bank is issuing them.

Stablecoins are completely different. They're issued by a private entity. The private entity holds reserves supposedly backing the coins one-to-one. But that backing is trust, not technology. USDC is backed by actual dollars in bank accounts. Or so they claim. Tether has had multiple audits because nobody trusts them. The stablecoin issuer controls supply but the "stability" is a market mechanism. If the reserve backing breaks, the stablecoin collapses. This happened to Terra and UST. The stablecoin was unpegged. The collapse was catastrophic.

So right, the first difference is settlement finality. With a CBDC, the central bank guarantees finality. The transaction happened. It's recorded. It's done. With stablecoins on a blockchain like Ethereum, you have probabilistic finality. After twelve blocks, it's very unlikely to revert. But it can happen. A reorg on Ethereum is rare. But it's theoretically possible. This is why CBDCs are better for critical payments. If you're settling a million-dollar transaction, you want the central bank saying "yes, this is final," not the blockchain saying "probably."

Privacy is where things get weird. CBDCs can be designed with varying privacy models. The e-CNY is basically completely surveilled. The central bank knows every transaction. That's a feature in Beijing. The digital euro is being designed with more privacy. They're looking at tiered models. Under a certain amount, no surveillance. Above that, the bank sees it. Stablecoins on public blockchains are pseudonymous but transparent. Anyone can see the transaction. The address is anonymous but the flow is visible. Monero-style privacy can be added but most stablecoins don't.

Here's what I'd predict. CBDCs launch in major currencies over the next three years. The digital dollar, digital euro, digital sterling. Initially they'll be slow because they're new and policy-constrained. Banks will complain. Stablecoins will continue to be used for anything that needs speed. Then CBDCs will get faster and more programmable. Stablecoins will start to decline in wholesale use. But retail stablecoins, the things people hold for volatility hedge or because their local currency sucks, those will persist. They're not competing with CBDCs. They're competing with Bitcoin and gold.

A CBDC is a digital version of fiat money issued directly by the central bank. It's on a central ledger. The central bank has complete visibility. Accounts are identified. Settlement is final in minutes, not hours. The digital euro pilot, the e-CNY in China, eNaira in Nigeria are all trying different models. But the architecture is roughly the same. A blockchain or distributed ledger where the central bank is the ultimate validator. You can't forge euros because the ECB controls the supply. You can't double-spend because every transaction is registered with the central bank.

Use case. Cross-border wholesale. Banks settling with each other. CBDCs are better if they exist. The Federal Reserve with digital dollars. The ECB with digital euros. Banks hold accounts at their respective central banks. They settle instantly. No correspondent banking delays. No Nostro accounts. But if your CBDC isn't live yet and your counterparty's isn't either, you're back to SWIFT and traditional settlement. It takes two to three days. A stablecoin on a shared ledger settles in minutes. So you use stablecoins as a bridge until CBDCs exist everywhere. This is the real story.

Programmability is where stablecoins win. Smart contracts on Ethereum or Solana can automatically execute complex logic. You can build conditional payments. Escrow. Derivative contracts. Tokenized securities. The blockchain is just the settlement layer but the application layer is unlimited. CBDCs mostly aren't programmable yet. The pilots in Denmark, Singapore, they're pretty basic. Straight payment to account B to account A. There's interest in programmable CBDCs but the policy risk scares people. If the CBDC can execute arbitrary code, who's liable when the code is wrong? The central bank? The developer? This is why the lawyers are still arguing.