SwapSpace – Cross-Chain Crypto Swaps

Xverse wallet review: security, recovery, and the audit gap

Kate Powell

,

Updated: ,14 min

Xverse is a self-custodial Bitcoin wallet from Secret Key Labs Limited, a Hong Kong company, available as a Chrome extension and as iOS and Android apps. The wallet charges no installation or storage fee and adds no fee to an ordinary Bitcoin send. Third-party providers price purchases, swaps, and cross-chain services. Xverse’s own STX stacking pool deducts a management fee from rewards.

The wallet’s reach across Bitcoin is wide. Alongside BTC, it handles Ordinals, Runes and BRC-20 tokens, plus Stacks, Starknet, Spark and Lightning, and it issues a separate payment and Taproot addresses to reduce the risk of inscriptions or rare sats being selected as ordinary Bitcoin inputs.  

Test profile

Test date

August 19, 2026

Application version

Xverse 2.7.3, Chrome extension

Device and OS

Windows

Bitcoin addresses shown

Native SegWit and Nested SegWit

Recovery test

Completed — wallet restored successfully

Restore time

Under one minute


What we tested, and what we did not

We installed the Chrome extension on Windows, created a wallet from scratch, walked through the Send, Receive, Buy and Sell screens, recorded the provider quotes offered for a card purchase, then removed the extension, reinstalled it and restored the wallet from its recovery phrase.

We did not complete a card purchase, run a cross-chain payment, use the external swap web app, pair a hardware wallet, or test the mobile apps. Alongside the session, we read the published audit report, the security and privacy pages, the support knowledge base, and the public GitHub repositories. Anything drawn from those rather than from our own use carries a label saying so.

Xverse at a glance

Custody

Self-custodial. Secret Key Labs states it cannot freeze accounts, block transactions, or access funds, and that private keys are encrypted on the device.

Publisher

Secret Key Labs Limited, Hong Kong

Platforms

Chrome extension, iOS, Android

Version tested

2.7.3, Chrome extension, on Windows

Bitcoin addresses

Native SegWit, Nested SegWit, Taproot Address (bc1p) and Stacks Address (S)

Assets

BTC, Ordinals, Runes, BRC-20, Rare Sats, Stacks and SIP-10, Starknet, Spark, sBTC, Lightning, USDC and USDB

Hardware wallets

Extension: Ledger and Keystone

Mobile: Bluetooth-enabled Ledger devices

Source code

Extension, core library and Sats Connect open source under MIT published on GitHub. We found no public repository for the iOS or Android apps.

Published audits

Least Authority, August 27, 2021, covering the Stacks mobile wallet

Identity checks

None to create a wallet. Purchase and sale providers set their own.

Wallet fees

None charged by Xverse. Network fees and third-party charges apply.

Card purchases

Thirteen options, with providers compared for a better quote

Cash out

To bank card or SEPA transfer

In-wallet swap

BTC ↔ STX, processed by Changelly

Cross-chain payments

Handled by Flashnet


How to set up Xverse

Setup runs to four screens and finishes in under a minute.  

Tested on version 2.7.3, on August 19, 2026.

Step 1. Create a new wallet, or restore one

The extension opens on two buttons.

Screenshot: Xverse Chrome extension 

Step 2. Read the data-collection notice

The app warns that it will collect anonymous usage data to better understand users and improve the app, and states that the setting can be changed.  

Screenshot: Data collection warning

Step 3. Set and confirm the password

The password encrypts the private keys on the device.

Screenshot: Setting up password

Step 4. The wallet is created — with no backup

The wallet exists at this point, and it can receive funds. Xverse does not offer to show or back up the recovery phrase during setup, and does not require you to record it before the wallet becomes usable.

Screenshot: finalizing wallet creation 

The backup prompt arrives afterwards

When you next launch the extension, Xverse offers to back up the seed phrase.  

Screenshot: Backup reminder

How Xverse organises addresses

The Receive screen shows two Bitcoin addresses: a Native SegWit address and a Nested SegWit address.

Screenshot: Xverse Receive screen

According to Xverse’s documentation, the wallet separates asset families by address type, and holds Ordinals, Runes and BRC-20 tokens on a Taproot address distinct from the ones that carry spendable bitcoin. A wallet that pools every satoshi into a single balance can select a satoshi carrying a valuable inscription as an input to an ordinary payment, and the artifact leaves with the change. Separate derivation makes that structurally difficult.

How Xverse receives and sends bitcoin

The Send section carries three tabs.

Send to address takes a recipient address, an amount and a network fee. The fee is adjustable, with Medium and High priority levels selectable for faster confirmation.

