An Ethereum wallet you actually own

Signing is done on your device. Your passkey’s private key never goes to Vela.

Or self-host the whole stack

Why we built it

We used Base Account (now part of Coinbase Wallet) every day and liked it. Then we hit the walls: a recovery phrase created on a website you just have to trust, no custom networks, nothing you can host yourself, and a signing service whose code isn’t public — if it goes away, there is no published way for your passkey to reach your account.

Vela is the version we were willing to keep money in. We kept passkey signing, but made sure the wallet doesn’t depend on us.

The long version — what we couldn’t accept in other wallets, and the trade-off we chose

The trade-offs, up front

Three reasons not to use Vela — while your money is still somewhere else.

  1. 1Every transaction pays a relay fee on top of the gas

    A Vela transaction verifies your passkey signature on-chain and runs through ERC-4337, so it uses several times the gas of a plain transfer.

    You pay one fee, to the relay that submits your transaction — Vela’s unless you change it. It is three times the gas the wallet reserves, priced for the speed you choose, with a $0.01 minimum (how it’s worked out); the relay pays the gas from it and keeps the rest. You see the exact amount before you sign, and it can’t change afterwards.

    You can point the wallet at another relay or run your own, and the fee then goes to whoever runs it.

  2. 2Every key is a way into your wallet

    You choose up to seven keys when you create the wallet, and they can’t be changed afterwards.

    Vela is 1-of-n: any one of those keys can spend from the wallet on its own. Each extra key is another way back in if you lose one — and another key you have to protect.

  3. 3The contracts are audited; Vela’s own code is not

    Your wallet runs on Safe v1.4.1 and Safe’s passkey and ERC-4337 modules, unmodified, and all of them have published third-party audits — which find problems but can’t prove there are none left.

    Vela’s own apps and services have not had a third-party audit, and none is scheduled. The code is public for anyone to read.

If one of those three is unacceptable to you, Vela is not for you yet.

How Vela compares

VelaMetaMaskBase Account
Account typeSafe v1.4.1 smart accountEOA; upgraded to a smart account (EIP-7702) by default for new usersCoinbase smart account
Full self-hostingApps and backend services, with gaps the self-hosting guide lists; passkeys stay tied to getvela.appClient and RPC are yours to choose or runNot available
Source codeApps and services public, all MITPublic, under a licence that allows non-commercial use onlyContracts and SDK open; the signing service is not
Custom networksAny EVM network that meets Vela's requirements; you can deploy most missing contracts yourselfCustom EVM networks and RPCsA fixed list of networks
Signing keyPasskeys or security keys, up to sevenThe private key behind a seed phrase; hardware wallets supportedPasskey or recovery phrase
Adding a key laterNot possible — keys are fixed at creationNot possible — one key per accountSupported
Losing one keySign with another key you added or syncedRestore from the seed phraseSign with another key you added or synced
Transaction gasERC-4337 overhead, plus a relay fee that is a multiple of the gasA plain transaction's gasERC-4337 overhead
Sponsored gasNot offeredOn some networksWhere the app sponsors it
Batched transactionsSupportedSupported through its EIP-7702 smart accountSupported
Decoded before signingSupportedSupportedSupported
An extra checkThe Trusted Signer: an independent page that decodes and signs on its own, if you choose itThird-party risk alerts—
MaturityNew, few usersYears in the market, a large user baseMaintained by Coinbase

Free and open. Pay only if you want to.

You pay for convenience, not for access.

Web, browser extension and desktop

Free

iPhone and Android, built yourself

Free

iPhone and Android, from the stores

One-time purchase · coming soon

24 networks built in. Add your own

  • Ethereum
  • BNB Chain
  • Polygon
  • Arbitrum
  • Optimism
  • Base
  • Avalanche
  • Gnosis
  • Unichain
  • Tempo
  • Monad
  • World Chain
  • Arc
  • X Layer
  • Stable
  • Soneium
  • MegaETH
  • Robinhood Chain
  • Mantle
  • Kaia
  • Celo
  • Ink
  • Plume
  • XRPL EVM

Your wallet has the same address on every network. When you add another EVM chain, Vela checks that it has the EIP-7951 / RIP-7212 precompile and the Safe and ERC-4337 contracts it needs. If some contracts are missing, chain setup shows which, and deploys the ones anyone can deploy.

Networks & fees, in detail

FAQ

Can I run all of it myself?

Yes, except the domain your passkeys belong to. The apps and every service behind them — the relay, the public-key index, chain data and exchange rates — are MIT-licensed and run on Docker or Cloudflare Workers, and the apps have settings to point at your own. The self-hosting guide walks through each one, including the gaps some apps still have.

The passkeys are bound to getvela.app, so a copy of the web wallet on your own domain is a different wallet. The browser extension and apps you build yourself still sign for your existing one.

What if Vela shuts down or getvela.app goes offline?

Your funds stay in your Safe on-chain. Every service Vela runs is open source, and you can run each one yourself — the relay, the public-key index, chain data and exchange rates.

If getvela.app goes offline, the Vela browser extension still signs with your existing keys — this device’s passkey, a security key, or a phone by QR code — and so do apps you build yourself, with a phone or a security key.

Can I run my own relay?

Yes: vela-relay, in Rust, on Docker or Cloudflare Workers. Fund its treasury with each chain’s coin and put its URL in the wallet. The fee you sign then goes to your own treasury, so across your wallet and your relay you pay roughly the real gas.

It has to be vela-relay: the wallet asks for its fee quote with a method generic ERC-4337 bundlers don’t implement.

Which keys can I use?

Passkeys — synced by iCloud Keychain, Google Password Manager or another password manager — another phone by QR code, and FIDO2 hardware security keys: one to seven, chosen when you create the wallet and fixed after that. Any one of them can sign (1-of-n). A single key that isn’t synced, such as one security key, needs a second.

No seed phrase, email or starting balance.

What if I lose a key, or my Apple or Google account is compromised?

A synced passkey comes back on your new device. An unsynced key that is lost is gone, so you sign with another key you added; if it was your only key, the wallet is lost.

If an account that syncs one of your passkeys is compromised, whoever controls it may be able to spend from your wallet — and keys can’t be removed. Move your funds to a new wallet made with keys that don’t depend on that account. Hardware security keys avoid that dependency from the start.

Can I use Vela with dApps?

Yes. dApps see Vela the way they see any browser wallet.

That works in the Vela browser extension and in the browser built into the desktop (macOS, Windows), iPhone and Android apps. The web wallet doesn’t connect to dApps.

What can Vela do to my money, and what does it know about me?

Vela holds no key and no role on your wallet, so it can’t move or freeze your funds by itself. It does write the software that asks your keys to sign.

There’s no email or account. Your public keys, the kind of authenticator behind each, your key labels, wallet name and address are public on-chain; Vela’s services see your IP address and the transactions you send through them. Token issuers can still blocklist addresses.