Chronic kidney disease (CKD) is usually silent until advanced, and the tests confirming it are frequently unaffordable in sub-Saharan Africa, whereas the full blood count (FBC) is inexpensive and widely performed. We assessed whether machine learning applied to the FBC can detect CKD, and how far its reported performance depends on where synthetic minority oversampling (SMOTE) is applied. Records of 155 patients at the Ho Technical University Hospital, Ghana, 43 (27.7%) with CKD, yielded ten features: age, cardiovascular disease and eight raw FBC parameters. Eleven algorithms, six resampling strategies and thirteen ensembles were compared under repeated stratified cross-validation. With SMOTE applied before the train-test split, the protocol under which the deployed models were fitted, Random Forest and Extra Trees both reached an accuracy of 83.9%, with sensitivities of 0.893 and 0.857 and areas under the curve (AUC) of 0.925 and 0.939; repeated cross-validation gave an accuracy of 0.809 {+/-} 0.051 and an AUC of 0.897. With resampling confined to the training folds, the same features gave a held-out accuracy of 61.5% and an AUC of 0.604 in 39 unseen patients. Age was the only variable separating the groups after correction for multiple testing (median 64 versus 47 years, adjusted p = 0.0026). The models are deployed as NephroScan GH (https://nephroscangh.com), which explains every prediction. The FBC carries a real but moderate signal for CKD, and the 22.4 point gap between the two protocols quantifies how far a single preprocessing decision can move a reported accuracy.