Abstract: Heart diseases are increasing daily at a rapid rate and it is alarming and vital to predict heart diseases early. The diagnosis of heart diseases is a challenging task i.e. it must be done accurately and proficiently. The aim of this study is to determine which patient is more likely to have heart disease based on a number of medical features. We organized a heart disease prediction model to identify whether the person is likely to be diagnosed with a heart disease or not using the medical features of the person. We used many different algorithms of machine learning such as Gaussian Mixture, Nearest Centroid, MultinomialNB, Logistic RegressionCV, Linear SVC, Linear Discriminant Analysis, SGD Classifier, Extra Tree Classifier, Calibrated ClassifierCV, Quadratic Discriminant Analysis, GaussianNB, Random Forest Classifier, ComplementNB, MLP Classifier, BernoulliNB, Bagging Classifier, LGBM Classifier, Ada Boost Classifier, K Neighbors Classifier, Logistic Regression, Gradient Boosting Classifier, Decision Tree Classifier, and Deep Learning to predict and classify the patient with heart disease. A quite helpful approach was used to regulate how the model can be used to improve the accuracy of prediction of heart diseases in any person. The strength of the proposed model was very satisfying and was able to predict evidence of having a heart disease in a particular person by using Deep Learning and Random Forest Classifier which showed a good accuracy in comparison to the other used classifiers. The proposed heart disease prediction model will enhances medical care and reduces the cost. This study gives us significant knowledge that can help us predict the person with heart disease. The dataset was collected from Kaggle depository and the model is implemented using python.