---
title: "Cómo calcular el rent para programas de Solana"
description: "Aprende cómo funciona el rent en Solana y cómo calcularlo para tu próximo programa de Solana"
---

# Cómo calcular el rent para programas de Solana

Las ejecuciones de programas en la blockchain de Solana comienzan con una transacción. La blockchain consiste en una red de sistemas informáticos que duplica y distribuye un libro contable digital de transacciones a través de toda la red. Cada bloque en la cadena comprende una serie de transacciones, y el libro contable de cada participante recibe una copia de cada nueva transacción que ocurre en la blockchain.

Almacenar todos estos datos en cuentas separadas no es gratuito e implica ciertos costos. En este artículo, te guiaremos sobre el concepto de rent en Solana y cómo calcularlo.

## **¿Qué es el rent en Solana?**

**El rent es la tarifa que paga cada cuenta de Solana para almacenar datos en la blockchain, y se denomina en Lamports, la unidad más pequeña de SOL, que se utiliza para micropagos.** Las tarifas de rent se calculan en función del tamaño del almacenamiento de la cuenta. Mientras mayor sea el rent, mayor será la cantidad de datos almacenados.

Dado que los [clústeres de nodos de Solana](https://www.alchemy.com/overviews/solana-nodes) deben mantener activamente estos datos, se necesita una tarifa basada en tiempo y espacio para mantener una cuenta, y por consiguiente sus datos, activa en la blockchain. Todas las cuentas de Solana deben mantener sus balances de Lamports lo suficientemente altos para calificar para la **exención de rent** y permanecer en la blockchain de Solana. Las cuentas que se detecta que contienen una cantidad baja de Lamports son eliminadas de la red por el garbage collector.

### **¿Cuándo se cobran las tarifas de rent?**

Las tarifas de rent generalmente se cobran al final de cada epoch. Un epoch es el período de tiempo durante el cual el validador líder sigue siendo capaz de generar bloques de transacciones. El [Solana Explorer](https://www.alchemy.com/dapps/solana-explorer) contiene los datos del epoch más reciente y de los anteriores. El rent también se paga cuando las cuentas son referenciadas por una transacción.

Al final de cada slot, se destruye un porcentaje del rent que las cuentas han acumulado, y el resto se paga a las cuentas de voto. [La cuenta](https://www.alchemy.com/overviews/solana-account-model) será desasignada y sus datos eliminados si no tiene suficiente dinero para cubrir el rent. También es fundamental recordar que las cuentas recién creadas deben estar libres de rent.

El rent también es muy importante porque los validadores de la red deben mantener en memoria una copia funcional de este estado; la red cobra una tarifa basada en tiempo y espacio por este consumo de recursos. Esto se debe a que las cuentas en Solana pueden tener un estado controlado por el propietario \(Account::data\) que es distinto del balance de la cuenta \(Account::lamports\).

## **¿Cómo calcular el rent para un programa de Solana?**

Usar el comando rent de Solana desde el [Solana CLI](https://www.alchemy.com/docs/reference/solana-api-quickstart) ofrece un enfoque simple para estimar los costos de rent. Puedes ver el rent por byte, por epoch, y el monto mínimo requerido para que una cuenta esté exenta de rent ingresando el tamaño \(en bytes\) de tu cuenta.

Según el régimen de rent, las cuentas tienen un **Account::rent epoch** correspondiente al epoch actual o al epoch actual \+ 1, y se debe rent por el equivalente a un epoch de tiempo.

Account::rent epoch simplemente se ajusta al epoch actual si la cuenta está en el régimen de exención.

Si la cuenta no está exenta, se usa **Rent::due\(\)** para determinar cuánto rent debe esta cuenta. Este cálculo se basa en la diferencia entre el siguiente epoch y Account::rent epoch. Estos pasos te mostrarán cómo calcular el precio de rent para un programa de Solana.

### **Paso 1: crear un nuevo programa**

Primero, navega a tu terminal y crea una nueva carpeta usando cargo; aquí es donde se almacenará nuestro archivo principal.

Abre src/main y reemplázalo con el fragmento de código [aquí](https://gist.github.com/dharniel45/69bd889abd6179c9bfa94b00ab1247f6)

### Paso 2: calcular el costo de rent

El tamaño del archivo debería ser de 906 bytes, podemos calcular el rent simplemente ejecutando:

Deberías ver lo siguiente:

<ImageBlock
  src="https://media.alchemy.com/1703690153-solana-rent-command-output.png"
  alt="Salida del comando Solana Rent en la terminal"
  width={984}
  height={172}
  caption="Salida del comando Solana Rent en la terminal"
/>

Finalmente, no existe una transacción correspondiente para las deducciones de rent, porque el cobro de rent ocurre de acuerdo con modificaciones de cuenta a nivel de protocolo, como la distribución de rent a los validadores.

Por lo tanto, el cobro de rent es en gran medida invisible y solo puede observarse implícitamente mediante una transacción reciente o por el tiempo especificado según el prefijo de la dirección de la cuenta.

## **Cómo recuperar las tarifas de almacenamiento de Solana**

Para recuperar las tarifas de almacenamiento de Solana, los desarrolladores y usuarios habituales de Solana pueden cerrar cuentas para recibir de vuelta sus tarifas de almacenamiento. La forma más simple de recuperar las tarifas de rent de Solana es usando una herramienta amigable para el usuario como **[Sol Incinerator](https://www.alchemy.com/dapps/sol-incinerator)** para cerrar cuentas de programa sin usar en tu wallet.

## **Conclusión**

El costo del rent actualmente se establece en el génesis, pero está planeado que se vuelva dinámico en el futuro, reflejando el costo actual del almacenamiento de hardware subyacente. Por lo tanto, se cree ampliamente que a medida que la tecnología avance y los costos de hardware bajen, también lo harán los costos de las tarifas de rent.
