Bitcoin is a technological tour de force” -Bill Gates

There are two primary means to get started mining with P2Pool:

  1. Set up a local P2Pool node, ideally where you keep your miners.
  2. Mine on a public P2Pool node near you.

By design P2Pool is intended to be run locally by the miner, and this is almost always the most efficient method.

1. Setup a local node

There are many great tutorials in our Community and Resources section for setting up p2pool on the operating system and for the currencies of your choice.

P2Pool Source Code:

Forrest Voight’s Main Branch:

For P2Pool Alternative Versions, Dashboards and Setup Guides Visit Our Community & Resources Section.

Want to try P2Pool out first?

Miner Configuration

We recommend setting three separate p2pool nodes in your miner, a primary and two backups. If your primary fails your miners will switch to a backup node and you will not loose any time or accumulated shares, this is part of the DDoS resistance of P2Pool.
Do not use an exchange address for your payments!
  • Pool #1:
    Pool URL: stratum+tcp://
    Username: Your_Bitcoin_Address_For_Payment
    Password: Not required
  • Pool #2:
    Pool URL: p2pool_backup_pool_url:port
    Username: Your_Bitcoin_Address_For_Payment (the same as above to preserve shares)
    Password: Not required
  • Pool #3:
    Pool URL: p2pool_backup_pool_2_url:port
    Username: Your_Bitcoin_Address_For_Payment (the same as above to preserve shares)
    Password: Not required

2. Mine on a Public Node

When choosing your public nodes for p2pool keep in mind three important factors:

  1. Reliability/Trust
  2. Latency
  3. Your Efficiency

1. A very special feature of p2pool is that your found shares are stored on every p2pool node, if one node goes down you can switch to another and continue mining uninterrupted. Because of its decentralization p2pool is highly resistant to malicious attacks that often will take other pools offline. It is recommended to configure your miner with three separate p2pool nodes for maximum reliability.

When operating your own node p2pool is completely trust less, when you mine on someone else’s node you are trusting them to configure it properly and not be a bad actor. Verifying the node fee is typically a good place to start, fees can be set by the node operator between 0 and 100%. You can view the fee of any public node by visiting “/fee” (example). Other factors you may want to consider include uptime, node hash rate, and latency.

2. Latency (the time it takes for your data to reach the node) is very important with P2Pool, more so then with traditional mining pools. It is a good idea to ping any node you are considering mining on from where you will be mining to ensure you have a fast connection.

Latency Recommendations

  • Greater than 100ms – Too far, look for a closer node
  • Less than 100ms – Looking good
  • Less than 50ms – Great, your in the zone!
  • Less than 30ms – It's raining hashes...
  • Less than 10ms – Are you sleeping in my data center?

3. Because of its decentralized nature, and fast expected time to share p2pool has a higher stale and DOA share rate then a traditional pool. Your efficiency, not the nodes efficiency, relative to the global pool is important to monitor. If your efficiency is equal to or better then the global average you are mining at an advantage compared to the majority of the pool.

Most front ends will provide both node and pool efficiency. They may also be found at “/local_stats” and “/global_stats” respectively. After you have given your miners some time to establish a baseline review your DOA and orphan share rate as compared to the overall pools. A high DOA rate means you may have something wrong with your miner configuration while a high orphan rate means there is high latency between your node and the rest of the pool.

Other resources can be fund under our Community & Resources section.