Overview of Accounts
An Algorand Account is a fundamental entity on the Algorand blockchain, representing an individual user or entity capable of holding assets, authorizing transactions, and participating in blockchain activities. Accounts on the Algorand blockchain serve several purposes, including managing balances of Algos, interacting with smart contracts, and holding Algorand Standard Assets.
An Algorand account is the foundation of user interaction on the Algorand blockchain. It starts with the creation of a cryptographic key pair:
- A private key, which must be kept secret as it is used to sign transactions and prove ownership of the account.
- A public key, which acts as the account’s unique identity on the blockchain and is shared publicly as its address.
The public key is transformed into a user-friendly Algorand address — a 58-character string you use for transactions and other blockchain interactions. For convenience, the private key can also be represented as a 25-word mnemonic, which serves as a human-readable backup for restoring account access. Refer to Keys and Signing to understand on how transformation happened from public key to algorand address.
An address is just an identifier, while an account represents the full state and capabilities on the blockchain. An address is always associated with one account, but an account can have multiple addresses through rekeying.
Account Types:
Algorand accounts fall into two broad categories: Standard Accounts and Smart Contract Accounts.
Standard Accounts
Accounts are entities on the Algorand blockchain associated with specific on-chain data, like a balance. Standard accounts are controlled by a private key, allowing users to sign transactions and interact with the blockchain. After generating a private key and corresponding address, sending Algos to the address on Algorand will initialize its state on the Algorand blockchain.
Single Signature Accounts
Single Signature Accounts are the most basic and widely used account type in Algorand, controlled by a single private key. Transactions from these accounts are authorized through a signature generated by the private key, which is stored in the transaction’s sig
field as a base64-encoded string. When a transaction is signed, it forms a SignedTransaction
object containing the transaction details and the generated signature. These accounts can be created as standalone key pairs, typically represented by a 25-word mnemonic, or managed through the Key Management Daemon, where multiple accounts can be derived from a master key.

