Alright guys, I need some more information to fix this.
I started by sending payments from CoinAd with 0.0005 fee (over 1000 outputs), which didn't go well as you can imagine. Two transactions didn't confirm, and some people started spending those inputs to pay for stuff, which ended with coinbase.com paying a bounty to confirm those two transactions.
So I've increased the fee to 0.005 (10x), more than 3% of the value I'm actually paying.
http://blockchain.info/tx/43f6ede123d10fd1581ae5ef2aa6ff7159e61b083934f75126d6d8a2ffdc11cf?show_adv=trueIt seems like transaction is not going to confirm, and as you can see, some inputs have already been spent.
So I decided to increase the fee to 0.01, which still isn't the recommended fee to transactions of this size.
That's almost 10% of the transaction value!
Is the recommended fee 0.0005/kB?
Is there any magical number so I can limit the number of inputs and send payments in multiple transactions?
I want to find a way to reduce what I spend on fees, because paying 0.30 BTC/month in fees ain't right!
But if it really needs to be that way... Well... be it!
One great thing you could do would be to allow each user to create an account with you where you keep track in your own database how much BTC they have earned over time. Then allow them to request a "cash out" when they reach or exceed a particular value (perhaps 0.01 BTC?). You can then package up the cash outs once per day into transactions that are all less than 10,000 KB, and that all have outputs greater than 0.01 BTC. This should allow you to quickly get your transactions confirmed with minimal fees.