Xverse’s support material explains that fees are quoted in satoshis per virtual byte and go to miners, with Secret Key Labs stating it neither controls nor profits from them. 

Transaction size, and therefore cost, depends on how many inputs and outputs a payment needs, so a balance made of many small pieces costs more to move than the same amount held in one. 

Xverse also notes that some wallets express the same rate in satoshis per weight unit, where one sat/vB equals 0.25 sat/WU — a rate copied between wallets without conversion is wrong by a factor of four.

Screenshot: Xverse Send screen

Lightning presents a single address line.

Screenshot: Lightning payment screen

Cross-chain switches between stablecoins on different networks, and carries a warning that the payment is handled through Flashnet.

Screenshot: Cross-chain payment screen

Three tabs, three settlement models, one Send button. On-chain waits for blocks, Lightning clears off-chain, and the cross-chain route depends on a third party most users will not have heard of and did not choose.  

How to buy bitcoin with a card in Xverse

Xverse does not sell bitcoin itself. It presents several options for buying crypto, one of which is a credit card transfer, and that route lets you pick from a list of available providers.

Screenshot: Xverse Buy screen

Wallets that wire in one on-ramp hide what the alternative would have cost; a wallet that lists competing providers turns the choice back into a decision, and on repeat purchases that decision compounds. Every provider on that list prices its own service, and the wallet serves a kind of a shop window.

The Buy screen offers an alternative labelled Pay with crypto, and selecting it hands you off to portfolio.xverse.app/swap, where you connect a wallet to start a transaction.

Screenshot: Xverse Swap app

Xverse’s own support documentation names Changelly as the provider behind cross-chain swaps, with slippage tolerance fixed at 10% and not adjustable.

How to cash out

The Sell screen moves BTC or stablecoins to a bank card or through SEPA transfer.

Screenshot: Xverse Sell screen

Both directions run through third parties. SEPA availability also implies a European corridor, which means the option set almost certainly changes by region.

How to swap 

Xverse has a swap screen, and it runs without handing you off anywhere. It does not convert between ecosystems. The pairs on offer stay on the Bitcoin chain, covering a defined set of Bitcoin-native assets. Ethereum, Solana and other networks do not appear as options, so anyone expecting to trade ETH for SOL here will not find the pairing.

Screenshot: Xverse Swap screen

A swap confined to one chain moves value within Bitcoin only. Anyone who wants to hold something else still has to exchange Bitcoin (BTC) through an outside service, and Xverse offers a route to do via third-party exchanges (through Changelly). 

Supported networks and assets

Xverse covers Bitcoin’s base layer and a set of chains built around it: BTC, Ordinals, Runes, BRC-20 tokens and Rare Sats on Bitcoin itself, then Stacks with its SIP-10 tokens, Starknet, Spark, sBTC and Lightning. Stablecoin support covers USDC and USDB, and the Send screen’s cross-chain tab moves stablecoins between networks.

Three qualifications matter.

Assets from other ecosystems arrive by conversion rather than storage. Holding Solana (SOL) or Ethereum (ETH) in native form still needs a second wallet.

The layers settle differently from one another. Bitcoin waits for blocks, Lightning clears off-chain, and Stacks and Starknet each run their own confirmation model. One interface covers several sets of rules about when money has actually arrived.

And the list grows. Xverse adds layers steadily, so check the app rather than any published set, this review included.

What else is in the app

Xverse has grown well past storage, and most additions bring in an outside party:

  • Earn products, covering Stacks staking through the Xverse pool, WBTC native staking through the Xverse validator, and BTC staking through Lombard. Xverse’s own site states that yield rates are variable and never guaranteed.
  • Xverse Cash, a tab for stablecoins and payments across Spark and Starknet.
  • Developer tooling: a public API, a Bitcoin RPC service, the Sats Connect library and an agent wallet for programmatic use.

That last item belongs in a review because it is a design choice rather than a bug. Every pop-up trains the user to dismiss a modal without reading it, and a wallet spends its remaining credibility on the modals that matter most — the ones asking for a signature. The habit is cheap to build and expensive to unlearn.

Note what the breadth costs elsewhere. Each integration is a place where code Xverse did not write asks for an approval, and the security posture of the wallet is only as good as the weakest of those. That is the trade the product makes deliberately, and it is a reasonable one, but it should be made with open eyes.

What you can verify yourself

