I thought the point of splitting was each input stakes for a potential reward i.e. 1 clam. So if I run 20 per input and all 5 stake in say 3 days by miracle I get more return than if it was in 1 and happened in 24 hours? Am I thinking wrong?
That's right - if you run 20 per input and 5 stake in a day, you get 5 CLAMs. But each of those 20 CLAM pieces is 6 times less likely to stake in any given timeframe than a single 120 CLAM input is. So your expected number of stakes per day is unchanged by splitting.
The only difference, as SuperClam just posted, is that when your outputs are split, less value gets put "out of commission" for 8 hours each time you stake.
An extreme example that may help:
Just-Dice has 700,000 CLAMs trying to stake. It stakes about every 70 seconds or something silly.
If all 700,000 CLAMs were in a single output, we would only be able to stake 3 times per day, because the whole 700,000 CLAM output would take 8 hours to mature each time it staked. By having it split up into thousands of smaller pieces, only between 1% and 2% of the pieces are out of commission at any time.
Checking the warm wallet right now, I see a balance of 664694.30193479 made up of 656393.76362757 actively trying to stake and 8300.53830722 waiting to mature. I aim for roughly 1% of the balance to be maturing, and set the split size accordingly.
Edit: I figure it's OK for 1% of the outputs to be maturing at any point in time, and so I want an average time-to-stake per output of 100*8 hours.
With 800k network weight, an 800k CLAM output would stake once per minute, an 800k/60 CLAM output would stake once per hour, and an 800k/60/800 CLAM output would stake every 800 hours.
800e3 / 60 / 800 = 16.666
so 16.666 CLAMs is currently the kind of size output you need if you want 1% of your outputs to be maturing at any given time.
Here's a histogram showing how many outputs we have of each size:
The 33.33 CLAM outputs are left over from when I wanted to move coins from one wallet to another quickly. They'll be split by the client automatically when they next stake.
I have the wallet set to automatically split outputs into two 13's when they get to 26. Most of these outputs started at size 13.37 and have grown via staking. The most common size is currently 16.37, and I guess that will change to 17.37 with time, as they continue to stake.
Edit2: It took me a while to figure out how to get gnuplot to put data into 'bins' for plotting like this. Here's what I ended up using:
binwidth = 0.2
bin(x, width) = width * floor(x / width)
set style fill solid 0.5
set grid
set boxwidth 0.8 * binwidth
plot "amounts.txt" using (bin($1,binwidth)):(1.0) title "output sizes" smooth freq with boxes