Polkadot Nomination Pools Implementation Guide

A short writeup on implementing Polkadot nomination pools for wallet and application builders in the Polkadot ecosystem.

By PolkadotOctober 30, 2022

A short writeup for the Polkadot ecosystem on implementing the newly released nomination pools feature.

What?

Nomination pools are a new type of scaling solution that's being added to Polkadot staking. It mainly targets the stakers who do not have enough DOT to participate actively in the normal staking process, i.e. as a “nominator”. Learn more about pools at the following links:

How?

Pool members have a much simpler API compared to nominators: They join a pool, they can increase or decrease their stake in that pool, and they can claim their rewards whenever they want.

On the other hand, the process of creating and managing a pool is entirely new and we expect that to be the most work heavy part for our ecosystem, wanting to support pools. Nonetheless, you can focus on the “Pool member experience” at first, since most of those who want to manage a pool will be “power users” who can find their way in Polkadot JS Apps or other UIs with rough edges.

Here are some resources to help you with implementation:

Why?

Polkadot’s complicated taking system has been the subject of a lot of community feedback over the last year. A portion of these stakers have already migrated to other staking services. A number of them are nominating on Polkadot, but are not always earning rewards. Therefore, we expect a large number of end users to wish to move back to staking directly on the Relay Chain (as opposed to more centralized services) and pools are exactly the tool for that. This is a great opportunity for the entire ecosystem to help these users achieve this goal, while attracting more users.

We encourage all wallets in our ecosystem to identify nominators who are not earning rewards, and invite them to join nomination pools. See this issue as further information around this.

Common Mistakes / Notes

Here are a few mistakes that we realized over the last few months UI implementers should keep an eye on.

Pool Members

  1. In general, whenever a pool member changes their total point, the chain will automatically claim all their pending rewards for them. This is not optional, and MUST happen for the reward calculation to remain correct (see the documentation of `bond` as an example). So, make sure you are warning your users about it. They might be surprised if they see that they bonded an extra 100 DOT, and now suddenly their 5.23 DOT in pending reward is gone. It is not gone, it has been paid out to you!
  2. Joining a pool implies transferring funds to the pool account. So it might be (based on which wallet that you are using) that you no longer see the funds that are moved to the pool in your “free balance” section. Make sure the user is aware of this, and not surprised by seeing this. Also, the transfer that happens here is configured to to never accidentally destroy the sender account. So to join a pool, your sender account must remain alive with 1 DOT left in it. This means, with 1 DOT as existential deposit, and 1 DOT as minimum to join a pool, you need at least 2 DOT to join a pool. Consequently, if you are suggesting members to join a pool with “Maximum possible value”, you must subtract 1 DOT to remain in the sender account to not accidentally kill it.
  3. Points and balance are not the same! Any pool member, at any point in time, can have points in either the bonded pool or any of the unbonding pools. The crucial fact is that in any of these pools, the ratio of point to balance is different and might not be 1. Each pool starts with a ratio of 1, but as time goes on, for reasons such as slashing, the ratio gets broken. Over time, 100 points in a bonded pool can be worth 90 DOT. Make sure you are either representing points as points (not as DOT), or even better, always display both: “You have x points in pool y which is worth z DOT”. See here and here for examples of how to calculate point to balance ratio of each pool (it is almost trivial ;))

Pool Management

The pool will be seen from the perspective of the rest of the system as a single nominator. Ergo, this nominator must always respect the `staking.minNominatorBond` limit. Similar to a normal nominator, who has to first `chill` before fully unbonding, the pool must also do the same. The pool’s bonded account will be fully unbonded only when the depositor wants to leave and dismantle the pool. All that said, the message is: the depositor can only leave the chain when they chill the pool first.

From the blog

The best Web3 games to play in 2025

2025 is shaping up to be a breakthrough year for Web3 games. These are the top titles delivering fun, ownership, and real rewards—with no hype required.

What is decentralized AI? A beginner’s guide to blockchain-powered intelligence

Decentralized AI distributes data, compute, and control. It makes AI more open, private, and community-driven. Learn how Polkadot supports this shift.

How to get involved with Polkadot DAO: A beginner’s guide to OpenGov and Polkassembly

A step-by-step Polkassembly guide for beginners looking to vote, delegate, and participate in Polkadot’s onchain governance system.

Identity on your terms: How decentralized digital identity works

Explore how decentralized identity works and why Polkadot is powering the next era of user-controlled credentials.

Build your own chain, your way: Meet the Polkadot SDK

The Polkadot SDK gives builders full control over blockchain development. Learn how teams use this modular, open-source framework to launch fast, secure, and interoperable networks.

Polkadot's Web3 Philosophy: A legacy of digital freedom from Jobs to Wood

Web3 is the next evolution of personal technology and digital freedom. From Steve Jobs and personal computing to Gavin Wood's vision, explore how Web3 vs Web2 represents individual empowerment over corporate control.

Polkadot at Consensus 2025: Demos, DAO talk, and new audiences

Consensus 2025 leaned into real-world adoption with a crowd that cared about practical use cases and tangible outcomes. Polkadot showed up with demos, onboarding, and a message that kept things grounded.

The gamer’s guide to blockchain: Ownership, influence, and what comes next

Web3 gaming is redefining ownership, player agency, and game design. Discover what’s changing and how Polkadot is helping build more immersive, community-first experiences.

How DePIN is bringing real infrastructure and real users to Web3

Decentralized Mic brought together leaders from Silencio, Acurast, and DePIN Hub to explore how decentralized infrastructure networks are creating real-world utility, rewarding users, and reviving Web3’s original values.

What is the Polkadot DAO? A beginner’s guide to decentralized governance

Get a high-level overview of the Polkadot DAO, including how it coordinates funding, decision-making, and participation across the ecosystem, and how you can get involved.

Chain abstraction and the future of Web3 UX: Insights from Decentralized Mic

Discover how chain abstraction can remove complexity from Web3, improving user experience and enabling multichain applications. Featuring insights from Agoric, Polytope Labs, Sommelier, and Polkadot.

The rise of AI agents in crypto: how DeFAI is reshaping finance

AI agents are transforming DeFi into a more intelligent, autonomous system. Discover how DeFAI is redefining finance, and how Polkadot’s modular design supports this shift.