Wei to Ether Converter
Convert between Wei, Gwei, and Ether denominations
About This Tool
What this converter does
This tool takes a Wei amount and shows you the same value expressed in the four common Ethereum denominations: Kwei (Babbage), Mwei (Lovelace), Gwei (Shannon), and Ether. It runs entirely in your browser, so nothing is sent to a server. There is no conversion of ETH to dollars, no live price feed, and no wallet connection. It is a pure unit converter between fixed protocol denominations.
Wei is the smallest indivisible unit on Ethereum. Nothing smaller exists at the protocol level. Every on-chain amount, including your account balance and every transfer in every transaction, is stored as a whole number of Wei. The other names you see are just shorthands for specific powers of ten of Wei, the same way kilo, mega, and giga are shorthands for powers of ten of a base unit.
Who actually needs this
Anyone reading raw on-chain data ends up needing it sooner or later. The most common cases:
- Reading Etherscan or a block explorer. Internal transaction values, contract storage slots, and event logs are often shown in Wei. Pasting that number here gives you the Ether figure a human can reason about.
- Smart contract development. Solidity stores everything as
uint256Wei. When you write tests with Foundry, Hardhat, or Remix, you constantly switch between human-readable Ether and the integer Wei the EVM actually sees. - Auditing transactions or invoices. If someone gives you a Wei figure from a contract event and you need to sanity-check it against an invoice in ETH, this turns one into the other in a second.
- Working with gas figures. Gas prices are quoted in Gwei, but raw transaction objects (and many RPC responses) carry them as Wei. Going the other way, you can sanity-check that the Wei number in a transaction matches the Gwei price your wallet showed you.
- Learning the unit system. If you are new to Ethereum and the zeros are confusing, typing values in and watching what the other rows do is the fastest way to internalise the relationships.
How to use it
Type a whole-number Wei amount into the single Wei field. As soon as the value parses, the four result rows appear below: Kwei, Mwei, Gwei, and Ether. There is no Convert button. The results update on every keystroke. Each row has a Copy button that places that specific value on your clipboard so you can paste it straight into Etherscan, a script, or a spreadsheet.
If the input is empty, no result card is shown. If the input is not a valid whole number, for example you typed a decimal point, a letter, or pasted something with a comma, the parser silently rejects it and again no results are shown. That is your signal to clean the input up.
How it works under the hood
Every Ethereum denomination is a fixed power-of-ten multiple of Wei, defined by the protocol. The conversions are simple divisions by constants:
Kwei = Wei / 10^3(divide by 1,000)Mwei = Wei / 10^6(divide by 1,000,000)Gwei = Wei / 10^9(divide by 1,000,000,000)Ether = Wei / 10^18(divide by 1,000,000,000,000,000,000)
Internally the tool first does BigInt(weiAmount) on your input. That single call serves as both the validator and the parser: BigInt only accepts integer strings, so anything with a decimal, a separator, or non-digit characters throws and the result silently becomes null. After that the BigInt is cast to a regular JavaScript Number and divided by the relevant power of ten. The Ether row is then formatted with toFixed(18) and a regex that strips trailing zeros and a trailing decimal point, so 1.000000000000000000 displays as 1 and 0.000021000000000000 displays as 0.000021. Kwei, Mwei, and Gwei use the default number formatting.
These ratios are part of the Ethereum protocol. They have not changed since the network launched and they will not change. They are not market prices and have nothing to do with the USD value of ETH.
A worked example
Take the classic case: a transaction that transfers exactly 1 ETH. The raw value on chain is 1000000000000000000 Wei. Paste that into the field and you get:
- Kwei:
1000000000000000(one quadrillion) - Mwei:
1000000000000(one trillion) - Gwei:
1000000000(one billion) - Ether:
1
A more realistic gas example: a base transfer costs 21,000 gas units, and at a 20 Gwei gas price the fee is 21000 × 20 × 10^9 = 420000000000000 Wei. Paste that and you get Gwei 420000 and Ether 0.00042. That is the kind of number you commonly see as the "transaction fee" line on a block explorer.
Common pitfalls
- Decimal Wei does not exist. If you try to enter
1.5nothing happens. Wei is the indivisible base unit. If you actually meant 1.5 Ether, type the Ether-side number as Wei:1500000000000000000. - No commas or underscores. Strip out any thousands separators before pasting.
1,000,000,000,000,000,000will not parse;1000000000000000000will. - Scientific notation will not work either.
1e18is not a valid BigInt input. Use the fully expanded number. - Negative numbers are not useful here. Balances and transfer values on Ethereum are non-negative. A leading minus parses, but the output rows are not a meaningful representation of anything on chain.
- The Ether row trims trailing zeros. That is intentional and matches how humans write the number. If you need a fixed-width 18-decimal string for a script, format it yourself.
- Floating-point precision at very large balances. The Kwei, Mwei, Gwei, and Ether rows all flow through a regular JavaScript
Number, which has about 15 to 16 significant digits of precision. For values up to a few thousand Ether this is irrelevant. For very large balances (think exchange hot wallets with millions of Ether), the last digits in the displayed result can drift. The input is still parsed as BigInt and is exact, but the displayed conversion is not. For accounting at full Wei precision, verify against your wallet or a library that keeps integer precision end to end.
When not to use this tool
It is the wrong tool for any of these:
- Converting ETH to USD or any other currency. There is no price feed. Use an exchange page or a price API.
- Converting to or from other tokens. ERC-20 tokens have their own decimals (often 18 like Ether, but not always: USDC and USDT use 6, WBTC uses 8). Treating a token amount as Wei will silently give you the wrong number. Look up that token's
decimals()first. - Other chains. The Wei/Gwei/Ether naming is Ethereum-specific. Most EVM chains (Polygon, BNB Chain, Arbitrum, Base, Optimism) use the same 10^18 ratio for their native gas token, but the units are not literally called Wei and Ether. Bitcoin uses sat (10^8 per BTC), not Wei. Solana uses lamports (10^9 per SOL). Cardano uses lovelace (10^6 per ADA) — note the name clash with Ethereum's Mwei; they are unrelated.
- Producing audit-grade numbers for very large balances. See the floating-point note above.
Related concepts worth knowing
- Other named units. The full list of Ethereum denominations includes Wei, Kwei (Babbage), Mwei (Lovelace), Gwei (Shannon), Twei or Microether (Szabo, 10^12), Pwei or Milliether (Finney, 10^15), and Ether (10^18). This tool focuses on the four you actually see in the wild.
- Why Gwei for gas. Gas prices in Ether terms are tiny (billionths). Writing
0.00000002 ETHis awkward. Writing20 Gweiis not. Gwei is the unit of choice for anything gas-related in MetaMask, Etherscan, and most RPC docs. - EIP-1559 fee fields. Post-London transactions have a
maxFeePerGasand amaxPriorityFeePerGas, both stored as Wei in the raw transaction but quoted to humans in Gwei. This converter is useful when one tool gives you one form and another expects the other. - Sister tools. If you already have a Gwei number, the Gwei to Ether Converter saves you a step. If you wandered in from Bitcoin land, the Satoshi to Bitcoin Converter does the same job for sats.
If the result looks wrong
Three things to check:
- Did the result card appear at all? If not, the input failed to parse. Look for stray characters, commas, decimal points, or whitespace.
- Are you off by a factor of 10^9? You probably pasted a Gwei figure into the Wei field. Either multiply by 10^9 first, or use the Gwei to Ether converter directly.
- Are you off by a factor of 10^18? You pasted Ether into the Wei field, or vice versa. Re-check which unit the source value is in.
If you have triple-checked all of that and the Ether row still looks off in the last few digits, you are probably looking at a very large balance hitting the floating-point precision limit described above. Cross-check with a tool that uses BigInt division all the way through.
The about text and FAQ on this page were drafted with AI assistance and reviewed by a member of the Coherence Daddy team before publishing. See our Content Policy for editorial standards.