Rainfall is the descent of condensed water vapor from the atmosphere to the Earth’s surface. Hydrology, agriculture and disaster management are among the many businesses that depend on rainfall prediction because it facilitates the planning of irrigation schedules, the management of water supplies, and the mitigation of floods and droughts. Accurate rainfall prediction is very necessary as there are many previous works which have lack of accuracy in predicting rainfall. In this study our aim is to forecast rainfall of Bangladesh as it has seasonal variety. This research is applying machine learning methods on the daily climate data of Bangladesh, including 3645 data points. The climate database of the Bangladesh Rice Research Institute (BRRI) was the source of the dataset. In the research six different machine learning algorithms (Random Forest, Multinomial Naive Bayes, Decision Tree, Logistic Regression, KNN, and Gradient Boosting) have been applied and all have performed well. While predicting rainfall Gradient Boosting gave an accuracy of 88.35% followed by Random Forest, Decision Tree, KNN, Logistic Regression and Naive Bayes with accuracy of 87.25%,84.04%,82.83%,78.92% and 70.68% respectively. The best accuracy is given by Gradient Boosting algorithm with high precision, recall and f1-score.