diff --git a/crates/revm/src/optimism/handler_register.rs b/crates/revm/src/optimism/handler_register.rs
index 37f8fec9..5cf290d3 100644
--- a/crates/revm/src/optimism/handler_register.rs
+++ b/crates/revm/src/optimism/handler_register.rs
@@ -234,19 +234,21 @@ pub fn deduct_caller<SPEC: Spec, EXT, DB: Database>(
             ));
         };
 
-        let tx_l1_cost = if context.evm.inner.env.tx.gas_price.is_zero() && SPEC::enabled(WRIGHT) {
-            U256::ZERO
-        } else {
-            context
-                .evm
-                .inner
-                .l1_block_info
-                .as_ref()
-                .expect("L1BlockInfo should be loaded")
-                .calculate_tx_l1_cost(enveloped_tx, SPEC::SPEC_ID)
-        };
+        let tx_l1_cost =
+            if context.evm.inner.env.effective_gas_price().is_zero() && SPEC::enabled(WRIGHT) {
+                U256::ZERO
+            } else {
+                context
+                    .evm
+                    .inner
+                    .l1_block_info
+                    .as_ref()
+                    .expect("L1BlockInfo should be loaded")
+                    .calculate_tx_l1_cost(enveloped_tx, SPEC::SPEC_ID)
+            };
+        
 
-        if tx_l1_cost.gt(&caller_account.info.balance) {
+    if tx_l1_cost.gt(&caller_account.info.balance) {
             return Err(EVMError::Transaction(
                 InvalidTransaction::LackOfFundForMaxFee {
                     fee: tx_l1_cost.into(),
@@ -287,11 +289,12 @@ pub fn reward_beneficiary<SPEC: Spec, EXT, DB: Database>(
             ));
         };
 
-        let l1_cost = if context.evm.inner.env.tx.gas_price.is_zero() && SPEC::enabled(WRIGHT) {
-            U256::ZERO
-        } else {
-            l1_block_info.calculate_tx_l1_cost(enveloped_tx, SPEC::SPEC_ID)
-        };
+        let l1_cost = 
+            if context.evm.inner.env.effective_gas_price().is_zero() && SPEC::enabled(WRIGHT) {
+                U256::ZERO
+            } else {
+                l1_block_info.calculate_tx_l1_cost(enveloped_tx, SPEC::SPEC_ID)
+            };
 
         // Send the L1 cost of the transaction to the L1 Fee Vault.
         let mut l1_fee_vault_account = context