This is where the marketing and the evidence part company.

  • Source code. Secret Key Labs publishes the browser extension, the core library and Sats Connect on GitHub. We found no public repository for the iOS or Android applications. For the browser extension, the source code is available under a custom non-commercial licence.
  • Audits — one, from 2021. We found one public third-party audit: Least Authority’s 2021 review of the then-current Stacks mobile wallet. We found no published report covering the present extension, Bitcoin-native assets, Starknet, Spark, Lightning, swaps, or provider aggregation.
  • Privacy — partly checkable. Xverse’s security page says the service does not track account addresses or balances. Its privacy policy is broader: it permits the collection of wallet addresses, transaction details, usage data, device identifiers, IP addresses, browser and operating-system data, and information processed by third-party features. These two official descriptions are not fully consistent.

None of this makes the wallet unsafe. It means the two assurances a careful user leans on hardest are weaker than they appear.

Security incidents

Date

What happened

Scale

Affected

Outcome

June 2023

A browser behaviour undermined the extension’s password encryption, so recovery phrases were written unencrypted to a local Chrome log file during onboarding.

Not quantified. Exposure required pre-existing malware or physical access to the machine.

Chrome extension users. Xverse states iOS and Android were unaffected.

Version 0.11.4 stopped the logging; 0.11.5 added a way to erase cached logs. Xverse reported no hacks, no exploits and no user losses, and published a migration guide.


One disclosed incident is a short public record, and Xverse handled it by issuing a first-party notice naming the cause, the affected versions, the conditions for exposure and the fix, published within a day.

The failure sat not in the cryptography but in an assumption about the environment beneath it — a password feature working as designed while the browser wrote the secret to disk anyway. Xverse noted that exposure required an already-compromised machine.

Recovery: does the backup work?

A backup nobody has tested is a hope. We removed the Chrome extension, reinstalled it on a Windows machine, and restored from the recovery phrase, stored the way a recovery phrase should be stored.

The restore flow asks which wallet to recover rather than assuming one.

Screenshot: Wallet restoration screen

Xverse uses the source-wallet selector to choose the derivation path used by the original client. Selecting the wrong source can produce unexpected addresses or an empty balance even when the recovery phrase itself is correct.

Seed phrase accepted

Yes

Time to restore

Under one minute

BTC address before removal

bc1qf6s…..yld7avwhj

BTC address after reinstallation

bc1qf6s…..yld7avwhj

Balance matched

Yes

Transaction history matched

Yes

Outcome

Wallet successfully restored


The addresses match character for character, and the balance and history came back with them. That is the result you want, and it is worth stating plainly because the section that matters most in any wallet review is the one that proves the exit works.

One caveat the test does not cover: we verified the Native SegWit address. Anyone holding Ordinals, Runes, or BRC-20 tokens should confirm the Taproot address separately after a restore, since that is where those assets live, and a matching BTC balance says nothing about them.

Where the interface confused us

The wallet exists before the backup does. Setup completes, the wallet can receive funds, and the recovery phrase has not been shown. The prompt arrives on the next launch and can be dismissed. Nothing in the flow marks the wallet as unbacked in the meantime, and the sequence quietly reverses the rule every wallet guide teaches.

Promotional modals compete with security prompts. Pop-ups appear often enough during ordinary use to become background noise.

Screenshot: Xverse promotional popups 

Strengths

  • Separate Bitcoin payment and Taproot addresses reduce the risk of accidentally spending inscriptions and rare sats.
  • The tested recovery restored the Native SegWit address, balance, and history in under a minute.
  • Buy quotes are compared across several providers rather than hidden behind one integration.
  • The wallet supports Bitcoin-native assets alongside Stacks, Starknet, Spark, Lightning, and stablecoin payment routes.
  • Xverse published a detailed first-party notice and remediation after its 2023 extension issue.

Limitations

  • The extension and core library are source-available under a restrictive non-commercial licence, not open source.
  • No official public mobile-client repository was found.
  • The only public third-party audit found dates to 2021 and predates most current features.
  • Xverse’s privacy marketing and privacy policy describe data collection differently.
  • Swap, payment, Lightning, purchase, sale, and yield functions depend on several external providers.
  • Setup allows the wallet to become usable before the recovery phrase is backed up.

Who Xverse suits, and who it does not

If you hold Ordinals, Runes or Rare Sats

The separate Taproot derivation is a structural protection for exactly these assets. A wallet that pools all satoshis can spend a valuable inscription as part of a fee, and no amount of care at the moment of sending reliably prevents it.

If you buy bitcoin with a card regularly

Thirteen options with a provider comparison does something most wallets do not: it lets you see what the alternatives quote instead of hiding them behind a single integration. On repeated purchases that visibility is worth more than interface polish.

If you read code before you trust it

The mobile apps have no public repository we could find, and the one published audit dates from 2021 and covers a product that no longer resembles this one. The extension is the only build you can inspect.

If you want a small attack surface

