> For the complete documentation index, see [llms.txt](https://zokyo-auditing-tutorials.gitbook.io/zokyo-tutorials/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://zokyo-auditing-tutorials.gitbook.io/zokyo-tutorials/tutorial-51-ethereums-63-64-gas-rule.md).

# Tutorial 51: Ethereum's 63/64 Gas Rule

{% hint style="info" %}
[**Book an audit with Zokyo**](https://www.zokyo.io/)
{% endhint %}

Ethereum's gas model is fundamental to how smart contracts execute on the blockchain. Gas represents the computational effort required to execute operations, ensuring that network resources are fairly allocated and preventing infinite loops or excessive computation. However, a lesser-known but important aspect of Ethereum’s gas model is the **63/64 gas rule**, which has a significant impact on how smart contracts behave, especially in interactions between contracts.

The 63/64 gas rule dictates that when one smart contract calls another, **only 63/64ths (roughly 98.4%) of the available gas** can be forwarded to the called contract. This rule was introduced to mitigate reentrancy attacks and ensure that the calling contract has enough gas left to complete its execution after the called contract returns.

While this mechanism is crucial for Ethereum’s security and robustness, it can also introduce complexities and unintended vulnerabilities in contract interactions. Users and attackers can exploit this rule by supplying just enough gas to cause certain transactions to fail, especially in multi-contract systems where multiple gas-limited calls are made.

In this section, we'll dive deeper into the implications of Ethereum's 63/64 gas rule and explore how users can intentionally cause transactions to fail by manipulating gas limits. Understanding this rule is essential for building gas-efficient and resilient smart contracts.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://zokyo-auditing-tutorials.gitbook.io/zokyo-tutorials/tutorial-51-ethereums-63-64-gas-rule.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
