You write up to 80 bytes — roughly 80 characters, fewer if you use emoji or accented letters. You pay 1999 sats. Within a minute of your payment, a transaction carrying your message is signed and broadcast by this site's own wallet. It confirms with the next block, usually ten minutes later.
Your message is encoded as UTF-8 and written into a script of the form OP_RETURN <push> <your bytes>. The 80-byte limit follows widely used standard relay policy. Larger data outputs may not be relayed or mined, so this tool refuses them.
The transaction spends from this service's wallet, pays the miner fee from that wallet, and returns the change to it. The OP_RETURN output itself carries zero value — you pay for the space, not for an amount. Messages are paid for over Ark or Lightning, which settle in seconds; the message transaction itself is always on-chain, because that is the only place an OP_RETURN can live.
The price is the service fee plus the miner fee at the feerate this site's node reports when you order. There is no account, no login, and no identifier linking the message to you: a different address pays each order, and this site stores only your message and its transaction id.
The plain truth about permanence: a confirmation makes the message part of the chain, but nothing stops someone from copying it, and nothing on chain is confidential. Do not put secrets in it.
The five newest readable messages. Tap one to see it whole.
Loading…
The same service is a public API, with no key:
POST https://pay.satoshi.si/opreturn/v1/orders
{ "message": "hello", "viaSatoshi": false }
GET https://pay.satoshi.si/opreturn/v1/orders/<id>
GET https://pay.satoshi.si/opreturn/v1/config
GET https://pay.satoshi.si/opreturn/v1/latest
The order answers with the rail destinations and the amount. Poll it until state is published, then read opReturnTxid.