Runes Mover
Move, split or consolidate rune-bearing UTXOs via a runestone PSBT validated through a roundtrip to prevent any burn.
→ Open the tool · ← All tools
What this tool does
The Runes Mover builds the OP_RETURN runestone required for a rune transfer. Edicts are decoded and re-encoded to verify the transaction will sign exactly what you expect — no cenotaph, no accidental burn.

When to use it
- Send a rune to an address.
- Split a rune into several sub-amounts.
- Consolidate several UTXOs of the same rune.
- Recover padding from an over-sized rune UTXO (deep-link #recover-padding).
Auto-selection (deep-link #recover-padding)
When you open the Runes Mover from the Wallet Dashboard's “Recover padding” CTA, two independent criteria are combined and their union is pre-selected:
- Excessive padding: any rune UTXO worth more than 546 sats (i.e. > 216 sats above the strict 330-sat dust). Consolidating it back to a 330-sat output reclaims the surplus to the payment wallet.
- Fragmentation: as soon as the same rune (by name) sits on ≥ 2 UTXOs, all of that rune's UTXOs are selected. Consolidating N UTXOs of one rune reclaims (N−1) × 330 sats of padding — different runes are never merged, each rune keeps its own dedicated output to stay individually sellable.
The Details dialog shows the UTXO count next to each rune name (e.g. BEES•TO•A•BILLY (3)) so you can see the fragmentation at a glance before signing.
Prerequisites
- Wallet + Discord + Ordiscan.
Step-by-step
- Enriched list of rune UTXOs (name, quantity, decimals).
- Filter by rune name or outpoint.
- Select the UTXOs to move, choose the destination.
- Split mode: 1 to RUNES_SPLIT_MAX outputs.
- Fee-from-padding mode: saves a payment input.
- Check the RunesIntegrityChecks (allRunesChecksOk must be green).
- Sign via Xverse.
Edge cases
- Alkanes: excluded (no runestone support).
- BRC-20 locked: excluded.
- Missing rune metadata: warning, signing discouraged.
- Cenotaph detected: signing blocked.
Safeguards
- Edicts roundtrip decode + compare.
- No signing if allRunesChecksOk = false.
- Destination defaults to your ordinals address (prevents accidentally sending to payment).
Sources & server
Ordiscan via the getRuneInfos server fn + mempool.space. In demo: getDemoRuneInfos from the snapshot.
