Background Isoniazid preventive therapy (IPT) is given to HIV patients to reduce the risk of active tuberculosis (TB). However, treatment completion remains sub-optimal among those that are initiated. This study aimed to determine the completion level of IPT and the factors associated with non-completion among people on antiretroviral therapy (ART) at Kisenyi Health Center IV in Kampala, Uganda. Methods A facility-based retrospective cohort study utilizing routinely collected data of 341 randomly selected HIV patients initiated on IPT was conducted. Data extracted from the registers were used to determine the IPT completion. Modified Poisson regression with robust error variances was used to determine the associated factors of IPT non-completion while in-depth interviews were conducted to explore barriers to IPT completion from the patient’s perspective. Results A total of 341 patients who started on isoniazid (INH) were retrospectively followed up, with 69% (236/341) being female. Overall IPT completion was at 83%. Multivariable analysis revealed the prevalence of IPT non-completion among males was 2.24 times the prevalence among females [aPR 2.24, 95% CI: 1.40-3.58]. The prevalence of IPT non-completion among patients with a non-suppressed HIV viral load was 3.00 times the prevalence among those with a suppressed HIV viral load [aPR 3.00, 95% CI: 1.44-6.65]. Patients who were married/cohabiting had a 69% lower prevalence of IPT non-completion compared to those who were single [aPR 0.31, 95% CI: 0.17-0.55]. Lack of IPT-related health education, pill burden, distance to the health facility, and patient relocation were reported as the barriers to IPT completion. Conclusion IPT completion was found to be at 83% among the cohort studied. However, lower completion levels persist among males and HIV virally non-suppressed patients. Lack of IPT-related health education, pill burden, distance to the health facility, and patient relocation were reported as the barriers to IPT completion. Interventions that target these groups of people need to be intensified.