AbstrakCuaca hujan adalah salah satu unsur iklim yang tinggi keragamannya, membuat pola sebaran hujan disetiap daerah cenderung tidak menentu. Akibatnya informasi akan kondisi cuaca hujan yang diberikan tidak tepat, maka perlu dilakukan prakiraan hujan yang akurat untuk dapat mengantisipasi kondisi cuaca hujan yang tidak menentu. Dengan menggunakan data historis cuaca, serta penggunaan model machine learning dapat diterapkan untuk analisis permasalahan prakiraan hujan. Menggunakan metode random forest dengan komponen hyperparamter e_estimator dan max_depth serta teknik cross validation untuk menghasilkan kinerja model yang optimal. Lalu mengevaluasi kinerja model menggunakan matriks MSE, RMSE dan MAE. Data cuaca BMKG digunakan rentang tahun 2015-2021 dengan jumlah 2557 data yang dimana dibagi menjadi 80% data latih dan 20% data uji. Hasil pengujian model random forest dengan nilai n_estimator : 100, max_depth : None, dan cross validation : 3 menghasilkan kinerja paling optimal. Dengan menghasilkan matriks evaluasi nilai MSE : 0,086,  RMSE : 0,290 dan MAE : 0,186. Serta dalam pengujian aplikasi penentuan kondisi hujan dari 30 kasus data menghasilkan persentase 60%.Kata kunci: Prakiraan Hujan, Machine Learning, Random Forest, Cross ValidationRainy weather is one of the climate elements that has high diversity, making the pattern of distribution of rain in each area tends to be erratic. As a result, the information on rainy weather conditions provided is not correct, it is necessary to make accurate rain forecasts to be able to anticipate erratic rainy weather conditions. Using historical weather data, as well as the use of machine learning models can be applied to analyze rain forecasting problems. Using the random forest method with hyperparameter components e_estimator and max_depth and cross-validation techniques to produce optimal model performance. Then evaluate the performance of the model using the MSE, RMSE, and MAE matrices. BMKG weather data is used for the 2015-2021 range with a total of 2557 data which is divided into 80% training data and 20% test data. The results of testing the random forest model with a value of n_estimator: 100, max_depth: None, and cross-validation : 3 produce the most optimal performance. By producing an evaluation matrix of MSE values: 0.086, RMSE: 0.290, and MAE: 0.186. As well as in testing the application to determine rain conditions from 30 cases of data, it produced a percentage of 60%.Keywords: Rain Forecasting, Machine Learning, Random Forest, Cross Validation