> For the complete documentation index, see [llms.txt](https://tron-energy.gitbook.io/tronzap/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://tron-energy.gitbook.io/tronzap/learning-hub/tron-resource-model.md).

# TRON Resource Model

## Overview

TRON uses a resource-based fee model instead of direct gas fees like Ethereum. The network relies on two distinct resources to process transactions: **Bandwidth** and **Energy**. Understanding how these resources work is essential for efficient use of the TRON blockchain.

***

## Bandwidth

Bandwidth is required for **all** transactions on TRON, including simple TRX transfers, smart contract calls, and any other on-chain operation.

* **Measurement**: Bandwidth is measured in bytes. Each transaction consumes bandwidth equal to its serialized size.
* **Free daily allowance**: Every account receives approximately 600 free Bandwidth points per day. This allowance regenerates over a 24-hour period.
* **Additional bandwidth**: To obtain more bandwidth, users stake TRX for the BANDWIDTH resource.
* **When bandwidth runs short**: If a transaction requires more bandwidth than the account has available, TRX is burned to cover the cost at a rate of 1,000 SUN per byte (where 1 TRX = 1,000,000 SUN).

***

## Energy

Energy is required **only** for smart contract execution. This includes TRC20 transfers (such as USDT), DeFi interactions, NFT minting, and any other contract-based operations.

* **No free allowance**: Unlike Bandwidth, there is no free daily Energy allowance.
* **Obtaining Energy**: Energy is obtained by staking TRX for the ENERGY resource.
* **Staking formula**: The amount of Energy received from staking depends on the formula: `(staked TRX / total network TRX staked for Energy) × total Energy limit`.
* **When Energy runs short**: If a smart contract call requires Energy but the account has none, TRX is burned at the current energy price.
* **USDT transfer cost**: A standard USDT (TRC20) transfer requires approximately 65,000 Energy, or roughly 13 TRX if paid by burning.

***

## Resource Regeneration

Both Bandwidth and Energy regenerate over a 24-hour window after being consumed.

* Resources are not spent permanently. They recover to the staked level over time.
* Regeneration is linear over the 24-hour period.

***

## What Happens When Resources Run Out

| Resource      | When exhausted                                           | Result                                                                                                         |
| ------------- | -------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- |
| **Bandwidth** | Transaction exceeds available Bandwidth                  | TRX is burned from the sender's account to cover the deficit                                                   |
| **Energy**    | Smart contract call requires Energy but account has none | TRX is burned for Energy. If the account also lacks sufficient TRX, the transaction fails with `OUT_OF_ENERGY` |

TronZap enables users to [rent Tron energy](https://tronzap.com/) on demand, eliminating the need to burn TRX when making TRC20 transfers.

***

## USDT (TRC20) Transfer Flow

The following flowchart illustrates what happens when a user sends a USDT transfer on TRON:

```mermaid
flowchart TD
    A[User initiates USDT transfer] --> B{Has enough Bandwidth?}
    B -->|Yes| C[Bandwidth consumed]
    B -->|No| D[TRX burned for Bandwidth]
    C --> E{Has enough Energy?}
    D --> E
    E -->|Yes| F[Energy consumed, transfer succeeds]
    E -->|No| G{Has sufficient TRX to burn?}
    G -->|Yes| H[TRX burned for Energy]
    G -->|No| I[OUT_OF_ENERGY - transaction fails]
    H --> J[Transfer complete]
    F --> J
```

***

## Related Pages

* [Staking TRX](/tronzap/learning-hub/staking-trx.md)
* [Resource Delegation](/tronzap/learning-hub/resource-delegation.md)
