# ICRC1 Archive Canisters - Freeze Threshold

**URL:** https://forum.dfinity.org/t/icrc1-archive-canisters-freeze-threshold/41565
**Category:** Rust
**Tags:** icrc
**Created:** [February 24, 2025, 3:33pm UTC](https://forum.dfinity.org/t/icrc1-archive-canisters-freeze-threshold/41565 "2025-02-24T15:33:44Z")
**Posts on this page:** 4
**Page:** 1

<div class="post-metadata">

### Author: ![ckPaul](https://avatars.discourse-cdn.com/v4/letter/c/ccd318/32.png) [@ckPaul](https://forum.dfinity.org/u/ckPaul)
#### Post date: [February 24, 2025, 3:33pm UTC](https://forum.dfinity.org/t/icrc1-archive-canisters-freeze-threshold/41565/1 "2025-02-24T15:33:45Z")

</div>

The archive canisters of ICRC-1 ledgers are minted automatically after X transactions (trigger threshold). What I don’t understand is whether they already have a set freeze threshold value.

Since I think I won’t be their controller, I would have trouble modifying this parameter. I’m referring to the official ICRC1-2-3 Wasm file found in the token creation guide of dfinity.

What worries me the most is that, in the future, all transactions - or even worse, the token balances in users wallets -could be wiped out because this parameter is not preset.

I’d appreciate any guidance!

---

<div class="post-metadata">

### Author: ![mathiasb](https://avatars.discourse-cdn.com/v4/letter/m/f475e1/32.png) [@mathiasb](https://forum.dfinity.org/u/mathiasb)
#### Post date: [February 24, 2025, 4:56pm UTC](https://forum.dfinity.org/t/icrc1-archive-canisters-freeze-threshold/41565/2 "2025-02-24T16:56:08Z")

</div>

The ledger spawns an archive by [calling `create_canister` with the default canister creation arguments](https://github.com/dfinity/ic/blob/0f590b5aa1772e7ded9e73c6ad583749f1bde23a/rs/ledger_suite/common/ledger_canister_core/src/spawn.rs#L47). [The default freezing threshold is approximately 30 days](https://internetcomputer.org/docs/current/developer-docs/smart-contracts/maintain/settings#freezing-threshold).

When a ledger spawns an archive, the controller of the newly-spawned archive will be the same as that of the ledger. E.g., for [the ckBTC archive](https://dashboard.internetcomputer.org/canister/nbsys-saaaa-aaaar-qaaga-cai), the controller is the NNS root canister, the same as the controller of [the ckBTC ledger](https://dashboard.internetcomputer.org/canister/mxzaz-hqaaa-aaaar-qaada-cai).

Making sure that the ledger and archive canisters do not runs out of cycles and get wiped, is nothing specific to ledger suite canisters. One way to facilitate the management is to use a service such as [CycleOps](https://forum.dfinity.org/t/meet-cycleops-proactive-automated-no-code-canister-management-for-the-internet-computer/20969).

---

<div class="post-metadata">

### Author: ![ckPaul](https://avatars.discourse-cdn.com/v4/letter/c/ccd318/32.png) [@ckPaul](https://forum.dfinity.org/u/ckPaul)
#### Post date: [June 24, 2025, 3:42pm UTC](https://forum.dfinity.org/t/icrc1-archive-canisters-freeze-threshold/41565/3 "2025-06-24T15:42:07Z")

</div>

Thank you Mathias! Just to follow up:  
if the auto-archive trigger fails due to insufficient cycles, will the ledger automatically retry the `create_canister` call once there are enough cycles available again? Or would a manual intervention still be needed in that case?

Appreciate your guidance!

---

<div class="post-metadata">

### Author: ![mathiasb](https://avatars.discourse-cdn.com/v4/letter/m/f475e1/32.png) [@mathiasb](https://forum.dfinity.org/u/mathiasb)
#### Post date: [June 25, 2025, 7:51am UTC](https://forum.dfinity.org/t/icrc1-archive-canisters-freeze-threshold/41565/4 "2025-06-25T07:51:54Z")

</div>

If there are not enough cycles to create an archive, the ledger would retry. The archiving logic is run after each transaction, i.e., there is not automatic retry on a timer or heartbeat.
