A simple method for the determination of betaine, l-carnitine, and choline in human urine was developed based on column-switching ion chromatography coupled with nonsuppressed conductivity detection by using a self-packed column. A pretreatment column (50 mm × 4.6 mm, id) packed with poly(glycidyl methacrylate-divinylbenzene) microspheres was used for the extraction and cleanup of analytes. Chromatographic separation was achieved within 10 min on a cationic exchange column (150 mm × 4.6 mm, id) using maleic anhydride modified poly(glycidyl methacrylate-divinylbenzene) as the particles for packing. The detection was performed by ion chromatography with nonsuppressed conductivity detection. Parameters including column-switching time, eluent type, flow rates of eluent, and interfering effects were optimized. Linearity (r ≥ 0.99) was obtained for the concentration range of 0.50-100, 0.75-100, and 0.25-100 μg/mL for betaine, l-carnitine, and choline, respectively. Detection limits were 0.12, 0.20, and 0.05 μg/mL for betaine, l-carnitine, and choline, respectively. The intra- and interday accuracy and precision for all quality controls were within ±10.11%. Satisfactory recovery was observed between 92.5 and 105.0%. The validated method was successfully applied for the determination of betaine, l-carnitine, and choline in urine samples from healthy people.