Praise be to Allah.
In order for zakah to be due on money, two conditions must be met:
1 – That it reaches the nisab (minimum threshold)
2 – That one year has passed since it reaches the nisab.
If the money is less than the nisab, then no zakah is due on it.
If it reaches the nisab, and one year has passed, i.e. a lunar (hijri) year has passed since the time when it reached the nisab, then zakah becomes due at that point.
The nisab is the equivalent of 85 grams of gold or 595 grams of silver.
The rate that must be paid for zakah is one quarter of one tenth (2.5%).
If the money reaches the nisab and it is 1000 for example, then at the end of the year it is 5000, how should zakah 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 zakah 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 zakah 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 zakah in advance for the money for which a year has not yet passed, or you can pay the zakah for each sum separately when its year has passed, but this entails some kind of hardship, as you will be paying zakah several times in one year.
For more information please see question no. 50801.
And Allah knows best.