Some exchanges and services (e.g. CoinBase, Bitstamp) pay for the transaction fees for their customers when the customers send bitcoins from their wallet/account.
They might have tens of thousands of transactions going out of customers wallets everyday. The 0.0001btc fees might add up really quickly and become a large cost to them.
Are they making transactions wait so that they can send to many at once? If they have enough transactions going out this might work as the customer won't feel a few seconds of delay.
Or do they create a unique transaction for each? If so, how can they afford it?