# eip-7201 namespaced storage provides structured collision avoidance for upgradeable contracts EIP-7201 defines a formula for computing non-colliding storage namespaces: each logical storage group gets its own deterministic slot range derived from a namespace identifier. This extends [[eip-1967 reserved storage slots prevent proxy implementation address collisions|EIP-1967's approach]] from just proxy metadata to all contract state, allowing multiple facets or modules to share proxy storage without collision risk. Since [[custom storage layouts enable powerful proxy patterns but manual slot math errors can corrupt data]], having a standardized derivation formula reduces the risk of manual computation errors. The pattern is particularly valuable for diamond proxy patterns (EIP-2535) and other multi-facet architectures where many implementation contracts write to shared storage. --- Relevant Notes: - [[eip-1967 reserved storage slots prevent proxy implementation address collisions]] — the predecessor this extends - [[custom storage layouts enable powerful proxy patterns but manual slot math errors can corrupt data]] — the custom layout feature this leverages - [[storage layout must remain consistent across proxy implementation versions]] — the fundamental constraint this helps satisfy Topics: - [[security-patterns]]