Comisiones de gas de Ethereum: tarifa base, tarifa de prioridad y límite de gas
Descubre qué significan las unidades de gas, el límite de gas, la tarifa base, la tarifa de prioridad y la tarifa máxima en Ethereum; después, calcula el coste real de una transacción.
En esta guíaEl gas mide el trabajo de cálculo, no el importe que envías
Resumen breve
La comisión de gas de Ethereum se calcula multiplicando el gas que una transacción consume realmente por el precio efectivo del gas en el bloque que la incluye. El protocolo fija y quema la tarifa base; la tarifa de prioridad puede ir al validador. La tarifa máxima es un tope del precio, no necesariamente el precio que pagas.
El gas mide el trabajo de cálculo, no el importe que envías
En Ethereum, el gas es la unidad que mide el trabajo de cálculo necesario para procesar una transacción en la EVM. Una transferencia sencilla de ETH requiere relativamente poco trabajo; transferir un token o ejecutar varias condiciones de un contrato inteligente puede requerir más. Por eso, dos transacciones que envían la misma cantidad de ETH pueden consumir cantidades distintas de gas si realizan tareas diferentes.
Las unidades de gas expresan la cantidad de trabajo y el precio del gas indica cuánto ETH ofreces por unidad. Al multiplicarlos obtienes la comisión. El límite de gas es el número máximo de unidades que puede consumir la transacción, mientras que maxFeePerGas es un tope del precio por unidad. No son distintas formas de llamar a una misma «comisión máxima».
Esta guía explica una transacción EIP-1559 habitual en la red principal de Ethereum. Otras cadenas de bloques y redes de capa 2 pueden utilizar estructuras de comisiones, activos de pago y etiquetas diferentes. No apliques automáticamente los términos de Ethereum a todas las redes. La guía de gas de Ethereum.org y su guía de transacciones definen estos campos.
El uso de gas depende del trabajo que realiza la transacción
La EVM asigna costes de gas a las operaciones de cálculo y a los cambios de estado. Una llamada a un contrato puede añadir la ejecución de funciones, lecturas o escrituras de almacenamiento y el registro de eventos, tareas que no hacen falta en una transferencia sencilla. Más operaciones o una ruta de ejecución más larga pueden consumir más gas. El gas utilizado no se calcula multiplicando la cantidad de ETH enviada ni el precio de mercado de un token.
Una transferencia de ETH, una transferencia de tokens y una llamada a una dapp ejecutan operaciones distintas. Las llamadas a contratos pueden ejecutar funciones adicionales y leer o actualizar el almacenamiento, por lo que pueden usar más gas que una transferencia sencilla. El recibo de una transacción incluida indica el gas utilizado realmente.
Ethereum.org da 21.000 unidades de gas como ejemplo de una transferencia estándar de ETH. Es una referencia para una transferencia sencilla, no un límite de gas reutilizable para llamadas a contratos, cuyo trabajo depende de las funciones ejecutadas y del acceso al almacenamiento.
El gas de la red también es distinto de la comisión de retirada de un servicio. Un exchange puede añadir un cargo operativo o aplicar su propia tabla de comisiones. El gas en cadena paga el trabajo de cálculo que procesa la red. Si la pantalla de retirada muestra un único importe, comprueba si combina una comisión de la plataforma con el coste de la red.
El límite de gas y el gas utilizado son cifras distintas
El límite de gas (gasLimit) es el máximo de unidades de gas que puede consumir la transacción. El gas utilizado (gasUsed) es lo que consume realmente cuando termina la ejecución. Fijar un límite más alto no implica que se cobre cada unidad de ese límite. Para una transacción incluida, la comisión se calcula con el gas consumido realmente y el precio efectivo; las unidades no utilizadas no se consumen.
Si la propia transacción se queda sin gas durante la ejecución, se consume todo el límite de gas y la transacción falla. Sus cambios de estado se revierten, pero el cálculo realizado tiene un coste. Un límite más alto permite ejecutar más trabajo, pero también eleva la exposición máxima al coste del gas: gasLimit × maxFeePerGas. El cargo real sigue dependiendo del gas utilizado realmente y del precio efectivo.
El límite de gas es un tope, no una predicción del uso real. No es el precio por unidad, y aumentar el precio no corrige una cantidad insuficiente de unidades de gas. Si no entiendes qué ejecutará una llamada, consulta las indicaciones oficiales de la cartera o la aplicación en vez de cambiar el límite al azar.
La tarifa base cambia según la demanda de espacio en los bloques
En una transacción EIP-1559, la tarifa base es el precio por unidad de gas que establece el protocolo para un bloque. La tarifa máxima de la transacción debe bastar para cubrir la tarifa base del bloque que la incluya. El protocolo ajusta la tarifa base de un bloque a otro según cuánto gas utilizó el bloque anterior en comparación con su objetivo. Puede subir o bajar; no es una tasa fija permanente.
La parte de la tarifa base correspondiente al gas utilizado realmente se quema. Los validadores no reciben esa parte como propina. Como la tarifa base cambia de un bloque a otro, una transacción pendiente puede encontrarse con una tarifa base distinta cuando se incluya que cuando se envió.
El gwei es una denominación pequeña de ETH: 1 gwei equivale a 0,000000001 ETH. Un precio del gas mayor eleva el coste en ETH aunque el gas utilizado no cambie. Usar más gas también eleva el coste aunque el precio por unidad permanezca igual. Ambos factores pueden cambiar la comisión expresada en ETH independientemente del precio de ETH en dólares.
La tarifa de prioridad es una propina que puede favorecer la inclusión
La tarifa de prioridad es una propina por unidad de gas que ofreces al validador que incluye la transacción. Los usuarios compiten por el espacio limitado de los bloques, así que una propina mayor puede hacer que una transacción resulte más atractiva cuando las demás condiciones son parecidas. Indica urgencia, pero no garantiza que se incluya en un bloque concreto ni antes de una hora determinada.
Que la tarifa de prioridad aparezca alta no significa que la transacción necesite más unidades de gas. La tarifa de prioridad cambia el precio por unidad; el límite de gas acota el trabajo permitido. Una llamada compleja a un contrato aún puede fallar si no tiene gas suficiente, aunque la propina sea alta. Y tener unidades suficientes tampoco ayuda si el tope de precio no cubre la tarifa base del bloque.
Al elegir transacciones, los validadores tienen en cuenta el espacio del bloque y otras condiciones. La tarifa base y el espacio disponible cambian con el tiempo; una propina más alta no garantiza que la transacción se incluya en un momento concreto. La especificación EIP-1559 asigna funciones distintas a la tarifa base y a la tarifa de prioridad y limita su precio efectivo combinado a la tarifa máxima.
La tarifa máxima es un tope del precio, no el precio real
maxFeePerGas es el precio máximo por unidad que estás dispuesto a cubrir. maxPriorityFeePerGas es la propina máxima por unidad que ofreces. Al incluirse la transacción, el precio efectivo suma la tarifa base y la propina que permiten ambos topes. La propina aplicada no puede superar el menor valor entre maxPriorityFeePerGas y maxFeePerGas - baseFee, por lo que el precio efectivo nunca supera la tarifa máxima.
Por ejemplo, supongamos que la tarifa máxima es 30 gwei, la propina máxima es 2 gwei y la tarifa base del bloque es 18 gwei. La propina puede ser de 2 gwei y el precio efectivo será de 20 gwei. La transacción no paga automáticamente 30 gwei solo porque ese sea el máximo. Si la tarifa base sube a 31 gwei, un tope de 30 gwei no basta para ese bloque y la transacción no podrá incluirse en él.
Cuanto más se acerca la tarifa base a la tarifa máxima, menos margen queda para la propina. Aunque fijes un máximo de 5 gwei para la propina, si maxFeePerGas - baseFee es solo 1 gwei, la propina aplicada puede ser como máximo 1 gwei. Lee los dos topes junto con la tarifa base actual.

