Live · Non-Custodial · 100% Open Source

The Monero web wallet that
lives in your browser.

Open your XMR from any device, on any network, with no installs. Every cryptographic operation runs locally in your browser — your seed phrase never crosses the wire.

MyMonero's web wallet is gone — it migrated to Cake Wallet, a mobile-only app. Monero Web is the open-source browser alternative.

Keys never leave the device Zero downloads Zero trackers MIT licensed
No wallet left behind

Every Monero seed format. One wallet.

Most browser wallets only handle one mnemonic standard. We support all four — including the legacy 13-word seeds nobody else has touched in years.

12 WORDS

BIP-39

Standard hardware-wallet mnemonic. PBKDF2-SHA512 → SLIP-0010 derivation along the Monero coin path m/44'/128'/0'.

Trezor · Ledger · Cake
13 WORDS

MyMonero Legacy

The 12-data + 1-checksum format used by MyMonero since 2014. Your old seed still works here, in any browser, forever.

MyMonero · Edge
16 WORDS

Polyseed

Modern compact format with embedded wallet birthday and forward-compatible feature flags. GF(2¹¹) checksum, 4-char prefix matching.

Feather · Monero GUI 0.18+
25 WORDS

Monero Standard

The original 24-data + 1-checksum format from monero-wallet-cli. Available in 13 languages, all loaded locally.

monerod · GUI · CLI
How it works

Three steps. No accounts. No emails.

There is nothing to sign up for. Open the page, paste your seed, and your wallet is loaded.

01

Enter your seed

Type or paste any of the four supported mnemonics — or a raw private spend key in hex. We auto-detect the format from the word count.

02

Keys derive locally

Your browser runs Keccak-256, ed25519 scalar mult, and the full key derivation chain. The page never makes a single network request that could leak your seed.

03

Use your wallet

See your address, generate subaddresses on demand, watch live network height from public Monero nodes, and receive payments via QR code.

Why trust it

Built the way a wallet should be built.

No frameworks. No build pipeline. No package supply chain to compromise. Just hand-written, auditable JavaScript and a few HTML files.

Keys stay local

Your seed and private keys are derived inside your browser tab. They are never serialised, never logged, never sent anywhere — not even to us.

Readable source

Plain HTML and JavaScript. No webpack, no minifier, no hidden transforms. Open DevTools and read the exact code that touches your keys.

Zero dependencies

The crypto engine is hand-written: Keccak-256, ed25519, base58, all four mnemonic codecs, BIP-39 / SLIP-0010, and polyseed. No npm tree to audit.

54 / 54 tests passing

The key derivation engine is verified against test vectors from the official Monero source for all 13 supported wordlist languages.

What's inside

Everything you need to receive XMR today.

Subaddress generation

Create unlimited account/index pairs to keep payments unlinkable.

Live network status

Daemon height, fee estimate, and tx-pool size from a pool of public Monero nodes.

QR-code receive

Generated client-side. The address never touches a third-party QR service.

Create new wallets

Generate a fresh 25-word seed in any of 13 languages using the browser's CSPRNG.

Import by private key

Skip the mnemonic and paste a 64-char hex spend key directly.

// monero-keys.js — derived locally in your tab
async function deriveFromAnyMnemonic(seed) {
  const count = seed.split(/\s+/).length;
  if (count === 12) return deriveFromBip39(seed);
  if (count === 13) return deriveMyMonero(seed);
  if (count === 16) return derivePolyseed(seed);
  if (count === 25) return deriveStandard(seed);
}

// → spendKey, viewKey, publicKeys, address
// Nothing leaves the browser. Ever.
FAQ

The honest answers.

If you have a question we haven't answered here, open an issue on GitHub.

Is this actually non-custodial?

Yes. Your seed and private keys never leave your browser tab. The wallet only talks to the network for read-only RPC calls (block height, fee estimate) — and those calls don't include any of your keys. You can verify this in DevTools → Network.

How is this different from MyMonero?

MyMonero was a light-wallet service: a server scanned the blockchain on your behalf using your view key. We run the same architecture — our self-hosted light-wallet server (monero-lws) scans the blockchain using your view key so you can see balances and send transactions. Your spend key never leaves your browser. The key difference: our server is self-hosted on infrastructure we control, and the entire stack (site + node + LWS) is open source and self-hostable.

Can I send XMR from here?

Yes. The wallet uses a light-wallet server (monero-lws, running on our self-hosted VPS) to scan the blockchain for your spendable outputs, then constructs and signs the transaction entirely in your browser using WebAssembly. Your spend key never leaves your browser tab — the server only sees your view key (for scanning) and the final signed transaction hex (for broadcasting). This is the same architecture MyMonero used for 12 years.

Why a web wallet at all? Aren't they less secure?

A web wallet you can read the source of is no less secure than a desktop app you can read the source of — both run code the developer wrote on hardware you control. The real risk with web wallets is supply-chain compromise. We mitigate that by having zero npm dependencies, no build pipeline, and serving static files with a strict CSP. You can also clone the repo and serve it locally.

Which browsers are supported?

Anything modern with SubtleCrypto and BigInt — Chrome, Firefox, Safari, Brave, Edge, Tor Browser. No special permissions, no extensions.

Are you going to add a token, NFT, or premium tier?

No. The wallet is MIT-licensed, free, and will stay that way. There is no token, no fee, no premium plan. If you want to support the project, star it on GitHub or contribute code.

Ready to open your wallet?

It takes about three seconds. There's nothing to install and no account to create.

Open Monero Web →