{
  "id": 7954,
  "title": "EIP-7954: Increase Maximum Contract Size",
  "status": "Draft",
  "type": "Standards Track",
  "category": "Core",
  "summary": "Raises limits so developers can deploy slightly larger contracts: up to 32KiB deployed code and 64KiB initcode after a fork. Existing contracts remain valid.",
  "impacts": [
    "No required action; may benefit from dapps deploying larger contracts after the network upgrade.",
    "Can deploy contracts up to 32KiB and initcode up to 64KiB, reducing pressure to split logic.",
    "No new transaction types; deployments may include larger bytecode. Any size validations should reflect new limits.",
    "Explorers, indexers, verifiers, and RPC tooling should handle larger contract bytecode and initcode in deployment flows.",
    "Systems mirroring Ethereum’s limits may need updates to contract-size checks to remain compatible with L1 rules.",
    "Operators need upgraded clients at fork; larger contracts can slightly increase storage and processing per deployment.",
    "Mostly fork-activation wiring and testing; the rule change is in execution and enforced by paired EL clients.",
    "Update EIP-170/EIP-3860 size checks, fork configuration, and tests to accept 32KiB code and 64KiB initcode.",
    "Allows deploying larger, more complex contracts within a still-conservative maximum size.",
    "Increases initcode limit to 64KiB, enabling deployment of larger contract bytecode.",
    "Existing deployed contracts remain valid and unaffected.",
    "Minimal protocol change: only updates size constants in existing rules."
  ],
  "discussion_url": "https://ethereum-magicians.org/t/increase-maximum-contract-size-to-48kb/24509",
  "source_markdown_url": "https://github.com/ethereum/EIPs/blob/master/EIPS/eip-7954.md",
  "canonical_url": "/latest/eips/7954.json",
  "markdown_url": "/latest/eips/7954.md",
  "citations": [
    {
      "recordId": "eip-7954",
      "artifactPath": "normalized/7954.json",
      "url": "/records/proposal/eip-7954/normalized/7954.json",
      "label": "EIP-7954: Increase Maximum Contract Size",
      "snippet": "Raises limits so developers can deploy slightly larger contracts: up to 32KiB deployed code and 64KiB initcode after a fork. Existing contracts remain valid."
    }
  ]
}
