Skip to main content
Size the machine for the job the node will do, not for gaiad in general. A validator that signs blocks needs less disk than a remote procedure call (RPC) node that serves history. An archive node is in a different class altogether. Figures below were checked on 2026-10-15. Disk use grows every day, so measure your own node after it syncs.

Size by node type

Memory matters most at upgrade time. Some Hub upgrades run store migrations that need far more RAM than steady state. A node killed by the kernel in the middle of a migration can be left with a store that only a snapshot restore repairs. The floor is 32 GB for anything that must come back quickly after an upgrade. Disk must be local NVMe or an equivalent low latency SSD. Network attached block storage with high latency makes block processing fall behind the chain.

Start from a snapshot

A pruned snapshot restores to a data directory that starts small and grows. On 2026-10-15 the pruned snapshots from the providers on the Sync a node page were between 9 and 19 GB compressed. Expect the data directory to grow by several GB per week with default pruning, more with the transaction indexer on.

Archive nodes

An archive node keeps every state, which means pruning = "nothing" from the first block. You cannot turn a pruned node into an archive node later. The Hub archive is multiple terabytes. The exact figure was not measured in this pass. Ask an archive operator on Discord for a current number, or restore an archive snapshot onto generously sized storage and measure. Archives lists where historical data is kept.

Database footprint

gaia v29.0.1 can store its data in goleveldb (the default) or PebbleDB. The two backends use different file formats. The choice is therefore made before the first sync. A node changes backend only by restoring a snapshot made with the other one. See Database backends for the configuration and the switch. The disk ratio between the two was not measured in this pass, so treat the disk figures above as applying to either backend.

Operating system and software

  • Linux x86-64 or arm64. Release binaries are published for linux-amd64 and darwin-amd64. The container image is linux/amd64 only, so arm64 Linux needs a source build. macOS works for development. Windows is not supported because wasmvm does not build there.
  • Release binaries need no extra packages. A source build needs make, gcc, and Go 1.26.10. See Install gaiad.
  • Tools the pages on this site use: curl, jq, tar, lz4, zstd, gpg, and sha256sum (or shasum on macOS).
  • Raise the open file limit for the gaiad process. The systemd units on Run gaiad as a service set LimitNOFILE=50000.
  • Keep the clock synchronized with chrony or systemd-timesyncd. Consensus timestamps drift otherwise.

Network

Plan for at least 100 Mbit/s symmetric. The defaults allow 40 inbound and 10 outbound peers (max_num_inbound_peers, max_num_outbound_peers in config.toml). A node at those limits moves hundreds of GB per month. A seed node or public RPC node moves more. Sentry layouts for validators are on Security.

Swap

Swap is a safety net for upgrade migrations, not a substitute for RAM. On a machine with less than 32 GB, add a swap file so an upgrade migration finishes slowly instead of killing the process.
This creates a 16 GB swap file and enables it until the next reboot. Add /swapfile none swap sw 0 0 to /etc/fstab to keep it. Check it with swapon --show.

Verify

You should see at least four cores, 32 GB total memory (or 16 GB plus swap on a sentry), and free disk matching the table for the node type you are building.

Next

Install gaiad.