Capillary electrophoresis is coupled with a single molecule detector based on laser-induced fluorescence. Individual molecules migrating from the capillary are detected and counted with 50% efficiency. Injection of 30 000 analyte molecules generates a reproducible peak consisting of at least five components. However, injection of 3000 or fewer molecules leads to a noisy and irreproducible peak. Monte Carlo simulation demonstrates that this irreproducibility results from molecular shot noise or stochastic fluctuations in the number of injected molecules. The model predicts that the relative standard deviations of peak area, peak center, and peak width are inversely proportional to the square root of the number of injected molecules. At least 10(4) analyte molecules (17 zmol) are required to define peak area and width with 1% relative precision. Fluctuation in the number of molecules taken for chemical analysis is a fundamental and irreducible source of uncertainty.