Economics
IOTA Storage has no token of its own. The network uses IOTA for everything: to pay for storage and to stake on the storage nodes.
The network is on testnet and the prices below are test prices. They are the prices voted by the storage nodes and may change.
Paying for storage
Storage is paid in IOTA, in the same transaction that reserves the space and registers the blob (or renews it). The contract charges the exact amount from the payer's coin, which can be the gas coin itself. No swap and no other token are involved.
The price has two parts, both per unit of 1 MiB of encoded size, rounded up:
| Part | Current price | When |
|---|---|---|
| Storage | 1,000 nanos of IOTA per unit and epoch | When storing and when renewing. |
| Write | 2,000 nanos of IOTA per unit | Once, when storing. |
1 IOTA is 10⁹ nanos. The encoded size, with 100 shards, is about 4.4 times the size of the file plus about 0.6 MiB of metadata, so the smallest blob is already one unit. Examples:
| File | Encoded size | Units | 1 epoch | 5 epochs | 53 epochs |
|---|---|---|---|---|---|
| Up to a few KB | 0.63 MiB | 1 | 3,000 | 7,000 | 55,000 |
| 1 MiB | 5.06 MiB | 6 | 18,000 | 42,000 | 330,000 |
| 10 MiB | 44.96 MiB | 45 | 135,000 | 315,000 | 2,475,000 |
(Prices in nanos of IOTA.) Renewing costs only the storage part: units × storage price × epochs.
Small files are much cheaper together: a quilt stores up to 66 files as one blob, paying the fixed metadata once.
Limits
- At most 53 epochs per purchase (53 days on testnet). Renew to keep data longer.
- The largest blob is about 142 MiB (149,286,452 bytes) with 100 shards.
Gas
Each user pays the gas of their own transactions, in IOTA. Measured on testnet:
| Operation | Gas |
|---|---|
| Store a blob (register and certify) | about 0.006 IOTA |
| Renew or delete a blob | about 0.002 IOTA |
| Publish a site of 6 files | about 0.035 IOTA in total, almost all of it a deposit of about 0.005 IOTA per file that comes back when the site is destroyed |
Objects created on IOTA carry a storage deposit that comes back to whoever deletes them. Burning
an expired Blob, for example, costs almost nothing because its deposit comes back.
Sponsored gas (an IOTA Gas Station paying the gas of users) has been tested but is not part of the current network: everyone pays their own gas.
Where the payments go
Each payment is split into one reward pool per epoch of storage bought. At each change of epoch:
- 3 % of the pool of the epoch that closes goes to the project treasury;
- the rest goes to the storage nodes and to those who staked on them.
The commission of a slashed node also goes to the treasury (the Treasury object).
There is no emission and there are no subsidies from emission. Anyone can subsidize storage with
IOTA through the add_subsidy function of the contract.
Stake
- Storage nodes stake IOTA. The minimum is 1 IOTA per stake.
- Staked IOTA is locked, not spent. Today each of the 4 nodes has 1 IOTA of stake.
- IOTA staked on a storage node only earns its share of the storage payments. It does not also earn the rewards of native IOTA staking with a validator. Making it earn both (restaking) is on the roadmap.
- Staking by third parties, rewards and penalties are on the roadmap.
Treasury
The Treasury is a shared object (ID in Contracts). Anyone can deposit
into it; only the holder of the TreasuryAdminCap, the project, can withdraw. How the treasury
will be used and governed is not defined yet.