cast storage

Get the raw value of a contract’s storage slot

$ cast storage --help
Usage: cast storage [OPTIONS] <ADDRESS> [SLOT]

          The contract address

          The storage slot number

  -b, --block <BLOCK>
          The block height to query at.
          Can also be the tags earliest, finalized, safe, latest, or pending.

  -r, --rpc-url <URL>
          The RPC endpoint
          [env: ETH_RPC_URL=]

          Use the Flashbots RPC URL with fast mode ( This shares the transaction privately with all registered builders.

      --jwt-secret <JWT_SECRET>
          JWT Secret for the RPC endpoint.
          The JWT secret will be used to create a JWT for a RPC. For example, the following can be used to simulate a CL `engine_forkchoiceUpdated` call:
          cast rpc --jwt-secret <JWT_SECRET> engine_forkchoiceUpdatedV2 '["0x6bb38c26db65749ab6e472080a3d20a2f35776494e72016d1e339593f21c59bc", "0x6bb38c26db65749ab6e472080a3d20a2f35776494e72016d1e339593f21c59bc",
          [env: ETH_RPC_JWT_SECRET=]

  -e, --etherscan-api-key <KEY>
          The Etherscan (or equivalent) API key
          [env: ETHERSCAN_API_KEY=]

  -c, --chain <CHAIN>
          The chain name or EIP-155 chain ID
          [env: CHAIN=]

  -h, --help
          Print help (see a summary with '-h')

Cache options:
          Clear the cache and artifacts folder and recompile

Build options:
          Disable the cache

Linker options:
      --libraries <LIBRARIES>
          Set pre-linked libraries
          [env: DAPP_LIBRARIES=]

Compiler options:
      --ignored-error-codes <ERROR_CODES>
          Ignore solc warnings by error code

          Warnings will trigger a compiler error

          Do not auto-detect the `solc` version

      --use <SOLC_VERSION>
          Specify the solc version, or a path to a local solc, to build with.
          Valid values are in the format `x.y.z`, `solc:x.y.z` or `path/to/solc`.

          Do not access the network.
          Missing solc versions will not be installed.

          Use the Yul intermediate representation compilation pipeline

          Don't print anything on startup

      --evm-version <VERSION>
          The target EVM version

          Activate the Solidity optimizer

      --optimizer-runs <RUNS>
          The number of optimizer runs

      --extra-output <SELECTOR>...
          Extra output to include in the contract's artifact.
          Example keys: evm.assembly, ewasm, ir, irOptimized, metadata
          For a full description, see

      --extra-output-files <SELECTOR>...
          Extra output to write to separate files.
          Valid values: metadata, ir, irOptimized, ewasm, evm.assembly

Project options:
  -o, --out <PATH>
          The path to the contract artifacts folder

      --revert-strings <REVERT>
          Revert string configuration.
          Possible values are "default", "strip" (remove), "debug" (Solidity-generated revert strings) and "verboseDebug"

          Generate build info files

      --build-info-path <PATH>
          Output path to directory that build info files will be written to

      --root <PATH>
          The project's root path.
          By default root of the Git repository, if in one, or the current working directory.

  -C, --contracts <PATH>
          The contracts source directory

  -R, --remappings <REMAPPINGS>
          The project's remappings

      --remappings-env <ENV>
          The project's remappings from the environment

      --cache-path <PATH>
          The path to the compiler cache

      --lib-paths <PATH>
          The path to the library folder

          Use the Hardhat-style project layout.
          This is the same as using: `--contracts contracts --lib-paths node_modules`.
          [aliases: hh]

      --config-path <FILE>
          Path to the config file