> 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-54-precision.md).

# Tutorial 54: Precision

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

#### Introduction: Vulnerabilities in Precision and Calculation Errors in Smart Contracts

Smart contracts rely heavily on precise mathematical calculations to ensure that funds, tokens, and assets are accurately managed and distributed. However, getting precision wrong or implementing faulty calculations can introduce significant vulnerabilities into a smart contract. These errors can lead to financial losses, unfair token distribution, incorrect payouts, and the potential exploitation of systems designed to be secure.

One common source of these issues arises from handling different token decimals, inaccurate rounding, or incorrect assumptions about the mathematical operations within a contract. Furthermore, faulty calculation logic can create exploitable edge cases, allowing attackers to take advantage of rounding errors or overflows.

In this section, we will explore various examples of vulnerabilities related to calculation errors and precision issues in smart contracts, explain how they can be exploited, and provide guidance on best practices to avoid these pitfalls. Understanding and mitigating these issues is critical to developing secure and reliable blockchain applications.


---

# 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-54-precision.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.
