Skip to the swap

Sell $DOG for Bitcoin safely

The coin your $DOG rides on

Your $DOG lives on ordinary Bitcoin coins. One small coin, often a few hundred sats, can be carrying tens of thousands of $DOG. Selling means spending that coin, and because a coin cannot be partly spent, the whole of what it carries goes into the transaction whether you meant to sell all of it or not. Something then has to send the remainder back to you.

That something is an instruction written into the transaction itself, a runestone, saying which rune moves, how much, and to which output. It costs almost nothing and every indexer reading Bitcoin executes it the same way. Get it right and the remainder comes home in a fresh coin. Get it wrong and it does not bounce: a malformed runestone burns every rune in the transaction.

This is why the site decodes that instruction and proves the totals from the bytes before the sign button will arm, rather than trusting that the build was assembled correctly. The mechanics of that decode are in what is a PSBT.

You still need spendable BTC, even though you are selling

This is the single most useful sentence in this guide, and it surprises almost everyone.

On a sell you contribute very little Bitcoin. In the measured swap below, the seller contributed exactly one input: the 546 sat coin carrying the runes. The venue funded the rest of the transaction. And yet the payment address still needs genuinely spendable BTC or the transaction will not build at all, failing with "not enough UTXOs". Keep at least 10,000 sats there. A wallet holding a fortune in $DOG and nothing spendable in its payment address cannot sell any of it.

What the review proves before you sign

The review screen is not a summary. It is a decode of the actual transaction you are about to sign, read out of its bytes, and on a sell there are four things worth checking on it.

A real sell, in numbers

From 2026-08-31, the first live swap made through this site, 10,000 $DOG sold for Bitcoin:

Two things to take from that. The seller funded almost none of it, and the 3.9 percent gap was not a hidden charge: it is the cost of the size against a thin pool plus the miner, and the review shows exactly that gap, in sats and against your limit, before anything is signed.

Size is where a sell goes wrong

The pool behind $DOG on Bitcoin is thin, and selling into it is where that bites hardest. The cost of your order grows faster than the order does. A small sell gives up a couple of percent against the going rate. A large one can give up a large fraction of the whole position, and the venue will quote that price without a word of warning.

A holder with a serious position can destroy their own sale in a single tap. That is not hypothetical; it is what the measurements of this pool show, and it is the reason this site was built the way it was. So:

We do not publish a table of what each size costs, because that number is a property of the pool at the moment you ask and this pool moves. Ask for a quote at the size you have in mind and read what you would receive. If that is less than you hoped, a smaller sell, or the same sell broken up over time, is usually the answer.

Two clocks are running

The price is good for 35 seconds, the venue's own window, after which the card fetches a fresh one rather than let you sign against a dead price. Separately, once the transaction is built you have about 30 seconds to sign, and that clock starts at the build and includes the time you spend reading the review. A countdown runs on the button and disarms it at zero.

Neither expiry costs you anything. Nothing was signed, nothing was sent, and no $DOG moved. You ask again. The buy guide goes into why these two are separate.

After you sign

Your wallet hands back a signed transaction and the venue broadcasts it. From that moment it is an ordinary Bitcoin transaction: it is final when a block includes it, usually about 10 minutes, and you can close the page because it completes without you.

The pending state is tracked against Bitcoin itself, with a link to a public block explorer, rather than against the venue's own order status. That is deliberate. We probed that status endpoint and it answers with a single word, no transaction id, no height and no amounts, which is strictly less than the chain will tell you for free. The chain is the truth and it is public.

What this site never does

It never holds your $DOG or your BTC, never sees a private key or a seed phrase, and cannot sign anything. There is no account and no balance held on your behalf, so there is nothing to withdraw and nothing for us to freeze. Signing happens in your wallet, on your machine. Our whole job is to tell you the truth about what you are about to sign, and to refuse to show you a button when we cannot.

When you are ready, start a swap, and open the review before you touch your wallet.

Questions

Can selling burn my $DOG?

A malformed runestone burns every rune in the transaction, which is why that instruction is decoded and its totals proved from the bytes before the button will arm. If the decode does not add up exactly, the build is refused rather than passed to your wallet.

Why can I not sell when I clearly hold $DOG?

Almost always because the payment address has no spendable BTC. The transaction still has to be built and pay a miner even though the venue funds most of it. Keep 10,000 sats in the payment address and it builds.

Do I have to sell the whole coin my $DOG sits on?

No. The coin is spent in full because a coin cannot be split, but the runestone sends the remainder back to you in a fresh coin, and the review shows you exactly how much is leaving and how much is coming home before you sign.

Why is my sell price worse than the headline price?

Because a headline price is for an order of no size. Yours has size, and the pool is thin, so your own order moves the price it gets. The card prices your exact size, so what it shows you receiving already has that inside it.

Where do my sats arrive?

In your own payment address, in the same transaction that takes the $DOG. There is no settlement step afterwards and nothing to claim. When the block confirms, it is done.