Get a custom Monero wallet address with your prefix. Perfect for businesses, donation pages, and anyone who wants a memorable XMR address.
123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyzYou'll create a payment invoice β generation starts after payment is confirmed on-chain.
Waiting for payment confirmationβ¦
β οΈ Save these immediately. We do not store your keys. After this page is closed, they cannot be recovered. Export to a secure location now.
A vanity address is a Monero wallet address that starts with a custom prefix you choose β like "4XMR", "4Shop", or "4Donate". It's the Monero equivalent of a personalized license plate. The address is fully functional and indistinguishable from any other Monero address β it's just more memorable.
For example, instead of 46zE6o3G..., your business could accept payments at 4Shop6o3G....
Yes. A vanity address is a standard Monero address β it's generated using the same cryptographic algorithms (Ed25519 + keccak). It works with the official Monero CLI/GUI wallet, Cake Wallet, Monerujo, Feather Wallet, MyMonero, and any wallet that supports importing seeds or private keys.
The only difference is that the first few characters happen to spell something meaningful. Under the hood, it's identical to any other Monero address.
Generation time scales exponentially with prefix length because we brute-force random seeds until one produces a matching address:
Actual times vary based on server load and luck β you might get lucky and find it faster!
No. Your privacy is fully preserved. The vanity address is generated using a random seed, just like any other Monero wallet. Here's what we do and don't know:
Want extra peace of mind? After receiving your address, move your funds to a new wallet generated on your own device. The vanity address still worked for the initial branding purpose.
Monero addresses use Base58 encoding β a set of 58 characters designed to avoid visual ambiguity. Valid characters are:
123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz
Characters excluded to prevent confusion: 0 (zero, looks like O), O (uppercase O, looks like 0), I (uppercase I, looks like l), l (lowercase L, looks like I).
If we cannot generate your address within the maximum allocated time (5Γ the estimate), we'll refund your payment minus a small processing fee (network fee only). However, this is extremely rare β the probability of not finding a match within 5Γ the expected attempts is less than 0.7%.
For 5+ character prefixes, we'll contact you with a custom quote before you pay.
A Monero address is a 95-character Base58 string encoding a pair of Ed25519 public keys plus network and checksum bytes. Every address contains:
| Byte | Field | Description |
|---|---|---|
| 0 | Network Byte | 0x12 = Mainnet | 0x2A = Subaddress |
| 1β32 | Public Spend Key | 32-byte Ed25519 public key (used for key images) |
| 33β64 | Public View Key | 32-byte Ed25519 public key (used for stealth addressing) |
| 65β68 | Checksum | First 4 bytes of Keccak-256 hash of bytes 0β64 |
The 69 raw bytes are encoded with Base58 (which expands ~36%), giving the final 95-character address. The first character is always 4 (mainnet) or 8 (subaddress) β which is why vanity prefixes can only start from character position 2 onward for mainnet, or position 1 for subaddresses.
Why does this matter for vanity addresses? Because we're brute-forcing random private keys and deriving the corresponding public keys, the prefix we match is the Base58 representation of the final address. We can match any valid Base58 sequence at any position β the network byte constraint only affects the very first character.
We take security seriously. Here's exactly how the generation process works, so you can make an informed decision:
monero-python / monero-wallet-cli)Want something more custom? Need a 5+ character prefix?
π§ Contact for Custom Quote