Coinbase’s XRP holdings fell from ~970 million to ~99 million in three months, an 89.79% decline driven by sustained off-chain transfers from 52 cold wallets to six active wallets, raising questions about institutional custody or private movements while on-chain destinations remain unidentified.
Coinbase XRP holdings fell ~89.79% in three months.
Only six cold wallets remain active, each holding ~16.5 million XRP.
XRP market capitalization remains ~ $183 billion despite large reserve outflows.
Coinbase XRP holdings plunged ~90% from 970M to 99M; read the data-driven update and implications for custody and market activity. Learn more.
‘,
‘
🚀 Advanced Trading Tools Await You!
Maximize your potential. Join now and start trading!
‘,
‘
📈 Professional Trading Platform
Leverage advanced tools and a wide range of coins to boost your investments. Sign up now!
‘
];
var adplace = document.getElementById(“ads-bitget”);
if (adplace) {
var sessperindex = parseInt(sessionStorage.getItem(“adsindexBitget”));
var adsindex = isNaN(sessperindex) ? Math.floor(Math.random() * adscodesBitget.length) : sessperindex;
adplace.innerHTML = adscodesBitget[adsindex];
sessperindex = adsindex === adscodesBitget.length – 1 ? 0 : adsindex + 1;
sessionStorage.setItem(“adsindexBitget”, sessperindex);
}
})();
Coinbase’s XRP reserves dropped from approximately 970 million to 99 million in three months, according to blockchain tracking and wallet analytics.
- Coinbase’s XRP reserves fell from 970 million to 99 million in three months, marking an 89.79% reduction.
- Only six cold wallets remain active at Coinbase, each holding approximately 16.5 million XRP.
- XRP’s market capitalization remains stable at $183 billion, despite Coinbase’s significant off-chain transfers.
What happened to Coinbase’s XRP holdings?
Coinbase XRP holdings fell from roughly 970 million XRP across 52 cold wallets in June to about 99 million XRP across six wallets by mid-September. The 89.79% reduction reflects repeated transfers to unknown destinations and a concentration of balances into fewer cold wallets.
How did Coinbase’s XRP reserves fall by 89.79%?
Blockchain analytics (reported by XRPWallets as plain-text source) show multiple large transfers during the summer. Coinbase’s ten largest cold wallets previously held ~26.8 million XRP each; those balances were moved or consolidated. Recent moves included a 16.5 million XRP transfer valued at roughly $51.4 million.
‘,
‘
🔒 Secure and Fast Transactions
Diversify your investments with a wide range of coins. Join now!
‘,
‘
💎 The Easiest Way to Invest in Crypto
Dont wait to get started. Click now and discover the advantages!
‘
];
var adplace = document.getElementById(“ads-binance”);
if (adplace) {
var sessperindex = parseInt(sessionStorage.getItem(“adsindexBinance”));
var adsindex = isNaN(sessperindex) ? Math.floor(Math.random() * adscodesBinance.length) : sessperindex;
adplace.innerHTML = adscodesBinance[adsindex];
sessperindex = adsindex === adscodesBinance.length – 1 ? 0 : adsindex + 1;
sessionStorage.setItem(“adsindexBinance”, sessperindex);
}
})();
On-chain records confirm the outflows but do not identify final custodians. Possible explanations include transfers to institutional custody providers, private vaults, or off-exchange custody solutions. No official statement from Coinbase confirms the destination or intent.
The concentration and rapid depletion of visible exchange reserves can signal changes in liquidity and custody demand. Despite the outflows, XRP’s market capitalization remains near $183 billion, indicating market value held steady amid reserve movement.
Large off-exchange transfers can reduce on-exchange liquidity, potentially affecting short-term order book depth. However, without confirmed sell-side action, market impact is speculative. The data simply documents transfers and reduced on-exchange balances.
‘
];
var adplace = document.getElementById(“ads-htx”);
if (adplace) {
var sessperindex = parseInt(sessionStorage.getItem(“adsindexHtx”));
var adsindex = isNaN(sessperindex) ? Math.floor(Math.random() * adscodesHtx.length) : sessperindex;
adplace.innerHTML = adscodesHtx[adsindex];
sessperindex = adsindex === adscodesHtx.length – 1 ? 0 : adsindex + 1;
sessionStorage.setItem(“adsindexHtx”, sessperindex);
}
})();