A Monero subaddress is an extra receiving address that your wallet creates from the same seed. Everything sent to it lands in the same balance, but each subaddress looks like a separate, unrelated address to the outside world. On the main Monero network, a standard address starts with 4 and a subaddress starts with 8. The Monero documentation calls subaddresses the default you should use to receive Monero. This guide explains why, how they differ from integrated addresses, and what to watch for when you restore.
- A subaddress is another door into the same wallet. Money goes to one balance and one recovery phrase.
- Give each payer or purpose its own subaddress so they cannot link their payments to each other.
- Integrated addresses and payment IDs are mainly for services. Individuals are advised to use subaddresses.
- When you restore from seed, a wallet scans only so far ahead for subaddresses. Check your balance if you use many.
The short answer
Your wallet starts with one main address. From the same seed it can derive a huge number of subaddresses, each with its own public keys. Anyone can pay any of them. The wallet recognises payments to all of them without you doing anything extra, and every payment still lands on a one-time stealth address on the chain.
Why use a different subaddress per payer
Stealth addresses already stop the blockchain from linking your payments. Subaddresses cover a different gap: the people who pay you. If you give one address to everybody, every payer sees the same address. They cannot see your wallet, but they can compare notes, and they can tell that this address is the one you use for everything.
The Monero documentation lists the main reasons to hand out separate subaddresses:
- Knowing what a payment is for. Each anticipated payment gets its own subaddress, so you can see which invoice or person it belongs to. MonkStash payment links and the merchant tools do this for you.
- Keeping payers from linking payouts. If a client pays you every month, giving them a fresh subaddress each time makes it harder for them to link your payouts together.
- No extra fields to forget. Unlike a payment ID, the subaddress itself carries the information.
One subaddress per person or purpose. Rent, a client, a shop order, a donation page. It costs nothing and you never have to explain it.
Standard, subaddress and integrated addresses
Monero has three address types you will meet on the main network. The first character is a quick way to tell them apart.
| Type | Looks like | Best for |
|---|---|---|
| Standard | Starts with 4, 95 characters | Your main address, quick sharing |
| Subaddress | Starts with 8, 95 characters | Separating payers and purposes |
| Integrated | Starts with 4, 106 characters | Services that need a payment ID |
If you are unsure which kind an address is, paste it into the Monero address validator to check that it is well formed. Note that a network byte decides the first character: the documentation gives 42 for mainnet subaddresses, 18 for standard addresses and 19 for integrated ones, which is why they start with different characters.
Accounts vs subaddresses
Wallets organise subaddresses in two levels. Every subaddress has two numbers, an account index and a subaddress index, both starting at 0. The Monero documentation defines accounts as a wallet-level grouping of subaddresses under one label and balance. An account has no address of its own.
- Account 0, subaddress 0 is your main address, the standard one.
- Subaddresses within an account are the extra addresses you hand out.
- Extra accounts are useful to run separate balances in one wallet, for example personal and business. Many simple wallets show only account 0.
Most people only ever need subaddresses inside the default account. Accounts add organisation, not privacy: they all come from the same seed and the same view key.
What is a Monero payment ID?
A Monero payment ID is a short tag attached to a payment so a service can match it to a customer. Monero used to allow a long, 64-character payment ID in a transaction's extra field. That caused problems: it could link a person's payments if reused, users forgot to add it and needed support, and only one could be attached per transaction. Long payment IDs were removed from Monero in version 0.15, so you cannot use them anymore, as the Moneropedia entry on payment IDs confirms.
What remains is the integrated address: a standard address with an 8-byte payment ID built in, 106 characters long. The ID is encrypted so outsiders cannot link the payment to the address. Integrated addresses suit businesses and automated payment systems. For individuals, the documentation recommends subaddresses, and the 2019 deprecation notice warned that integrated addresses could be phased out too and advised services to move to subaddresses.
Why do some exchanges still ask for one? Because an exchange often receives every customer's deposits into one wallet, and the payment ID is how its software knows whose deposit is whose. Moving to a subaddress per customer takes engineering work, so some services keep the older method.
How to create one in MonkStash
- Open and unlock your walletGo to your MonkStash wallet and unlock it with your password.
- Find the Receive card on the dashboardIt shows your current address and a QR code.
- Choose New addressThe wallet derives the next unused subaddress from your seed, on your device.
- Copy it and share it with one payerPay attention to the first character. A subaddress starts with 8.
- Label it somewhere you will find itWrite down who or what it is for. The wallet cannot guess that for you.
Any payment sent to that address arrives in your normal balance. For the full receiving walkthrough, see how to receive Monero.
How many can you have
There is no practical ceiling. According to the Monero documentation, the account index and the subaddress index are each 32-bit unsigned integers, so each range holds billions of values. Making a thousand subaddresses does not slow down the network, because the chain never sees them, only the one-time addresses made from them.
There is a wallet-side limit, though, and it matters most on restore.
Restoring and the lookahead window
When you restore from your recovery words, the wallet does not know how many subaddresses you made. It has to guess, so it pre-computes a window of subaddresses and watches for payments to any of them. In Monero's own wallet code, that default window is 50 accounts and 200 subaddresses per account. Other wallets may use different numbers.
Most people never hit that limit. It becomes relevant if you created a subaddress far beyond the end of the numbers you have used, say number 500 while only a handful exist, and later restore on a new device. A payment to a subaddress outside the window may not show up until the wallet looks further.
- Create subaddresses in order, without skipping far ahead.
- After a restore, compare the balance with what you expect. A missing payment to a high-numbered subaddress is a hint about this.
- If a payment is missing, create or reveal the lower-numbered subaddresses again, or restore in a wallet that lets you widen the window.
We recommend testing a restore with a small amount before relying on a large number of subaddresses. The wallet-side behaviour of your own tools is the part you should always confirm yourself. For the restore process itself, see how to restore a Monero wallet.
What subaddresses do not do
Subaddresses are a good habit, not a shield. Be honest with yourself about what they cannot do.
- They are not separate wallets. They share one seed and one view key. Anyone with your view key can see payments to all of them.
- They do not beat a service that records you. The Monero documentation points out that if you have an account with a service, its database links your payouts regardless of how many addresses you use.
- They have a known weakness against colluding services. The documentation describes the Janus attack, where colluding services target one address at a time. For perfect unlinkability, it recommends a separate seed, meaning a separate wallet.
Planned changes to Monero's addressing, collectively called Carrot, are described by the developers as staying backward compatible with existing addresses, so the addresses you use today are expected to keep working. Check the project's announcements before assuming anything about timing.
To learn the mechanics behind why your chain history stays private, read Monero stealth addresses. To set up a wallet and make your first subaddress, open MonkStash. The official page is in the Monero documentation.
Frequently asked questions
What is a Monero subaddress?
A subaddress is an extra receiving address derived from the same wallet and seed. Payments to it arrive in the same balance, but to anyone looking from outside it appears as a different address with no visible link to your others.
Why does my Monero subaddress start with 8?
On the main Monero network, standard addresses start with 4 and subaddresses start with 8. The first character comes from a network byte at the start of the address that marks its type.
What is the difference between a subaddress and an integrated address?
A subaddress is a separate address you create to tell payers apart. An integrated address is a standard address with a short payment ID built in, used mostly by services to match deposits to customers. Individuals are advised to prefer subaddresses.
How many subaddresses can I create?
There is no practical limit. Account and subaddress numbers are 32-bit values, which allows billions. The limit you may notice is how far your wallet scans ahead when you restore from seed.
What is a Monero payment ID?
A payment ID is a short tag that lets a service match an incoming payment to a customer. The long 64-character kind was removed in Monero 0.15. Today the only form is an 8-byte encrypted ID built into an integrated address, and subaddresses do the same job more simply.
Do I need a Monero payment ID?
Almost never. Long payment IDs were removed from Monero in version 0.15. Short 8-byte IDs still exist inside integrated addresses, but a subaddress does the same job without extra fields to forget.
Is a new subaddress for every payment worth the trouble?
It is cheap and helps keep payers from linking each other. For private life, a new one per person or purpose is a good habit. For a shop or an invoice, one per order is common.
If I give two people the same subaddress, can they see each other's payments?
No. They cannot see your wallet. They can only learn that the other exists if they compare notes, or if one of them can see a view key. Different subaddresses make that comparison impossible by looking at the addresses alone.
Are my funds safe if I restore a wallet that used many subaddresses?
Your funds are tied to the seed, not to the addresses. If a restore does not find a payment sent to a subaddress with a high number, it is usually because the wallet only checks a limited window ahead. Ask the wallet to look further, or create the earlier addresses again.
Sources
Primary sources behind the facts in this guide.