Skip to main content

frUSD Overview

The Dollar, Settled on Bitcoin L1

frUSD is a US-dollar token that lives on Bitcoin L1 as an Alkanes asset. It holds an ordinary Bitcoin UTXO, moves in an ordinary Bitcoin transaction, and can be composed into the same contract calls as any other Alkanes token. There is no better stablecoin UX, or security, anywhere on Bitcoin today.

It is live on mainnet at alkane id 4:1776.

The point of frUSD is a BTC/USD market that clears on proof-of-work. Until today, stablecoins settle elsewhere and always require users to bridge their BTC onto another chain, or use a centralized exchange to swap it for USD. frUSD settles where BTC already is.

Where the dollars are

frUSD is fully reserved, not algorithmic. There is no on-chain collateral ratio to watch and no liquidation engine. Each frUSD exists because someone deposited a dollar-denominated stablecoin on Ethereum:

  1. A user deposits USDC or USDT into the SUBFROST bridge vault on Ethereum.
  2. The SUBFROST signer group observes the deposit and mints the matching frUSD on Bitcoin, to the Bitcoin address named in the deposit.
  3. Burning frUSD on Bitcoin is the reverse instruction: it releases value back out on Ethereum.
ETHEREUMBITCOIN L1YouUSDC or USDTSUBFROSTbridge vaultCurve 3poolthe reserveFROSTsigner groupfrUSD4:1776depositpayoutsees itmintsburnsheld as LPreleased on a burn

The two heavy arrows are the round trip. The dashed pair below the vault is the reserve: it goes into 3pool on a deposit and comes back out to fund a payout when frUSD burns.

Anchoring to USDC and USDT is a deliberate choice rather than a shortcut. On-chain, the canonical dollar is already settled: USDC and USDT are what the market quotes against and treats as cash. frUSD does not try to unseat that, it anchors to it, so the peg tracks the dollar the ecosystem has already agreed on instead of a synthetic approximation. What SUBFROST changes is not the dollar itself but the blockchain to hold and use it on.

The deposited stablecoins are not left idle. The vault's strategy contract deposits them into Curve's 3pool, so the reserve backing frUSD is held as 3pool LP rather than as raw USDC and USDT. Changing that strategy takes the same threshold signature as moving the collateral itself.

That shape is doing more work than earning a yield. A Curve LP token has no issuer, and so no function to freeze a balance: whatever authority a stablecoin issuer holds (like Tether or Circle), they do not hold it over a pool share.

The trust model, stated plainly

The reserve sits on Ethereum, in the SUBFROST bridge vault. That vault has no owner key: moving collateral out, changing the strategy and taking fees are all reachable only through a call carrying a BIP-340 signature from the same FROST threshold group that signs frUSD's Bitcoin side. That group is frUSD's own; frBTC is signed by a separate federation.

BITCOIN L1FROSTsigner groupfrUSD4:1776mintsburnsETHEREUMYouUSDC or USDTSUBFROSTbridge vaultCurve 3poolthe reservedepositpayoutheld as LPreleased on a burnsees the depositsigns the release

The two dotted lines are the same authority reaching across the gap. Nothing on the Ethereum side moves without a signature from the group that mints on Bitcoin, and the 32 bytes it signs with are one key, not a pair.

What this does not remove

  • The collateral is off Bitcoin. It carries Ethereum risk, Curve risk, and stablecoin issuer risk that frBTC does not.
  • The contracts are upgradeable, and unaudited. Both the vault and the 4:1776 token sit behind upgradeable proxies, and neither has been through a formal security audit yet.
  • Minting and redeeming run on SUBFROST infrastructure with sanctions checks. The bridge screens deposits against sanctions lists, such as OFAC, and checks payout addresses against the stablecoin issuers' own blacklists. An exit also waits on the signer group to act, with no bound on how long. Holding and moving frUSD on Bitcoin itself is screened by none of that, and has no freeze function.

Use it with all of that in mind.

How can I get frUSD?

Option 1: Swap for it in the frUSD/frBTC pool

The most direct route, and the one that never leaves Bitcoin. frUSD trades against frBTC in a CryptoSwap pool at 4:1778, so BTC-denominated value can be moved into dollars and back without touching another chain.

Option 2: Mint it by bridging USDC or USDT from Ethereum

You deposit on Ethereum and the frUSD is minted to a Bitcoin address you name. The vault takes a flat fee used for gas on Ethereum, and then a percentage of the remainder, currently $1.99 plus 0.10%. Burning back out pays the same flat fee and the same percentage, so several small transactions to-and-from Ethereum are not recommended for economic purposes.

The minimum bridge amount is 10 frUSD: below it, the burn reverts rather than paying short.

In the app, choose USDC or USDT as what you are paying with and frUSD as what you are receiving. You will be asked to connect an Ethereum wallet and sign two transactions: an approval for exactly the amount you are depositing, and the deposit itself.

If you would rather drive it yourself, BTC/USD Commands prints the same two calls for you to sign in your own wallet.

A plain transfer to the vault is not a deposit

The deposit must be made through the bridge contract's own deposit call, which carries the instruction naming your Bitcoin address. Sending USDC or USDT to the vault address as an ordinary token transfer does not mint anything: it arrives with no instruction attached, and there is no automatic route back.

Option 3: Receive it

frUSD is an ordinary Alkanes token. Any wallet that handles Alkanes assets can hold, send, and receive it, and it shows up alongside your other balances.

What is live today

Being specific about status matters, so here is where each piece stands.

Status
The frUSD token on Bitcoin mainnet (4:1776)Live
Minting by bridging USDC/USDT from EthereumLive. If desired as a developer, the command line prepares the two Ethereum calls for you to sign in your own wallet
Burning frUSD back out to EthereumLive
Splitting part of a deposit into BTC on the way inLive. A split the network cannot execute pays plain frUSD instead, so read the notes on BTC/USD Commands before using it
Splitting part of a redemption into ETH on the way outLive. burn takes --to-eth-bps; a split the network cannot execute pays a plain stablecoin instead, so read the notes on BTC/USD Commands before using it

Where to go next

  • BTCUSD Pool: the frUSD/frBTC market itself, and what to know before trading it.
  • Swap: trade BTC against USD through the frUSD/frBTC pool.
  • Pools & Liquidity: what providing liquidity to that pool pays, and how its fee differs from a standard AMM pool.
  • BTC/USD Commands: read the pool, quote a trade, or prepare a bridge deposit from the command line.
  • frBTC Overview: the wrapped-BTC asset frUSD trades against, and how the two custody stories differ.
  • Every Stablecoin Has an Off-Switch. frUSD Doesn't.: the essay making the case for why a dollar that settles on Bitcoin is worth building. It argues the destination; this page documents what is built today.