On-chain TVM global version 12, sandbox TVM global version 11.
measured in both sandbox (local testing) and on-chain (testnet) environments.
Single transfers
Gas costs vary between sandbox and on-chain due to different VM configurations, but the relative comparison between wallet versions remains consistent.Batch transfers
| Wallet Version | Sandbox (gas) | On-chain (gas) | Notes (12 messages are chosen for simplicity) |
|---|---|---|---|
| V3 | 14,760 | - | Supports up to 4 messages per transaction |
| V5 | 11,392 | 10,892 | Efficient with batch compared to V3/V4 |
| Highload V3 | 7,956 | 7,911 | Less gas, but uses 2 transactions for batch |
Total cost
| Wallet Version | Single Transfer | 4 Messages | 12 Messages | 50 Messages |
|---|---|---|---|---|
| V3 | 0.0022648 TON | 0.0048448 TON | N/A | |
| V4 | 0.0023872 TON | 0.0049704 TON | N/A | |
| V5 | 0.0031356 TON | 0.0059768 TON | 0.0137208 TON | 0.05052 TON |
| Highload V3 | 0.0036404 TON | 0.0158308 TON | 0.0521892 TON |
Keep in mind that Highload V3 is using two transactions for batch transfers, this incur additional fwd fee costs.
For example, if we use 12 messages for simplicity, total cost is:
0.0137208 TON for Wallet V5 (1 transaction with 12 messages).0.0145344 TON for Wallet V3 (3 transactions with 4 messages each).0.0158308 TON for Highload V3 (2 transactions with 12 messages).- V5 has higher gas overhead for single transfers (+65% vs V3) but becomes efficient with batch operations. Supports up to 255 messages per transaction.
- Highload V3 is expensive for single transfers but becomes highly efficient at scale:
- Gas cost doesn’t change with the number of messages in a batch
- 100 messages: ~79 gas/msg
- Designed for handling thousands of transactions
Methodology
Sandbox measurements:
Framework: Blueprint + @ton/sandboxWallets: implementations from @ton/ton (V3R2, V4, V5R1) and Highload V3 sources
Test scenario: Simple transfer of 0.01 TON with
PAY_GAS_SEPARATELY mode
On-chain measurements:
Network: TON testnetWallets: Same implementations as sandbox
Measurement: Actual transaction gas consumption from explorer data
Absolute gas numbers may vary slightly due to:
- VM configuration differences (sandbox vs on-chain)
- Message size or the way you construct the message
Use case recommendations
Based on cost-effectiveness: For retail users (1-10 transactions/day):- Use V3 or V4 — most cost-effective for single transfers (2,994 gas baseline)
- V5 adds 65% gas overhead for single transfers but provides modern features
- Total cost difference negligible for low volume; choose based on feature needs
- Use V5 for batch operations — 6% savings vs V3 for 12-message batches
- Single V5 batch (255 msgs) more efficient than multiple V3/V4 batches
- V5 supports up to 255 messages per transaction vs V3/V4 limit of 4
- Highload V3 becomes efficient with large batches
- Designed for exchanges and payment processors (different processing approach)
- Gas cost remains constant regardless of batch size (unlike V3/V4/V5)
- Note: Uses 2-transaction approach resulting in ~1.8x higher forward fees
- Highload V3: 7956 gas per batch (flat cost regardless of batch size)
- V5: ~1,069 gas/message for 12 messages (scales down with larger batches)
- V3/V4: ~1,230 gas/message (limited to 4 messages per batch)
Code examples
Check gas-research and tolk-bench projects for code examples. Key features of the gas-research testing suite:- Comprehensive gas and fee breakdown analysis
- Automated benchmarking across all wallet versions
- Fee calculation helpers for precise cost analysis