Quoting from the wiki:
A transaction may be safely sent without fees if these conditions are met:
- It is smaller than 10,000 bytes.
- All outputs are 0.01 BTC or larger.
- Its priority is large enough (see the Technical Info section below)
Otherwise, the reference implementation will round up the transaction size to the nearest thousand bytes and then add a fee of 0.0001 BTC per thousand bytes[1]. Users may increase the default 0.0001 BTC/kB fee setting, but cannot control transaction fees for each transaction. Bitcoin-Qt does prompt the user to accept the fee before the transaction is sent (they may cancel the transaction if they are not willing to pay the fee).
Note that a typical transaction is 500 bytes, so the typical transaction fee for low-priority transactions is 0.0001 BTC, regardless of the number of bitcoins sent.
If you want to ensure that you send the minimal amount of transactions fees you can enable the a "frugal" fee policy. To do this:
1) Login to your blockchain.info account
2) Click on the button on "Wallet Home" screen which states "Account Settings" which is on the middle right hand side.
3) Press "Continue"
4) Click on the "General" tab on the left hand side and scroll down
5) Select "Frugal" to minimise the transaction fees you send.
WARNING: You may have significantly slower transaction confirmation time although it should eventually get a confirmation.