> For the complete documentation index, see [llms.txt](https://stylus-1.gitbook.io/stylusguide/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://stylus-1.gitbook.io/stylusguide/4.-understanding-smart-contract-storage-simple-storage/basics-of-contract-storage.md).

# Basics of Contract Storage

**What is Storage in Smart Contracts?**

Storage in smart contracts refers to the persistent data that contracts maintain on the blockchain. This data is crucial as it allows smart contracts to keep track of various states and information over time. In the context of Arbitrum Stylus and Rust, storage structures are defined within the contract, and they dictate how data is stored and accessed.

**Different Types of Storage:**

1. **Persistent Storage:**
   * Data that remains on the blockchain even after the execution of the contract. Used for variables that need to be remembered between function calls and transactions.
   * **Example:** Balances of accounts in a token contract.
2. **Ephemeral Storage:**
   * Temporary data available only during the execution of a contract. Used for local variables within functions.
   * **Example:** Intermediate calculation results.


---

# 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:

```
GET https://stylus-1.gitbook.io/stylusguide/4.-understanding-smart-contract-storage-simple-storage/basics-of-contract-storage.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
