Saltar al contenido

Tarifa base EIP-1559: fórmula, límites y coste de transacción

Aprende cómo Ethereum calcula la tarifa base EIP-1559 de cada bloque a partir del gas usado por el bloque padre, cómo actúan los límites y cómo verificar el coste.

Actualizado

Solo con fines educativos; no constituye asesoramiento de inversión. Invertir puede ocasionar pérdidas.

Respuesta directa

La tarifa base EIP-1559 es el precio mínimo por unidad de gas de ejecución que fija el protocolo en un bloque de Ethereum. Sube si el bloque padre usa más gas que su objetivo, baja si usa menos y no cambia si coincide. La parte pagada como tarifa base se quema en vez de entregarse al validador.

Cada bloque tiene un único base_fee_per_gas, conocido antes de ejecutar sus transacciones. Con el multiplicador de elasticidad 2 de Ethereum, el objetivo es la mitad del límite de gas del bloque; así se absorben picos breves y el uso medio vuelve hacia el objetivo.

Una transacción de tipo 2 indica max_fee_per_gas y max_priority_fee_per_gas. El primero limita el precio total por gas y el segundo la propina. Un límite alto no se cobra entero automáticamente: solo se paga la tarifa base más la propina permitida por el gas consumido.

Comisión de red
0,000462 native
Equivalente en moneda fiduciaria
$1,39
Comisión base
22 gwei

Los resultados son aproximaciones educativas. Salvo que se indiquen, excluyen reglas del mercado, impuestos, latencia, comportamiento de oráculos y otros parámetros específicos del protocolo.

Cómo funciona

1. Calcular la tarifa base del bloque siguiente

Sea B la tarifa base del bloque padre, G su gas usado y T = parent gas limit / 2 su objetivo. Ethereum usa aritmética entera:

  • En el objetivo: G = T, por tanto B_next = B.
  • Por encima: B_next = B + max(floor(B * (G - T) / T / 8), 1 wei).
  • Por debajo: B_next = B - floor(B * (T - G) / T / 8).

En un bloque padre lleno, G = 2T: la subida máxima de ese paso es 12.5%; un bloque vacío reduce hasta 12.5%. El mínimo de 1 wei solo evita que una subida se redondee a cero.

2. Aplicar los límites de la transacción

Para una transacción de tipo 2 incluida, la propina y el precio efectivos son:

  • effective_priority_fee = min(max_priority_fee_per_gas, max_fee_per_gas - base_fee_per_gas)
  • effective_gas_price = base_fee_per_gas + effective_priority_fee
  • transaction_fee = gas_used * effective_gas_price

No puede incluirse si max_fee_per_gas < base_fee_per_gas. Si el límite no deja espacio para la propina solicitada, esta se reduce. La tarifa base se quema y la tarifa de prioridad va al destinatario de comisiones del bloque.

3. Conciliar el recibo

Lee baseFeePerGas del bloque y gasUsed junto con effectiveGasPrice del recibo. Verifica que gasUsed * effectiveGasPrice coincida con el cambio de saldo por ejecución. El gas no consumido no se cobra y el margen sin usar bajo max_fee_per_gas no es otro pago.

Ejemplo calculado

Supón un bloque padre con objetivo 15,000,000 gas, uso del límite completo 30,000,000 gas y tarifa base 30 gwei. El paso máximo es 30 gwei * 12.5% = 3.75 gwei; la tarifa siguiente es 33.75 gwei (salvo el detalle de redondeo inferior a 1 wei).

Ahora una transferencia usa 21,000 gas, con max_fee_per_gas = 50 gwei y max_priority_fee_per_gas = 2 gwei:

  • Propina efectiva: min(2, 50 - 33.75) = 2 gwei.
  • Precio efectivo del gas: 33.75 + 2 = 35.75 gwei.
  • Coste total: 21,000 * 35.75 = 750,750 gwei = 0.00075075 ETH.
  • Tarifa base quemada: 21,000 * 33.75 = 708,750 gwei = 0.00070875 ETH.
  • Propina del validador: 21,000 * 2 = 42,000 gwei = 0.000042 ETH.

El máximo 50 gwei es un límite, no el precio cobrado. Si la tarifa base supera 50 gwei antes de la inclusión, la transacción no será elegible hasta que baje o se reemplace con un límite mayor.

Riesgos

  • La estimación de la cartera usa bloques recientes; un choque de demanda puede elevar la tarifa antes de la inclusión.
  • Un max_fee_per_gas bajo deja la transacción pendiente; uno innecesariamente alto amplía el límite autorizado aunque normalmente no se cobre entero.
  • Una ejecución revertida consume gas, por lo que una acción fallida aún puede quemar tarifa base y pagar propina.
  • Una propina mayor puede mejorar la prioridad, pero no garantiza posición, éxito ni finalidad.
  • Los datos de cartera, RPC, explorador o nodo pueden estar desactualizados; verifica juntos el bloque y el recibo.
  • Los parámetros de mainnet no describen toda red rollup o similar a EIP-1559; pueden cambiar elasticidad, denominador, mínimos y recargos.
  • Quemar la tarifa base no garantiza que caiga la oferta de ETH; también importan emisión y quema totales.
  • No confundas gas_limit, límite y objetivo de gas del bloque, gas_used, precio por gas y coste total.

Errores comunes

1. El bloque actual decide su propia tarifa base

El gas usado por el bloque padre determina la tarifa del siguiente; el bloque actual ya la tiene fijada en su cabecera.

2. Todo bloque sobre el objetivo sube la tarifa un 12.5%

El cambio es proporcional a la distancia al objetivo. 12.5% es el máximo al llegar al límite completo con los parámetros estándar.

3. max_fee_per_gas siempre se paga entero

Es un límite. El precio efectivo suma tarifa base y prioridad permitida, sujeto al límite, y se multiplica por el gas usado.

4. El validador recibe toda la tarifa de gas

La tarifa base se quema. El ingreso de ejecución del validador es la prioridad efectiva, no todo el precio efectivo.

5. Quemar la tarifa base hace deflacionaria cada transacción

La transacción quema ETH, pero la oferta total solo baja si la quema agregada supera la emisión agregada.

Temas relacionados

Fuentes

Navegación

Buscar en la wiki...