This feels like a silly question, but I'm wondering...

If I have an existing permissioned chain running on Substrate with a token and a large number of holders, can I safely transition the application (with all state transition histories) to a parachain?

My knowledge of substrate is somewhat limited, but it seems like migrating the transaction state held within my validators would prevent this unless the entire chain state is migrated to the relay chain (Polkadot).

The only way forward I can see is create a new parachain application, and have current token holders exchange tokens 1:1 for the new parachain token with a freshly maintained state.

Thoughts here are greatly appreciated.

2 Answers 2


One alternative is take a storage snapshot of current solo chain, and write into spec.genesis.raw. The detail of implementation refers to fork-off-substrate



This guide is a work in progress at his time, outline for now with more details soon to come, as ironman said, an incremental runtime and storage migration to progressively populate your parachain is suggested. More info https://docs.substrate.io/reference/how-to-guides/parachains/prepare-to-launch/

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.