Polygon Node Requirements: How to Become a Polygon Validator
Running a validator node on the Polygon PoS network is a way to move from simply using the chain to actively securing it. In return for staking POL tokens and maintaining the two-machine sentry architecture, validators earn a share of network fees and staking rewards.
This guide walks through the entire process, from hardware specs and port configuration to installing the consensus and execution clients, syncing with snapshots, and finally staking your tokens to join the active set.
Set up your Polygon server in minutes
Run high-performance Polygon workloads on customizable bare metal with 24/7 support and crypto payments.
#What is a Polygon Validator Node?
A Polygon validator node is a full node that has been registered to participate in consensus and produce blocks on the Polygon PoS network. To do this securely, it operates two distinct services across two separate machines: Heimdall, a consensus layer built on CometBFT, and Bor, an execution layer that processes transactions and generates blocks.
Unlike an RPC node, a validator node doesn't sit quietly in the background serving data. It's part of the block production machinery. This means uptime and reliability are non-negotiable, every ~34 minutes, a checkpoint transaction must be signed by every validator, and missed signatures lower your performance score. If it happens enough, you can be removed from the active set entirely.
Polygon caps the validator set at 105 active participants, so a new validator can only join when an existing one unbonds or gets removed for underperformance. You'll need to submit an application via the Polygon validators hub (https://polygoncommunity.typeform.com/validatorshub) and wait for a slot to open.
The architecture itself is split across two machines: a sentry node that faces the public internet and a validator node that sits behind it, firewalled off from everything except its trusted sentry. This separation is not optional for a production deployment, we'll cover exactly how to wire them together.
#Polygon Validator Node Requirements
Before you deploy anything, make sure both of your machines meet the necessary Polygon validator node requirements. Skimping on hardware leads to missed blocks, checkpoint failures, and eventually ejection from the validator set.
#Polygon Node Hardware Requirements
Below are the official mainnet specs from the Polygon documentation. Both the sentry and validator nodes require identical hardware, 16 cores, 64 GB of RAM, and at least 8 TB NVMe SSD (Polygon’s snapshot documentation references 9TB block devices, and keeps the chain growing).
| Node Type | CPU | RAM | Storage | Network |
|---|---|---|---|---|
| Sentry Node (Recommended) | 16 cores | 64 GB | 8 TB NVMe SSD | 1 Gbit/s symmetric |
| Validator Node (Recommended) | 16 cores | 64 GB | 8 TB NVMe SSD | 1 Gbit/s symmetric |
| Testnet (Amoy) | 16 cores | 16 GB | 2 TB NVMe SSD | 1 Gbit/s |
Polygon nodes are punishing on disk I/O. Bor maintains a massive state database, and Heimdall constantly writes to its own data directory. We've seen dedicated bare metal servers consistently outperform virtualized cloud instances here, you're not competing for shared I/O bandwidth, and when your validator is signing checkpoints every 34 minutes, I/O lag isn't something you want to gamble with.
Beyond the node hardware, you'll also need an Ethereum RPC endpoint (either your own node or a reliable provider) for checkpoint submissions, plus an ETH balance of 0.5 to 1 ETH in your signer address to cover gas costs.
#Polygon Node Software Requirements
- Ubuntu 22.04 LTS (or newer)
- SSH access and a sudo user on both machines
- build-essential and erlang (required for RabbitMQ)
- RabbitMQ (validator node only)
#Ports to Open
Getting the port configuration wrong is the most common reason validator setups fail to find peers. Let's lock it down correctly from the start.
Sentry Node (Public-Facing)
| Port | Protocol | Purpose |
|---|---|---|
| 26656 | TCP | Heimdall P2P |
| 30303 | TCP/UDP | Bor P2P |
| 22 | TCP | SSH (restrict to your IP) |
| 26660 | TCP | Prometheus metrics (optional) |
| 7071 | TCP | Bor metrics (optional) |
Validator Node (Internal Only)
| Port | Protocol | Purpose |
|---|---|---|
| 30303 | TCP/UDP | Bor P2P (only to sentry IP) |
| 26656 | TCP | Heimdall P2P (only to sentry IP) |
| 26660 | TCP | Metrics (internal) |
| 7071 | TCP | Metrics (internal) |
Pro Tip: On the validator, never open SSH (port 22) to the public internet. Keep it accessible only via a VPN or internal network.
#How to Set Up a Polygon Validator Node
#Step 1: Prepare Both Machines
sudo apt-get update && sudo apt-get upgrade -y
sudo apt-get install build-essential -y
#Step 2: Configure the Firewalls
Sentry:
sudo ufw allow 22/tcp
sudo ufw allow 26656/tcp
sudo ufw allow 30303/tcp
sudo ufw allow 30303/udp
sudo ufw enable
Validator:
sudo ufw allow from <sentry-ip> to any port 26656 proto tcp
sudo ufw allow from <sentry-ip> to any port 30303 proto tcp
sudo ufw allow from <sentry-ip> to any port 30303 proto udp
sudo ufw enable
#Step 3: Install RabbitMQ (Validator Only)
curl -1sLf https://dl.cloudsmith.io/public/rabbitmq/rabbitmq-erlang/setup.deb.sh | sudo -E bash
curl -1sLf https://dl.cloudsmith.io/public/rabbitmq/rabbitmq-server/setup.deb.sh | sudo -E bash
sudo apt-get update
sudo apt-get install -y erlang-nox rabbitmq-server
sudo systemctl enable rabbitmq-server
sudo systemctl start rabbitmq-server
#Step 4: Install Heimdall
curl -L https://raw.githubusercontent.com/0xPolygon/install/heimdall-v2/heimdall-v2.sh | bash -s -- <version> mainnet sentry
#Step 5: Configure Heimdall
cd /var/lib/heimdall/config
sudo curl -fsSL https://storage.googleapis.com/mainnet-heimdallv2-genesis/migrated_dump-genesis.json -o genesis.json
#Step 6: Install Bor
curl -L https://raw.githubusercontent.com/0xPolygon/install/main/bor.sh | bash -s -- <version> mainnet sentry
#Step 7: Configure Bor
chain = "mainnet"
static-nodes = ["enode://<sentry>@<ip>:30303"]
#Step 8: Download Snapshots
Extract into:
/var/lib/heimdall/var/lib/bor
sudo chown -R heimdall:nogroup /var/lib/heimdall
sudo chown -R bor:nogroup /var/lib/bor
#Step 9: Start Heimdall
sudo systemctl enable heimdalld
sudo systemctl start heimdalld
#Step 10: Start Bor
sudo systemctl enable bor
sudo systemctl start bor
#Step 11: Connect Validator to Sentry
pex = false
persistent_peers = "<sentry-node-id>@<sentry-ip>:26656"
#Step 12: Stake POL
Go to: https://staking.polygon.technology/
Minimum stake: ~10,000 POL
#Securing Your Validator Node
Keep your signing key secure. Never expose RPC ports. Prefer bare metal servers for stability.
#Conclusion
You've now got a sentry-validator pair ready to stake. With solid hardware and proper configuration, you're positioned to earn rewards while securing the network.
Deploy a Polygon RPC node in minutes
Dedicated bare metal server configurations optimized for Polygon RPC workloads.
How to Become a Polygon Node Validator FAQs
How much POL do I need?
As of September 2026, you'll need around ~10,000 POL.
Can I run both Polygon nodes on one machine?
It is not recommended to run both Polygon nodes on one machine.
How often are checkpoints?
The checkpoints are in every ~34 minutes.
What happens if my Polygon node goes offline?
If your Polygon nose goes offline, you can lose rewards and risk removal.
Deploy secure and high-performance nodes on dedicated infrastructure.