Straight Bitcoin isn't designed for really small transactions. If you're sending less than something like $1 worth of bitcoins, you should expect to pay 10% or more in fees. More if you're trying to send $0.10 or less.
There is no magic fairy wand we can wave and make Bitcoin suddenly great for gazillions of tiny transactions; plan your businesses accordingly. As transaction volume increases, there will be more competition for space in blocks and fees are likely to rise.
And please avoid filling your customer's wallets with "dust" that they'll pay huge fees to spend; a payout should be at least a couple of cents, not a fraction of a penny. I think there is pretty good consensus among the core developers that sooner or later we'll make "dust" outputs non-standard, so they are not relayed or mined by default (details to be worked out, we need to implement a good algorithm for auto-adjusting the definition of "dust").
Hi. How is "dust" defined? Does that mean, the real smallest bitcoin unit is not really a Satoshi or 0.00000001? What good are the 8 decimal places for when you can't really use them? That just cuts down on the value or divisibility of the coin.
Also, for a Satoshi, how long must it be aged before you can spend it without a fee? I've got some dust from an older wallet that I can't get right now, so either I wait for it to age, or I figure out a way to send it to myself without a fee.
What's one work around for this? Can I use larger amounts together with my dust so I can consolidate them without a fee?