Attributes
Minimum Balance
Every account on Algorand must have a minimum balance of 100,000 microAlgos. If a transaction is sent that would result in a balance lower than the minimum, the transaction will fail. The minimum balance increases with each asset holding the account whether the asset was created or owned by the account and with each application, the account created or opted in. Destroying a created asset, opting out/closing out an owned asset, destroying a created app, or opting out of an opted-in app decreases the minimum balance accordingly.
Account Status
The Algorand blockchain uses a decentralized Byzantine Agreement protocol that leverages pure proof of stake (Pure POS). By default, Algorand accounts are set to offline, meaning they do not contribute to the consensus process. An online account participates in Algorand consensus. For an account to go online, it must generate a participation key and send a special key registration transaction. With the addition of staking rewards into the protocol as of v4.0, Algorand consensus participants can set their account as eligible for rewards by including a 2 Algo fee when registering participation keys online. Read more about Registering an account online.
Other Attributes
Other attributes of account are as follows: Additional metadata and properties associated with accounts:
Asset & Application Management
assets
: List of Algorand Standard Assets (ASAs) held by the account.createdAssets
: Assets created by this account.totalAssetsOptedIn
: Number of opted-in ASAs.totalCreatedAssets
: Number of ASAs created.createdApps
: Applications (smart contracts) created by this account.totalAppsOptedIn
: Number of opted-in applications.totalCreatedApps
: Number of applications created.
Account Status & Participation
status
: Current status (Offline
,Online
, etc.).deleted
: Whether the account is closed.closedAtRound
: Round when the account was closed.participation
: Staking participation data (for consensus nodes).incentiveEligible
: Whether the account is eligible for incentives.
Balances & Rewards
minBalance
: Minimum required balance (microAlgos).pendingRewards
: Pending staking rewards.rewards
: Total rewards earned.rewardBase?
: Base value for reward calculation.
Metadata
round
: Last seen round.createdAtRound
: Round when the account was created.lastHeartbeat
: Last heartbeat round (for participation nodes).lastProposed
: Last round the account proposed a block.sigType
: Signature type used (sig
,msig
,lsig
).
Box Storage
totalBoxBytes
: Total bytes used in box storage.totalBoxes
: Number of boxes created.
Multisignature Accounts
Multisignature accounts in Algorand are structured as an ordered set of addresses with a defined threshold and version, allowing them to perform transactions and participate in consensus like standard accounts. Each multisig account requires a specified number of signatures to authorize a transaction, with the threshold determining how many signatures are needed. Multisignature accounts cannot be nested within other multisig accounts.
Smart Contract Accounts
Smart Contract Accounts do not have private keys; instead, they are controlled by on-chain logic. They can hold assets and execute transactions based on pre-defined conditions.
Smart Signature Accounts (Contract Accounts):
Smart Signature Accounts are Algorand accounts controlled by TEAL logic instead of private keys. Each unique compiled smart signature program corresponds to a single Algorand address, enabling it to function as an independent account when funded. These accounts authorize transactions based on predefined TEAL logic rather than user signatures, allowing them to hold Algos and Algorand Standard Assets. Since they are stateless, they do not maintain on-chain data between transactions, making them ideal for lightweight, logic-based transaction approvals. However, its recommended to use use smart signatures only when absolutely required as smart signatures require the logic to be supplied for every transaction.
Application Accounts (Smart Contracts):
Application accounts are automatically created for every smart contract (application) deployed on the Algorand blockchain. Each application has a unique account, with its address derived from the application ID. These accounts can hold Algos and Algorand Standard Assets (ASAs) and can also send transactions (inner transactions) as part of smart contract logic.
Special Accounts
Two accounts carry special meaning on the Algorand blockchain: the FeeSink and the RewardsPool. The FeeSink is where all transaction fees are sent. The FeeSink can only be spent on the RewardsPool account. The RewardsPool was first used to distribute rewards to balance holding accounts. Currently, this account is not used.
In addition, the ZeroAddress AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAY5HFKQ
is an address that represents a blank byte array. It is used when you leave an address field blank in a transaction.
Check the fee sink and reward pool addresses in Network section to know more.
Wallets
In the context of Algorand developer tools, wallets refer to wallets generated and managed by the Key Management Daemon process. A wallet stores a collection of keys. kmd stores collections of wallets and allows users to perform operations using the keys stored within these wallets. Every wallet is associated with a master key, represented as a 25-word mnemonic, from which all accounts in that wallet are derived. This allows the wallet owner only to need to remember a single passphrase for all of their accounts. Wallets are stored encrypted on disk.
HD Wallets
Hierarchical Deterministic wallets, following the ARC-0052 standard, provide an advanced method for key management. HD wallets derive keys deterministically from a single master seed, ensuring consistent addresses across different implementations. Using the Ed25519 algorithm for key generation and signing, they support BIP-44 derivation paths. It allows private key and mnemonic-based account generation, enabling deterministic recovery, automated address creation, and compatibility with Algorand’s address formats.
Wallets
In Algorand, a wallet is a system for generating, storing, and managing private keys that control accounts.
-
Key Management Daemon (KMD) Wallets:
- Managed by Algorand’s Key Management Daemon (kmd), these wallets store multiple accounts and allow signing transactions securely. Each wallet is protected by a 25-word mnemonic, from which all accounts are derived. Wallets are encrypted and stored on disk.
-
Popular Mobile Wallets:
- Pera: Non-custodial, user-friendly wallet with a built-in dApp browser.
- Defly: Designed for DeFi users, offering DEX support, insights, and multi-sig security.
- HesabPay: Global mobile payment app for top-ups, cash-outs, bill payments, and transfers.
- Exodus: iOS and Android mobile wallet solution.
-
Popular Web Wallets:
- Lute Wallet: Web-based Algorand wallet.
- Exodus: Chrome/Browser-based extension wallet.
-
Hardware Wallet:
- Ledger: Secure offline storage for Algo and other crypto assets.