One of the biggest unknowns right now in the Chia farming ecosystem is whether you will be better off joining a Chia pool, or farming your plots solo. First, this is going to be based on farming NFT plots with an on-chain pool not being actively exploited or cheating its farmers. OG Plots will almost certainly be better off solo over the long term as those pools will be more susceptible to dead weight double-farmers.
Recently Digital Spaceport put out a video detailing his switch from pooled farming to solo farming on his NFT plots. Prior to the switch he had two NFTs, each with 845 plots, connected to FlexPool and SpacePool respectively. And according to his video he was neck in neck on earnings between the two of them, which matches up with my observations and goes against what FlexPool was claiming earlier. In his video he makes some good points about the advantages and disadvantages of farming with a pool.
The first is how well your setup works. This is critical, because without a pool reporting back your stale or invalid partial rate you need to figure that out on your own. There are tools to do so, in fact Digital Spaceport’s video he released while I was working on this goes over one of them – ChiaDog. Basically when you join a pool you will get some feedback if your lookups are being reported to the pool in a timely manner, which is a good proxy for if your proofs would be delivered to the network in a timely fashion. One of the worst things ever would be waiting 4 months for a win and then when it finally comes having your storage take too long to respond and missing your reward.
However, if your setup is configured correctly then statistically you are probably better off to solo farm at this point. A pool is only as strong as the aggregate strength of its members, so if a percentage of the pool is poorly setup with slow lookups then the pool is going to miss rewards proportional to the percentage of slow lookup space. This is going to cause bad luck at worst, or at best cancel out any good luck the pool sees over time.
I think a service pools should offer / require is a log analysis service. Let farmers submit their INFO logs to a secure service and report back to them what the results are and some tips on how to fix it. FlexPool reports their farmer’s stale partials but they don’t do anything about it. In his video, Digital Spaceport shows his FlexPool dashboard and his stale percentage is unreal. As a FlexPool farmer this makes me concerned, because it shows that FlexPool is allowing farmers with a lower chance of winning a block to join the pool. And this is going to be true of a lot of our fellow farmers, on every pool. Every pool allows this, that is not a knock of FlexPool.

If you are seeing this high a stale percentage, with constant stale partials you have an issue, and you need to solve it. For my own setup I am way below 1% and the following chart still has me a little concerned because it is multiple stales at the same time, but only twice in 24 hours. That suggests to me that there is something else going on on my system that is causing disk lookup delays during that period.

The reason I think the pools should really be working with their farmers to sort that out is that I have been exceedingly lucky so far while farming. With 454 plots I have farmed 3 blocks in 4 months, which is wildly ahead of the curve. I think a lot of that luck is attributable to just having a consistently working setup. I didn’t really do anything special to achieve that, just used NFTS and made sure my disks don’t get too hot or go to sleep. I also farm on an i5 11400 with enough RAM. I have it hooked up via 10g ethernet to any remote plots (25 of them) and I have very reliable internet both on my network and past the edge. You can check out my setup here.
Just based on the two graphs shown here, I am far more likely not to miss a valid proof than Digital Spaceport should we both be about to farm a block. This adds up, especially since I highly doubt that Digital Spaceport is the only one having this issue. The luck component of this endeavor, and the expected time to win calculations are all based on the assumption that everything works perfectly. It does not, so if you can get yours working properly you will be ahead of the curve.
In his ChiaDog optimization video, which I will link again and strongly recommend you go watch, he goes over a large number of reasons for why he might be seeing these stales. The troubleshooting process he goes through is fantastic, and shows he has a LOT of work to do in order to go through everything end to end. Pay attention to him while he does it, because he goes through every layer of his setup that could influence the lookup times, from farmer performance to disk io to network to protocol overhead. You need to think about it all in order to have consistent fast lookups.
So what does this have to do with pools vs solo farming? In a nutshell, if you don’t think your farm consistently looks like the second picture, and is more often looking like the first, then sort out all your issues before you go solo. Pools spread out the pain from a missed block along with spreading the reward for a farmed one. If you think you are golden, then over enough time solo farming will almost certainly pay out better.
Luck is calculated on estimated space of pool.
Estimated space of pool is calculated with valid proofs.
So the ones that have stales and invalid proofs are just hurting themselves and not the pool at all.
They are just taking less reward than they should do with their REAL space.
So please explain me all this misleading information flexpool and others have been working on…
So a stale partial just means that had it been a full proof it would have been late and you might have missed the reward.
Yes so you are reporting less space than you have and having less reward than you should yourself. But this lost space is invisible for the pool and not affecting at all the pool luck at all.
Thats true until you go to win a block, and can’t because your lookups are too slow. Then it affects the pool.
No it is bad logic. The blocks will be found according to the % stales and reported proofs. So all this is just fantasy and bad logic invented by flexpool to win farmers.
The Only one hurted by stales is the Farmer itself not the pool.
No you’re not seeing it, sorry.
YOU are not seeing it.
If A farmer has 30% stales he has 30% chance to lose a block but for pool he is reported as a farmer who can win a block with the space he reports good so 70% of his space… so pool gives and takes rewards according to this 70% good reporting… The farmer will report the blocks if he got any within this 70% ratio as he reports. REAL space of the farmer and REPORTED space to the pool via proofs are 2 different things. Pool don’t care your real space. Pool luck and rewards are bind to REPORTED space.
So again : the bad farmer only hurts himself not the pool. Think it twice 😉
No because if he can’t farm a block when his ticket gets punched because his lookups are too slow it hurts everyone.
With your bad logic then farmers that shutdown their farms at night are hurting the pools…
They absolutely are.
Lol this is absurd
more absurd with your logic : the non farmers are hurting the pool because they don’t farm 😀
and the farm with 30% stales will farm a block 70% of the times he can get it as he reported to the pool and gets rewards for.
Chris, thank you for your blog, it is awesome. But in this particular case, I cannot hold my tongue – Andrew is right.
The confusion stem maybe from this point of view: miners with stales hurt the pool only considering absolute won block number. Indeed, pool has lower income.
But think about this: because the plot points of the pool is also lowered, the lower reward is divided according to plot points. “Slower” miners get less, exactly according their “in time work”. So the “quick” miners are not affected by the slow miners.
Absolute “pool hashrate” or “space”, in chia term, is affected, but reward for the “quick/proper” miners is not.
This comment from Andrew is really funny and descriptive:
“more absurd with your logic : the non farmers are hurting the pool because they don’t farm 😀”
Have a nice day, and thanks again for your very informative blog, keep up the good work.
Andy S.
I think pools count stale shares in their netspace calculations. I will check though.
You just got caught by Flexpool propaganda 😉 May be Flexfarmer can help bad farmers to be good farmers (and it’s Nice) but this has nothing to do with bad farmers hurting pools or hurting good farmers in their pool.
I think you’re missing my point. Having a bad farming setup hurts you because you are less likely to win blocks when your lookups are slow.
Having a bunch of farmers in that position hurts the pool because they are less likely to win a block than their combined netspace would suggest.
Edit: also i think flexpool is full of shit when it comes to their stuff being better, but I am certain the core point about slow storage calls causing missed blocks is 100% correct.
“than their combined netspace would suggest.“
The official pool protocol takes care of that with partials to reward good look ups farmers.
I understand you consider that to be a missed opportunity but this is very diferent than causing prejudice to the pool.
Looking forward to read your articles and what chia chain is gona offer to the world 😊