Monero - Addresses

Author silverpill
Status Draft
Type Informational
Created 2023-09-01
Requires CAIP-10


For context, see the CAIP-10 specification.


CAIP-10 defines a pattern for identifying an account in a blockchain. Monero chains use UTXO model and Monero addresses are functionally similar to accounts in other namespaces.


Monero has several types of addresses: standard address, subaddress and integrated address. Any address contains network and address type identifiers, public spend key, public view key, a checksum, and may contain additional data depending on the address type. Note that the Base58-monero encoding algorithm is used to encode the address from a byte array into a string; it uses the same alphabet as base58btc but should not be decoded using base58btc libraries due to the additional padding step to normalize string length.

CAIP-10 “accounts” should not be confused with Monero accounts, which are used in Monero wallets for grouping related addresses and transactions.


Monero CAIP-10 account ID is a case-sensitive string in the form:

account_id:        chain_id + ":" + address
chain_id:          See Monero CAIP-2 profile
address:           [a-zA-Z0-9]{95,106}

The syntax of chain_id is specified in Monero CAIP-2.

Test Cases

This is a list of manually composed examples:

# Monero mainnet standard address

# Monero mainnet integrated address

# Monero private testnet subaddress

Additional Considerations

In the future new types of Monero addresses will be introduced. They will likely be longer and may exceed the 128 character limit set in CAIP-10 specification.


Copyright and related rights waived via CC0.


Please cite this document as:

silverpill, "namespaces/monero-caip10: Monero - Addresses [DRAFT]," Chain Agnostic Namespaces, monero-caip10, September 2023 / . [Online serial]. Available: