Using machine learning to identify instances of credit card fraud is the primary goal of the research. In order to accomplish this, we will research and assess four distinct classification models: Decision Tree, Logistic Regression, K-Nearest Neighbours (KNN), and Support Vector Classifier (SVC). Included in the Kaggle dataset's "Time," "Amount," and "Class" sections are transaction data points that represent the likelihood of fraud. Disparities in class distribution are a big problem with this dataset, even though 99.83% of the data comes from legitimate transactions. Disparity like this has the potential to lead to biassed model training. We resolved the issue by implementing preprocessing techniques such as feature scaling and resampling. F1-Score, recall, accuracy, and precision are the measures that we use to assess the models. With scores ranging from 93% to 94%, the data demonstrate that all models are incredibly accurate. Having said that, Logistic Regression lacks precision. All things considered, Decision Tree, KNN, and SVC perform very well. The proposed model's accuracy peaked at 94%. As this study demonstrates, thorough evaluation criteria are necessary for finding the optimal model for fraud detection.