UNDER THE HOOD · RUNS IN YOUR BROWSER

Storage layout visualizer

Pack Solidity value types into little 32-byte drawers.

Supports uint/int (8–256 bits), bool, address and bytes1–bytes32. Simple sequential declarations only; low-order bytes appear on the right.

HOW THE CONCEPT WORKS · SEPARATE TEACHING EXAMPLE
Pack small values into Solidity storage slotsStep 1 / 4
Pack small values into Solidity storage slotsFirstuint128 A16 bytesSeconduint128 B16 bytesThirduint256 C32 bytesSimple elementary types only; not a complete compiler layoutSlot 0 · 32 bytesUnused · 16 BA · 16 BHigh-order bytes ← → low-order bytesSlot 0 · fullB · 16 BA · 16 BDeclaration order and sizes determine this packingSlot 0BASlot 1C · 32 bytesTry different sequences in the storage-layout tool

In this simple default-layout example, two uint128 values come before one uint256. Each slot holds thirty-two bytes.

Animated local teaching model. No wallet, RPC or live blockchain data. Some labels and hashes are abbreviated for readability.

How to use this storage layout

Visualize packing for a simple sequence of Solidity elementary value types. Inspect slot and byte offsets. Excludes structs, arrays, inheritance and mappings. Start with the prefilled example, change an input, and run the calculation. Invalid values produce an explanation rather than a misleading result.

What the result means

These results describe your supplied inputs. They do not query a blockchain, check balances, estimate current network conditions, or submit transactions. Read solidity storage slots for the meaning and limits of the calculation.