Praise be to Allah.
In order for zakaah to be due on money, two conditions must be met:
1 – That it reaches the nisaab (minimum threshold)
2 – That one year has passed since it reaches the nisaab.
If the money is less than the nisaab, then no zakaah is due on it.
If it reaches the nisaab, and one year has passed, i.e. a lunar (hijri) year has passed since the time when it reached the nisaab, then zakaah becomes due at that point.
The nisaab is the equivalent of 85 grams of gold or 595 grams of silver.
The rate that must be paid for zakaah is one quarter of one tenth (2.5%).
If the money reaches the nisaab and it is 1000 for example, then at the end of the year it is 5000, how should zakaah be paid?
1 – If this extra amount stems directly from the original amount, such as if the thousand was invested, and earned four thousand, then you should pay zakaah on the entire amount at the end of the year, because the profit on money is connected to the capital.
2 – If this extra amount did not stem directly from the original amount, rather it is money that was acquired by different means, such as an inheritance or a gift, or it is the price of something that you sold, and so on, then a separate year should be counted for it, starting from the day when you took possession of this extra amount. But if you want to pay its zakaah with the thousand, in advance, there is nothing wrong with that.
3 – This extra amount may come gradually, such as money that a person saves from his salary, so he saves 500 one month, and 1000 another month, until at the end of the year he has collected 4000. So you have the choice of paying the whole amount when one year has passed for the thousand, in which case you will have paid zakaah in advance for the money for which a year has not yet passed, or you can pay the zakaah for each sum separately when its year has passed, but this entails some kind of hardship, as you will be paying zakaah several times in one year.
For more information please see question no. 50801.
And Allaah knows best.