Skip to content

Gas Cost Reference

Back to Syscalls

All registered embedded-runtime syscalls sorted by gas cost, grouped into cost tiers.

Tier 1 — 1 GAS unit

Metadata reads, logging, and iterator traversal. Cheap and safe to call frequently.

Syscall NameCategory
System.Storage.GetContextStorage
System.Storage.GetReadOnlyContextStorage
System.Storage.AsReadOnlyStorage
System.Runtime.GetTriggerRuntime
System.Runtime.PlatformRuntime
System.Runtime.GetNetworkRuntime
System.Runtime.GetAddressVersionRuntime
System.Runtime.GetTimeRuntime
System.Runtime.GetScriptContainerRuntime
System.Runtime.GetExecutingScriptHashRuntime
System.Runtime.GetCallingScriptHashRuntime
System.Runtime.GetEntryScriptHashRuntime
System.Runtime.LoadScriptRuntime
System.Runtime.GetInvocationCounterRuntime
System.Runtime.LogRuntime
System.Runtime.NotifyRuntime
System.Runtime.GetNotificationsRuntime
System.Runtime.GasLeftRuntime
System.Runtime.BurnGasRuntime
System.Runtime.CurrentSignersRuntime
System.Runtime.GetMsgValueRuntime
System.Iterator.NextIterator
System.Iterator.ValueIterator

Tier 2 — 10 GAS units

Contract interaction syscalls.

Syscall NameCategory
System.Contract.CallContract
System.Contract.GetCallFlagsContract
System.Contract.CreateStandardAccountContract
System.Contract.CreateMultisigAccountContract

Tier 3 — 50 GAS units

Syscall NameCategory
System.Runtime.GetRandomRuntime

Tier 4 — 100 GAS units

Storage read, delete, and search operations.

Syscall NameCategory
System.Storage.GetStorage
System.Storage.DeleteStorage
System.Storage.FindStorage
System.Storage.Local.GetStorage
System.Storage.Local.DeleteStorage
System.Storage.Local.FindStorage

Tier 5 — 200 GAS units

Syscall NameCategory
System.Runtime.CheckWitnessRuntime

Tier 6 — 1,000 GAS units

Storage writes and cryptographic verification. The most expensive operations.

Syscall NameCategory
System.Storage.PutStorage
System.Storage.Local.PutStorage
System.Crypto.CheckSigCrypto
System.Crypto.CheckMultisigCrypto

Gas Accuracy

The neo-devpack-solidity embedded runtime tracks syscall gas costs with static approximation tables. The primary gaps are in storage pricing (which depends on the dynamic Policy.getStoragePrice() value on mainnet) and opcode-level metering. Always perform final gas estimation against a Neo N3 testnet node before mainnet deployment.

LoadScript

System.Runtime.LoadScript is present in the syscall registry for Neo N3 surface parity, but the embedded runtime rejects it at execution time. Use System.Contract.Call for inter-contract calls.

MIT Licensed