Live prices are currently unavailable — the exchange feed could not be reached and no recent cached reading is held.

Research · ICP

Cycles: the stable accounting unit

Cycles are what a canister spends. They are not a token and cannot be traded back into ICP; they exist to make the cost of computation stable in fiat terms while the price of the underlying token moves. Understanding that separation explains most of the network's economic design.

Last reviewed 2026-09-21Source: ICP Developer Docs — Cycles, cycles management and the cycles ledgerThe peg and the conversion mechanism are described; no exchange rate is quoted because it is set by the network and changes over time.

What a cycle is

A cycle is the unit in which the network charges for resources. It is not a token that circulates as an asset and it is not a claim on anything; it is a prepaid balance that a canister draws down as it runs. The documentation describes cycles as pegged to the IMF's Special Drawing Rights, so that the cost of a given operation stays stable in fiat terms even when the price of ICP moves.

That peg is the point of the design. A developer budgeting for a canister needs to know what a month of storage will cost, and a price denominated in a volatile token would make that impossible. By denominating the charge in a unit pegged to a basket of national currencies, the network separates the cost of computation from the market price of the network's own asset.

Cycles flow in one direction. The documentation is explicit that they can only be burned — consumed by canisters — and never converted back into ICP tokens. There is no redemption path, which means cycles are a consumable rather than an investment.

Conversion from ICP

Cycles are obtained by converting ICP tokens. The conversion happens through the Cycles Minting Canister, a system canister that accepts ICP and mints the equivalent value in cycles at the current XDR exchange rate. The rate is set by the network rather than by a market, which is what keeps the peg meaningful.

Once minted, cycles are held by principals through the cycles ledger, a system canister that provides a shared balance and complies with the ICRC-1, ICRC-2 and ICRC-3 standards. That means cycles can be transferred, approved and spent using the same interfaces as any other token on the network, which is what makes programmatic funding practical: a canister can hold a cycles balance and top up another canister without a human in the loop.

The ledger exposes operations for depositing attached cycles, withdrawing to a canister, and creating a canister funded from a ledger balance. The documentation notes a minimum deposit and a fee on deposit, which is worth knowing before designing an automated top-up that moves small amounts frequently.

Cycle burn

A canister burns cycles continuously. Storage is charged per byte per second, so a canister with state burns cycles even when it receives no messages. Compute is charged as instructions execute. Messaging is charged per request and response. The result is an idle burn rate that a canister's status reports directly, which is the figure an operator watches when deciding how much to top up.

The documentation distinguishes the main balance from a reserved balance. When a canister allocates storage on a subnet above a certain usage level, cycles are moved from the main balance into a reserved balance, and a setting caps how large that reserve may grow. This is a mechanism for keeping a large canister solvent against its own storage commitments rather than a fee in the ordinary sense.

The reverse-gas model page covers who bears these charges and how compute allocation changes the profile. The short version is that the canister pays, and the burn is what makes that a real budget rather than a formality.

Freezing thresholds

A canister does not fail the moment its balance reaches zero. The freezing threshold is a setting that defines how long a canister can survive on its current balance while idle. When the balance would fall below the estimated cost of running for that many seconds, the canister is frozen: it stops processing update calls but still serves query calls.

The default threshold is thirty days, and the documentation recommends a longer one for production canisters or those with large stable memory. The reason is that a frozen canister is recoverable — it can be topped up and resumed — while a canister whose balance is fully exhausted and whose threshold has expired is uninstalled. Its code and data are deleted, and only metadata such as the canister ID, controllers and settings remain.

That asymmetry is the practical lesson of the cycles model. The freezing threshold is not a warning light; it is the mechanism that converts a funding lapse from a permanent loss into a temporary outage. An operator who sets it generously is buying time to notice and react.

Sources and references

The unit, the conversion mechanism, the ledger and the freezing threshold are described from the Internet Computer's own documentation. No exchange rate or price is quoted, because both are set by the network and change over time.

  • Cycles, the peg and the cycles ledger. ICP Developer Docs, Cycles: describes the XDR peg, the Cycles Minting Canister, the cycles ledger and the one-way flow of cycles.
  • Freezing, uninstallation and cycle management. ICP Developer Docs, Cycles management: documents the freezing threshold, the default value, and what happens when a canister is uninstalled.
  • Reserved cycles and canister settings. ICP Developer Docs, Management canister: lists the settings fields, including the reserved-cycles limit and the freezing threshold default.