Purchases, sales, staking, cross-chain payments, an external swap app and an agent wallet all widen it, and the frequent promotional modals train exactly the reflex that a malicious prompt depends on. A wallet that only sends and receives bitcoin gives you fewer places to approve something you did not fully read.

If this would be your first wallet

The setup order argues against it. A wallet that becomes spendable before it shows you the recovery phrase puts the burden of noticing on someone who does not yet know what to notice.

Verdict

Xverse is strongest for users who actively manage Bitcoin, Ordinals, Runes, and other Bitcoin-native assets from one interface. Its recovery flow worked well in the tested Xverse-to-Xverse scenario, but its verification story is weaker than the “open source and regularly audited” marketing suggests. It is a feature-rich active-use wallet, not the clearest choice for users who prioritize a minimal attack surface, fully open client code, and recent audit coverage.

Alternatives

  • Exodus — holds Bitcoin alongside dozens of other assets, with a card on-ramp and live chat support inside the app. Its core application is closed source, so the trade against Xverse runs the other way: broader coverage and faster help, less to inspect. Choose Exodus over Xverse if you hold a mixed portfolio and value support response over Bitcoin-native asset handling.
  • Trust Wallet — covers Bitcoin, Ethereum, Solana and others from one recovery phrase, with card purchases in the app. It offers no Ordinals, Runes or BRC-20 handling, so anyone holding Bitcoin-native artifacts loses the address separation Xverse is built around. Worth noting that Trust Wallet’s browser extension suffered a confirmed compromise in December 2025, affecting version 2.68 and resolved in 2.69 — a category of event Xverse’s public record does not yet contain.
  • Rabby — built exclusively for EVM networks, with no Bitcoin support at all, so it is a complement rather than a substitute for most Xverse users. The reason to mention it here is audit posture: Rabby publishes a series of dated third-party reports, which is the standard against which Xverse’s single 2021 document should be read. Pick Rabby if your holdings are EVM-only and verifiability ranks above asset breadth.

Frequently asked questions

What does Xverse cost?

Nothing to install and nothing to hold assets in, and Secret Key Labs takes no cut of a wallet operation. You pay Bitcoin network fees on-chain, with adjustable priority levels on the send screen. Beyond that, third parties set their own charges: the purchase provider on a card buy, and Flashnet on a cross-chain payment.

Is Xverse safe to use?

It is self-custodial, and Xverse states it cannot freeze or access funds. One incident sits on the public record, from June 2023, when recovery phrases reached an unencrypted Chrome log; no losses were reported, and it was patched within days. Our recovery test passed cleanly. The weaker points concern verification rather than incidents.

Is Xverse open source?

It is partly open. The browser extension, the core library and Sats Connect appear on GitHub, and Xverse’s own 2023 security notice scopes the claim to the extension. We found no public repository for the iOS or Android apps, so mobile users cannot inspect the code they run. Xverse markets the product as open source, while the two main public wallet repositories use a restrictive custom licence.

Has Xverse been audited?

Once, publicly. Least Authority completed a report on August 27, 2021, covering what it described as a mobile wallet application for the Stacks blockchain. We found no published report covering Ordinals, Runes, provider aggregation or any Bitcoin layer added since. The phrase “regularly audited” rests on that single five-year-old document.

Why does Xverse show me two Bitcoin addresses?

The Receive screen lists a Native SegWit and a Nested SegWit address. Xverse separates asset families by address type, and its documentation places Ordinals, Runes and BRC-20 tokens on a Taproot address apart from spendable bitcoin, so a valuable inscription is never selected as an input to an ordinary payment and lost as change.

Can I swap coins inside Xverse?

Xverse has several conversion and payment routes rather than one universal swap engine. BTC-to-STX swaps run inside the wallet through Changelly. Runes swaps compare several marketplaces and liquidity providers. A separate web application handles conversions from external ecosystems such as Ethereum or Solana, while the Send screen’s cross-chain route is a stablecoin payment flow involving Flashnet.

Does Xverse require identity verification?

Not to create or hold a wallet — setup asks for a password, nothing more. Buying or selling is different, because those route through third-party providers that apply their own checks before releasing funds or money. Xverse states this on its own site rather than leaving you to discover it.

Does the recovery phrase restore everything?

In our test, yes for Bitcoin. We reinstalled the extension on Windows, entered the phrase, and the Native SegWit address matched character for character, with balance and history intact in under a minute. Holders of Ordinals or Runes should verify the Taproot address separately, since a matching BTC balance proves nothing about those.

Sources

All links checked on 19.08.2026.

Share:

Related Posts

Curious for more?

Join our newsletter — stay informed, stay empowered.