# How do you calculate gas limit for transaction with data in Ethereum? [duplicate]

What is the correct algorithm to calculate gas limit for transaction with data in Ethereum?

• It's not a duplicate! The attached QA has nothing to do with arbitrary data cost estimation. Feb 16, 2018 at 14:33

According to Ethereum Yellow Paper, in order to calculate gas limit for transaction with non-zero data you will need to use the following formula:

gasLimit = Gtransaction + Gtxdatanonzero × dataByteLength

where:

Gtransaction = 21000 gas

Gtxdatanonzero = 68 gas

dataByteLength — your data size in bytes

So, the final formula would look like this:

`gasLimit = 21000 + 68 * dataByteLength`.

If your data has 10 bytes, the gas limit would be:

`gasLimit = 21000 + 68 * 10 = 21000 + 680 = 21680`

• will it be different if I'm sending to a contract address? Jul 19, 2019 at 7:43
• How I can calculate dataByteLenght of my transaction? Jan 22, 2021 at 19:04
• Keep in mind if you're sending to a smart contract, that smart contract's internal functions will require additional gas depending on what all they do. Oct 13, 2021 at 4:19