{
 "title": "Glamsterdam upgrade: status, EIPs, gas cost changes and exit churn",
 "url": "https://growyourethereum.com/guides/glamsterdam-upgrade",
 "license": "CC-BY-4.0",
 "creator": "GrowYourEthereum",
 "generated": "2026-10-26",
 "status_checked": "2026-10-26 ~08:00 ET",
 "activation": [
  {
   "network": "Sepolia testnet",
   "status": "Live",
   "activation": "2026-10-06 13:53:36 UTC",
   "epoch": "353,024"
  },
  {
   "network": "Hoodi testnet",
   "status": "Postponed (was 2026-10-26 17:42:48 UTC)",
   "activation": "No new date",
   "epoch": "—"
  },
  {
   "network": "Ethereum mainnet",
   "status": "Not scheduled",
   "activation": "TBD",
   "epoch": "TBD"
  }
 ],
 "timeline": [
  {
   "date": "2026-08-24",
   "event": "EF blog: Glamsterdam repricing impact guide. Replaying mainnet transactions shows most are unaffected; contracts with hard-coded gas may break.",
   "source": "https://blog.ethereum.org/2026/08/24/glamsterdam-repricing-testing"
  },
  {
   "date": "2026-09-28",
   "event": "EF blog: Sepolia testnet announcement. Hoodi and mainnet dates not decided.",
   "source": "https://blog.ethereum.org/2026/09/17/glamsterdam-testnet-announcement"
  },
  {
   "date": "2026-10-06",
   "event": "Glamsterdam activates on Sepolia at 13:53:36 UTC (epoch 353,024).",
   "source": "https://blog.ethereum.org/2026/09/17/glamsterdam-testnet-announcement"
  },
  {
   "date": "2026-10-13",
   "event": "ChainSecurity publishes “When Spent Gas Comes Back”: EIP-8037/8038 can let failure handlers complete where they once reverted.",
   "source": "https://www.chainsecurity.com/blog/glamsterdam-gas"
  },
  {
   "date": "2026-10-16",
   "event": "EF blog: Hoodi fork scheduled for Oct 26, 2026, 17:42:48 UTC (epoch 132,352), with Hoodi’s gas limit raised to 200M.",
   "source": "https://blog.ethereum.org/2026/10/16/glamsterdam-hoodi-announcement"
  },
  {
   "date": "2026-10-21",
   "event": "ChainSecurity’s findings flagged for the ACDE #248 call as “serious security risks” (disclosure to affected protocols in progress).",
   "source": "https://github.com/ethereum/pm/issues/2267"
  },
  {
   "date": "2026-10-22",
   "event": "ACDE #248: the agenda listed Dec 1 / Dec 8 / Dec 9 as mainnet date candidates (heads-up only). Developers postponed the Hoodi fork to investigate EIP-8037’s interactions with mainnet contracts; no new date.",
   "source": "https://blog.ethereum.org/2026/10/22/glamsterdam-hoodi-delay"
  },
  {
   "date": "2026-10-26",
   "event": "Original Hoodi fork time (17:42:48 UTC): no longer scheduled.",
   "source": "https://blog.ethereum.org/2026/10/22/glamsterdam-hoodi-delay"
  },
  {
   "date": "2026-10-29",
   "event": "ACDC #190, the next consensus-layer core developers call.",
   "source": "https://github.com/ethereum/pm/issues"
  },
  {
   "date": "2026-11-01",
   "event": "Last Call review deadline for most Glamsterdam EIPs (EIP-8246: Nov 4).",
   "source": "https://eips.ethereum.org/EIPS/eip-7773"
  }
 ],
 "eips": [
  {
   "eip": 2780,
   "title": "Resource-Based Intrinsic Transaction Gas",
   "kind": "scheduled",
   "layer": "EL",
   "status": "Last Call",
   "what_it_does": "Splits the flat 21,000 base fee into parts. Plain ETH sends to used wallets stay at 21,000; self-sends (cancels) drop to 12,000; sends that create a new account add 183,600 state gas.",
   "who_it_affects": "Everyone sending transactions; wallets"
  },
  {
   "eip": 7688,
   "title": "Forward Compatible Consensus Data Structures",
   "kind": "scheduled",
   "layer": "CL",
   "status": "Review",
   "what_it_does": "Changes how consensus data is merkleized so proofs stay stable as fields are added.",
   "who_it_affects": "Light clients, staking pools, bridges"
  },
  {
   "eip": 7708,
   "title": "ETH Transfers Emit a Log",
   "kind": "scheduled",
   "layer": "EL",
   "status": "Last Call",
   "what_it_does": "Every ETH transfer (including internal ones from contracts) emits a log, like token transfers do.",
   "who_it_affects": "Wallets, explorers, tax and accounting tools"
  },
  {
   "eip": 7732,
   "title": "Enshrined Proposer-Builder Separation (ePBS)",
   "kind": "scheduled",
   "layer": "Both",
   "status": "Last Call",
   "what_it_does": "Moves the proposer-builder hand-off into the protocol: builders commit to a block, reveal it later and are paid trustlessly; validators get more time to check execution.",
   "who_it_affects": "Validators, MEV relays and builders, staking pools"
  },
  {
   "eip": 7778,
   "title": "Block Gas Accounting without Refunds",
   "kind": "scheduled",
   "layer": "EL",
   "status": "Last Call",
   "what_it_does": "Gas refunds still lower what users pay but no longer let a block exceed its gas limit.",
   "who_it_affects": "Block builders"
  },
  {
   "eip": 7843,
   "title": "SLOTNUM Opcode",
   "kind": "scheduled",
   "layer": "EL",
   "status": "Last Call",
   "what_it_does": "New opcode that returns the current slot number.",
   "who_it_affects": "Developers"
  },
  {
   "eip": 7928,
   "title": "Block-Level Access Lists (BALs)",
   "kind": "scheduled",
   "layer": "EL",
   "status": "Last Call",
   "what_it_does": "Each block lists every account and storage slot it touches, so clients can read state and verify transactions in parallel.",
   "who_it_affects": "Node operators; groundwork for higher gas limits"
  },
  {
   "eip": 7954,
   "title": "Increase Maximum Contract Size",
   "kind": "scheduled",
   "layer": "EL",
   "status": "Last Call",
   "what_it_does": "Max contract code 24,576 -> 65,536 bytes; initcode 49,152 -> 131,072 bytes.",
   "who_it_affects": "Developers"
  },
  {
   "eip": 7976,
   "title": "Increase Calldata Floor Cost",
   "kind": "scheduled",
   "layer": "EL",
   "status": "Last Call",
   "what_it_does": "Raises the minimum price of data-heavy transactions (floor 10/40 -> 64/64 gas per byte), cutting worst-case block size ~37%.",
   "who_it_affects": "Data-heavy transactions (rarely regular users)"
  },
  {
   "eip": 7981,
   "title": "Increase Access List Cost",
   "kind": "scheduled",
   "layer": "EL",
   "status": "Last Call",
   "what_it_does": "Charges access lists for their data so they can not dodge the calldata floor.",
   "who_it_affects": "Advanced transactions using access lists"
  },
  {
   "eip": 7997,
   "title": "Deterministic Factory Contract",
   "kind": "scheduled",
   "layer": "EL",
   "status": "Last Call",
   "what_it_does": "Makes a well-known CREATE2 factory a protocol requirement so contracts can be deployed at the same address on every EVM chain.",
   "who_it_affects": "Developers, multi-chain apps"
  },
  {
   "eip": 8024,
   "title": "Backward Compatible SWAPN, DUPN, EXCHANGE",
   "kind": "scheduled",
   "layer": "EL",
   "status": "Last Call",
   "what_it_does": "New stack instructions that reach deeper than 16 items.",
   "who_it_affects": "Compilers, developers"
  },
  {
   "eip": 8037,
   "title": "State Creation Gas Cost Increase",
   "kind": "scheduled",
   "layer": "EL",
   "status": "Last Call",
   "what_it_does": "Prices new state at 1,530 gas per byte and meters it separately: new account 183,600, new storage slot 97,920, code 1,530 per byte.",
   "who_it_affects": "Anyone creating new accounts, token balances or contracts"
  },
  {
   "eip": 8038,
   "title": "State-Access Gas Cost Update",
   "kind": "scheduled",
   "layer": "EL",
   "status": "Last Call",
   "what_it_does": "Reprices state reads and writes: cold account 2,600 -> 3,000, storage write 2,900 -> 10,000, account write 9,000, clear refund 4,800 -> 11,616.",
   "who_it_affects": "Most contract calls (DeFi, tokens)"
  },
  {
   "eip": 8045,
   "title": "Exclude Slashed Validators from Proposing",
   "kind": "scheduled",
   "layer": "CL",
   "status": "Last Call",
   "what_it_does": "Slashed validators are no longer picked to propose blocks.",
   "who_it_affects": "Validators"
  },
  {
   "eip": 8061,
   "title": "Increase Exit and Consolidation Churn",
   "kind": "scheduled",
   "layer": "CL",
   "status": "Last Call",
   "what_it_does": "Exit churn becomes total stake / 32,768 per epoch with no 256 ETH cap; consolidation churn total stake / 65,536; activations stay capped at 256 ETH.",
   "who_it_affects": "Stakers waiting to unstake; staking pools"
  },
  {
   "eip": 8246,
   "title": "Remove SELFDESTRUCT Burn",
   "kind": "scheduled",
   "layer": "EL",
   "status": "Last Call",
   "what_it_does": "SELFDESTRUCT no longer burns any remaining ETH balance; it is kept.",
   "who_it_affects": "Contracts using SELFDESTRUCT"
  },
  {
   "eip": 8282,
   "title": "Builder Execution Requests",
   "kind": "scheduled",
   "layer": "Both",
   "status": "Last Call",
   "what_it_does": "System contracts for ePBS builders to deposit, top up and exit (builders can stake as little as 1 ETH).",
   "who_it_affects": "Block builders"
  },
  {
   "eip": 7975,
   "title": "eth/70 - Partial Block Receipt Lists",
   "kind": "networking",
   "layer": "EL",
   "status": "Last Call",
   "what_it_does": "Peers can request part of a block’s receipts.",
   "who_it_affects": "Node operators"
  },
  {
   "eip": 8070,
   "title": "eth/72 - Sparse Blobpool",
   "kind": "networking",
   "layer": "EL",
   "status": "Last Call",
   "what_it_does": "Execution clients fetch full blob payloads only with probability 0.15 and sample the rest.",
   "who_it_affects": "Node operators, rollups"
  },
  {
   "eip": 8136,
   "title": "Cell-Level Deltas for Data Column Broadcast",
   "kind": "networking",
   "layer": "CL",
   "status": "Last Call",
   "what_it_does": "Peers exchange only the blob cells they need under PeerDAS.",
   "who_it_affects": "Node operators, rollups"
  },
  {
   "eip": 8159,
   "title": "eth/71 - Block Access List Exchange",
   "kind": "networking",
   "layer": "EL",
   "status": "Last Call",
   "what_it_does": "Adds messages to request and serve block-level access lists.",
   "who_it_affects": "Node operators"
  },
  {
   "eip": 8189,
   "title": "snap/2 - BAL-Based State Healing",
   "kind": "networking",
   "layer": "EL",
   "status": "Last Call",
   "what_it_does": "Snap sync heals state from block-level access lists instead of trie nodes.",
   "who_it_affects": "Node operators"
  },
  {
   "eip": 7904,
   "title": "Compute Gas Cost Analysis",
   "kind": "informational",
   "layer": "EL",
   "status": "Last Call",
   "what_it_does": "Benchmark report on EVM compute costs across clients (informs future repricing).",
   "who_it_affects": "Researchers"
  },
  {
   "eip": 8261,
   "title": "Gas Limit Schedule",
   "kind": "informational",
   "layer": "CL",
   "status": "Last Call",
   "what_it_does": "Recommends epoch-based default gas limits set in the consensus config, so increases (e.g. above today’s 60M) can be coordinated.",
   "who_it_affects": "Validators, everyone (capacity)"
  }
 ],
 "gas_cases": [
  {
   "id": "eth_existing",
   "case": "Send ETH to an address that already exists",
   "gas_now": 21000,
   "glam_execution_gas": 21000,
   "glam_state_gas": 0,
   "basis": "EIP-2780 reference table",
   "note": "Plain transfer to a used wallet: unchanged (12,000 base + 3,000 recipient touch + 6,000 value).",
   "glam_total_gas": 21000,
   "change_pct": 0.0
  },
  {
   "id": "eth_new",
   "case": "Send ETH to a brand-new (never used or empty) address",
   "gas_now": 21000,
   "glam_execution_gas": 21000,
   "glam_state_gas": 183600,
   "basis": "EIP-2780 + EIP-8037",
   "note": "New account leaf: 120 state bytes x 1,530 gas = 183,600 state gas on top of 21,000.",
   "glam_total_gas": 204600,
   "change_pct": 874.3
  },
  {
   "id": "cancel_self",
   "case": "Cancel or replace a stuck transaction (0 ETH to yourself)",
   "gas_now": 21000,
   "glam_execution_gas": 12000,
   "glam_state_gas": 0,
   "basis": "EIP-2780 test case 1",
   "note": "Self-transfers pay only the 12,000 base cost.",
   "glam_total_gas": 12000,
   "change_pct": -42.9
  },
  {
   "id": "zero_other",
   "case": "0 ETH transaction to another wallet",
   "gas_now": 21000,
   "glam_execution_gas": 15000,
   "glam_state_gas": 0,
   "basis": "EIP-2780 test case 2",
   "note": "12,000 base + 3,000 cold recipient touch.",
   "glam_total_gas": 15000,
   "change_pct": -28.6
  },
  {
   "id": "erc20_existing",
   "case": "Token transfer to a wallet that already holds the token (model)",
   "gas_now": 34632,
   "glam_execution_gas": 43032,
   "glam_state_gas": 0,
   "basis": "Our model: EIP-2780 + EIP-8038",
   "note": "Simple ERC-20, no proxy: 2 cold balance reads + 2 balance updates (2,900 -> 10,100 each) + 15,000 base. Real tokens vary.",
   "glam_total_gas": 43032,
   "change_pct": 24.3
  },
  {
   "id": "erc20_new",
   "case": "Token transfer to a wallet that never held the token (model)",
   "gas_now": 51732,
   "glam_execution_gas": 43032,
   "glam_state_gas": 97920,
   "basis": "Our model: EIP-2780 + EIP-8037 + EIP-8038",
   "note": "New balance slot: 64 bytes x 1,530 = 97,920 state gas instead of 20,000.",
   "glam_total_gas": 140952,
   "change_pct": 172.5
  },
  {
   "id": "slot_new",
   "case": "Write a new storage slot (cold)",
   "gas_now": 22100,
   "glam_execution_gas": 12100,
   "glam_state_gas": 97920,
   "basis": "EIP-8037 + EIP-8038 (ChainSecurity table)",
   "note": "2,100 cold access + 10,000 write + 97,920 state gas.",
   "glam_total_gas": 110020,
   "change_pct": 397.8
  },
  {
   "id": "slot_update",
   "case": "Change an existing storage slot (cold)",
   "gas_now": 5000,
   "glam_execution_gas": 12100,
   "glam_state_gas": 0,
   "basis": "EIP-8038",
   "note": "2,100 cold access + 10,000 STORAGE_WRITE (was 2,900).",
   "glam_total_gas": 12100,
   "change_pct": 142.0
  },
  {
   "id": "cold_account",
   "case": "First touch of another account (cold access)",
   "gas_now": 2600,
   "glam_execution_gas": 3000,
   "glam_state_gas": 0,
   "basis": "EIP-8038",
   "note": "COLD_ACCOUNT_ACCESS 2,600 -> 3,000 (+15%).",
   "glam_total_gas": 3000,
   "change_pct": 15.4
  },
  {
   "id": "deploy_byte",
   "case": "Deploy contract code, per byte",
   "gas_now": 200,
   "glam_execution_gas": 0.1875,
   "glam_state_gas": 1530,
   "basis": "EIP-8037",
   "note": "Code deposit 200 gas/byte -> 1,530 state gas/byte + 6 gas per 32-byte word (hash).",
   "glam_total_gas": 1530.19,
   "change_pct": 665.1
  },
  {
   "id": "create_tx",
   "case": "Contract-creation transaction base (new address, before code)",
   "gas_now": 53000,
   "glam_execution_gas": 24000,
   "glam_state_gas": 183600,
   "basis": "EIP-2780 + EIP-8037",
   "note": "Was 21,000 + 32,000; now 12,000 + 12,000 CREATE_ACCESS + 183,600 state gas.",
   "glam_total_gas": 207600,
   "change_pct": 291.7
  }
 ],
 "erc20_model": {
  "calldata_gas": 632,
  "other_execution_gas": 3000,
  "note": "Simple ERC-20 transfer without proxy: base + calldata + 2 cold SLOADs (2,100) + 2 SSTORE updates (Fusaka 2,900, Glamsterdam 10,100 incl. warm access) or a fresh slot (Fusaka 20,000; Glamsterdam 10,100 + 97,920 state gas)."
 },
 "exit_churn": {
  "total_eff_eth": 43527722,
  "exit_now_epoch": 256,
  "exit_glam_epoch": 1328,
  "exit_now_day": 57600,
  "exit_glam_day": 298800,
  "cons_now_epoch": 408,
  "cons_glam_epoch": 664,
  "activation_epoch": 256,
  "mult": 5.19
 },
 "exit_churn_note": "Total effective balance from a public beacon node snapshot, Oct 25, 2026 16:59 UTC. 225 epochs per day.",
 "repricing_replay": {
  "source": "https://ethereum.github.io/repricing-impact/",
  "generated": "2026-08-24",
  "tx_count": 929731274,
  "block_range": [
   21319986,
   25319985
  ],
  "date_range": [
   "2024-12-03",
   "2026-06-15"
  ],
  "pct": {
   "eip-8037": {
    "g1": 66.27,
    "g2": 13.12,
    "g3": 18.77,
    "g4": 0.29,
    "af": 1.56
   },
   "eip-8038": {
    "g1": 39.89,
    "g2": 49.12,
    "g3": 9.11,
    "g4": 0.33,
    "af": 1.56
   }
  },
  "groups": {
   "g1": "No change",
   "g2": "Succeeds with changes",
   "g3": "Fixable with gas-limit increase",
   "g4": "Potentially broken",
   "af": "Already failing in baseline"
  }
 },
 "network_now": {
  "gas_limit": 60000000,
  "gas_price_gwei": 0.06,
  "eth_usd": 2329.2
 }
}