Calcula la comisión real y el tope con un ejemplo
Las siguientes cifras son hipotéticas y solo sirven para mostrar el cálculo. Supongamos que el límite de gas es de 30.000 unidades, que la transacción utiliza 24.000 y que se incluye en un bloque con una tarifa base de 18 gwei. Fijamos la propina máxima en 2 gwei y la tarifa máxima en 30 gwei. La propina aplicada es min(2, 30 - 18) = 2 gwei, por lo que el precio efectivo es 18 + 2 = 20 gwei.
La comisión de gas real es 24.000 × 20 = 480.000 gwei. Como 1 ETH equivale a 1.000.000.000 gwei, son 0,00048 ETH. La parte de la tarifa base es 24.000 × 18 = 432.000 gwei, o 0,000432 ETH. La propina es 24.000 × 2 = 48.000 gwei, o 0,000048 ETH. La suma de ambas partes coincide con la comisión real de 0,00048 ETH.
Si multiplicamos el límite de gas completo por los dos topes de precio, obtenemos 30.000 × 30 = 900.000 gwei, es decir, 0,0009 ETH. Con esos ajustes, es el tope del coste de gas si se consumiera todo el límite y se aplicara el precio máximo por unidad. No es la comisión real de este ejemplo. La cantidad de ETH enviada al destinatario es independiente de la comisión de gas. No confundas el tope con un cargo fijo ni la comisión con un porcentaje de la transferencia. Son cifras ilustrativas, no una cotización actual de la red.
Una transacción fallida también puede consumir gas
No des por hecho que la comisión de gas se devuelve porque la cartera diga «fallida». Si la transacción entra en un bloque y la EVM comienza a ejecutarla antes de revertirla, el cambio de estado puede deshacerse mientras el gas utilizado en el cálculo sigue teniendo un coste. Si la propia transacción se queda sin gas durante la ejecución, se consume todo el límite de gas. Hubo trabajo de cálculo aunque no se obtuviera el resultado deseado.
Es distinto el caso de una transacción que no supera la validación antes de incluirse. Por ejemplo, una transferencia de ETH enviada con un límite de gas inferior al necesario puede rechazarse antes de entrar en un bloque; en ese caso no se consume gas de ejecución. «Rechazada antes de la inclusión» y «incluida y revertida durante la ejecución» no son el mismo estado.
Consulta el estado, el gas utilizado, el precio efectivo del gas y el resultado de la ejecución con el hash de la transacción. El mensaje breve de error de una cartera quizá no indique la causa. Ethereum.org distingue el rechazo de validación previo a la inclusión de una transacción que se queda sin gas durante la ejecución.
Lee por separado el límite, el precio y el importe enviado
Antes de firmar, confirma en qué red estás y si la transacción es una transferencia sencilla o una llamada a un contrato. La cartera puede mostrar una comisión estimada, el límite de gas, una tarifa base estimada, el tope de la tarifa de prioridad, el tope de la tarifa máxima y la cantidad de ETH o tokens que envías. Cada valor responde a una pregunta distinta. Si la pantalla solo muestra el coste máximo de gas, abre los detalles para saber a qué tope se refiere en vez de tratarlo como un cargo seguro.
La cartera puede completar automáticamente las estimaciones de las comisiones, así que a menudo no hace falta ajustar cada campo a mano. Estas estimaciones se basan en las condiciones de la red en ese momento y no garantizan cuándo se incluirá la transacción ni cuál será el coste final. Un tope de precio bajo puede dejarla en espera. Aumentar el límite o la propina sin entender la llamada puede elevar el coste posible sin resolver el problema de fondo. Revisa los valores actuales y firma solo si entiendes la transacción.
Esta explicación cubre el flujo habitual de transacciones en la red principal de Ethereum. Una capa 2 u otra cadena puede mostrar costes de datos adicionales, usar otro activo para las comisiones o calcularlas de forma distinta. No apliques la fórmula de Ethereum a otra red sin revisar su documentación. Para comprobar la red y la dirección de destino, consulta la lista para enviar criptomonedas; para conocer el permiso independiente que puede tener un contrato para usar tokens, consulta la guía de aprobaciones de tokens.
Preguntas frecuentes
Q1¿Por qué puede costar ETH una transacción fallida?
Si la transacción se incluyó y comenzó a ejecutarse, el cálculo puede consumir gas aunque el cambio de estado se revierta. Consulta el hash para distinguir un fallo de ejecución de un rechazo previo a la inclusión.
Q2¿Es maxFeePerGas el precio real del gas que muestra mi cartera?
No. Es un tope del precio por unidad. El precio efectivo combina la tarifa base del bloque que incluye la transacción con la propina que cabe dentro de los topes, así que puedes pagar menos que el máximo.
Q3¿Las transacciones de la red principal de Ethereum pagan el gas en ETH?
Las transacciones habituales de la red principal pagan el gas en ether, el activo nativo de la red. Si la cartera muestra otro token o un patrocinador externo, comprueba si se trata de un mecanismo de pago de comisiones distinto. En otras cadenas puede funcionar de otra manera.
Fuentes
Informar de un problema
Prepararemos un correo con el enlace de este artículo. Mark recibirá el aviso cuando lo envíes
Comprobación rápida
¿Ya leíste la guía? Compruébalo con 3 preguntas
Pregunta 01
¿Qué representa gasLimit?
Elige una respuesta para ver la explicación