Parameters - Algorand Specifications

Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Algorand Specifications

The Algorand Ledger is parameterized by the values in the following tables.

For each parameter, the tables provide the reference implementation name and the last update version, to facilitate the match of the specifications and the implementation.

Parameter Current Value Unit Description Reference Implementation Name Last Update Version
BmaxBmax 5,242,8805,242,880 bytes Maximum number of transaction bytes in a block MaxTxnBytesPerBlock v33
ΔtmaxΔtmax 2525 seconds Maximum difference between successive timestamps MaxTimestampIncrement v7
VmaxVmax 128128 bytes Maximum length of protocol version strings MaxVersionStringLen v12
BNe,maxBNe,max 3232 Maximum number of expired participation accounts in block header MaxProposedExpiredOnlineAccounts v31
BNa,maxBNa,max 3232 Maximum number of suspended participation accounts in block header Payout.MaxMarkAbsent v40
Parameter Current Value Unit Description Reference Implementation Name Last Update Version
Bb,baseBb,base 10,000,00010,000,000 μALGO Bonus to be paid when block rewards first applies Bonus.BaseAmount v40
Bb,startBb,start round Earliest round block rewards can apply Bonus.BaseRound v40
Bb,decayBb,decay 1,000,0001,000,000 rounds Time in rounds between 1% decays of the block rewards bonus component Bonus.DecayInterval v40
hbbitshbbits 55 bits Frequency of online account challenges, about hbr×2hbbitshbr×2hbbits rounds Payouts.ChallengeBits v40
hbgracehbgrace 200200 rounds Active challenge round lookback for the response interval [r−2hbgrace,r−hbgrace] Payouts.ChallengeGracePeriod v40
hbrhbr 1,0001,000 rounds Online account challenges interval, it defines the challenges frequency Payouts.ChallengeInterval v40
Bp,feeBp,fee 2,000,0002,000,000 μALGO Minimum keyreg transaction fee to be eligible for block rewards Payouts.GoOnlineFee v40
Ar,maxAr,max 70,000,000,000,00070,000,000,000,000 μALGO Maximum balance an account can have to be eligible for block rewards Payouts.MaxBalance v40
Ar,minAr,min 30,000,000,00030,000,000,000 μALGO Minimum balance an account must have to be eligible for block rewards Payouts.MinBalance v40
Bp,%Bp,% 5050 % Percent of fees paid in a block that go to the proposer instead of the FeeSink Payouts.Percent v40
UrUr 1,000,0001,000,000 μALGO Size of an earning unit RewardUnit v7
ωrωr 500,000500,000 rounds Rate at which the reward rate is refreshed RewardsRateRefreshInterval v7
Parameter Current Value Unit Description Reference Implementation Name Last Update Version
δxδx 140,000140,000 rounds Default number of rounds needed to prepare for an upgrade DefaultUpgradeWaitRounds v20
δxmaxδxmax 250,000250,000 rounds Maximum number of rounds needed to prepare for an upgrade MaxUpgradeWaitRounds v39
δxminδxmin 10,00010,000 rounds Minimum number of rounds needed to prepare for an upgrade MinUpgradeWaitRounds v22
ττ 9,0009,000 Number of votes needed to execute an upgrade UpgradeThreshold v7
δdδd 10,00010,000 rounds Number of rounds over which an upgrade proposal is open UpgradeVoteRounds v7
Parameter Current Value Unit Description Reference Implementation Name Last Update Version
δSPδSP 256256 rounds Number of rounds between state proofs StateProofInterval v34
ISPISP 1010 Number of state proof intervals that the network will try to catch-up with StateProofMaxRecoveryIntervals v34
KQSPKQSP 256256 bits Security parameter for State Proof StateProofStrengthTarget v34
NSPNSP 1,0241,024 Maximum number of online accounts included in the vector commitment of state proofs participants StateProofTopVoters v34
δSP,bδSP,b 1616 rounds Delay in rounds for online participant information committed to in the block header for State Proof StateProofVotersLookback v34
fSPfSP 232×30100232×30100 Fraction of participants proven to have signed by a State Proof StateProofWeightThreshold v34
Parameter Current Value Unit Description Reference Implementation Name Last Update Version
TxTailmaxTxTailmax 1,0001,000 Length of the Transaction Tail
KΔr,maxKΔr,max 16,777,21516,777,215 rounds Maximum voting range in a keyreg transaction, defined as (256×216)−1 MaxKeyregValidPeriod v31
GTmaxGTmax 1616 txn Maximum number of transactions allowed in a group MaxTxGroupSize v18
TΔr,maxTΔr,max 1,0001,000 rounds Maximum difference between last valid and first valid round, defines transaction lifespan in the pool MaxTxnLife v7
Tfee,minTfee,min 1,0001,000 μALGO Minimum processing fee for any transaction MinTxnFee v7
Tm,maxTm,max 1,0241,024 bytes Maximum length of a transaction note field MaxTxnNoteBytes v7
Parameter Current Value Unit Description Reference Implementation Name Last Update Version
KeyDilutionKeyDilution 10,00010,000 rounds Granularity of top-level ephemeral keys, equal to the number of second-level keys in each batch DefaultKeyDilution v7
bminbmin 100,000100,000 μALGO Minimum balance requirement (MBR) for an account MinBalance v9
AccAsa,maxAccAsa,max 00 (unlimited) Maximum number of assets per account MaxAssetsPerAccount v32
AccApp,maxAccApp,max 00 (unlimited) Maximum number of applications created per account MaxAppsCreated v32
AccApp,optin,maxAccApp,optin,max 00 (unlimited) Maximum number of applications opted-in per account MaxAppsOptedIn v32
MBRmaxMBRmax 00 (unlimited) μALGO Maximum MBR of an account MaximumMinimumBalance v32
Parameter Current Value Unit Description Reference Implementation Name Last Update Version
Asad,maxAsad,max 1919 Maximum decimal precision of the asset supply MaxAssetDecimals v20
Asan,maxAsan,max 3232 bytes Maximum length of asset name MaxAssetNameBytes v18
Asau,maxAsau,max 88 bytes Maximum length of asset unit (symbol) MaxAssetUnitNameBytes v18
Asar,maxAsar,max 9696 bytes Maximum length of asset URL MaxAssetURLBytes v28
Parameter Current Value Unit Description Reference Implementation Name Last Update Version
LSigc,maxLSigc,max 20,00020,000 opcodes Maximum opcode cost for LSig LogicSigMaxCost v18
LSigmaxLSigmax 1,0001,000 bytes Maximum combined length of LSig program and LSig arguments LogicSigMaxSize v18
Parameter Current Value Unit Description Reference Implementation Name Last Update Version
Appoptin,bminAppoptin,bmin 100,000100,000 μALGO MBR for opting in to a single application AppFlatOptInMinBalance v24
Appcreate,bminAppcreate,bmin 100,000100,000 μALGO MBR for creating a single application AppFlatParamsMinBalance v24
Boxbyte,bminBoxbyte,bmin 400400 μALGO / byte MBR per byte of box storage BoxByteMinBalance v36
Boxflat,bminBoxflat,bmin 2,5002,500 μALGO MBR per box created BoxFlatMinBalance v36
BoxIOBoxIO 2,0482,048 bytes Box read and write payload per reference BytesPerBoxReference v41
BoxmaxBoxmax 32,76832,768 bytes Maximum size of a box MaxBoxSize v36
Apparg,maxApparg,max 1616 Maximum number of arguments for an appl transaction MaxAppArgs v24
AppBox,maxAppBox,max 88 Maximum number of box references for an appl transaction MaxAppBoxReferences v36
Appv,maxAppv,max 128128 bytes Maximum length of a bytes value used in an application’s state MaxAppBytesValueLen v28
Appk,maxAppk,max 6464 bytes Maximum length of a key used in an application’s state MaxAppKeyLen v24
Appc,maxAppc,max 700700 opcodes Maximum cost of application Approval or ClearState application program MaxAppProgramCost v24
Appprog,maxAppprog,max 2,0482,048 bytes Maximum length of application Approval or ClearState program page MaxAppProgramLen v28
Appkv,maxAppkv,max 128128 bytes Maximum sum of the lengths of the key and value of one app state entry MaxAppSumKeyValueLens v28
Appay,maxAppay,max 2,0482,048 bytes Maximum sum of the lengths of argument for an appl transaction MaxAppTotalArgLen v24
Appprog,t,maxAppprog,t,max 2,0482,048 bytes Maximum combined length of application Approval and ClearState programs MaxAppTotalProgramLen v24
Appr,maxAppr,max 88 Maximum number of references for an appl transaction MaxAppTotalTxnReferences v24
Appacc,maxAppacc,max 88 Maximum number of account references for an appl transaction MaxAppTxnAccounts v41
Appapp,maxAppapp,max 88 Maximum number of application references for an appl transaction MaxAppTxnForeignApps v28
Appasa,maxAppasa,max 88 Maximum number of asset references for an appl transaction MaxAppTxnForeignAssets v28
Appaccess,maxAppaccess,max 1616 Maximum number of resources access list for an appl transaction MaxAppAccess v41
Apppage,maxApppage,max 33 Maximum extra length for application program in pages MaxExtraAppProgramPages v28
AppGS,maxAppGS,max 6464 Maximum number of key/value pairs of application global state MaxGlobalSchemaEntries v24
AppLS,maxAppLS,max 1616 Maximum number of key/value pairs of application local state MaxLocalSchemaEntries v24
AppitxnAppitxn 1616 txn Maximum number of inner transactions for an appl transaction MaxInnerTransactions v30
Appb,bminAppb,bmin 25,00025,000 μALGO Additional MBR for []bytes values in application state SchemaBytesMinBalance v24
Apps,bminApps,bmin 25,00025,000 μALGO MBR for key-value pair in application state SchemaMinBalancePerEntry v24
Appu,bminAppu,bmin 35,0035,00 μALGO Additional MBR for uint64 values in application state SchemaUintMinBalance v24
  1. KQSP=256 is the value set for State Proofs of type 00. Other types of State Proofs might be added in the future. KQSP=targetPQ is set to achieve post-quantum security for State Proof. For further details, refer to the State Proofs normative specification.