An algorithm for solving first-order non-recycling compartment models is described. Given the initial amounts of a radioactive material in each compartment and the fundamental transfer rate constants between each compartment, the algorithm gives both the amount of material remaining at any time t and the integrated number of transformations that would occur up to time t. The method is analytical, and consequently, is ideally suited for implementation on a microcomputer. For a typical microcomputer with b4 kilobytes of random access memory, a model containing up to 100 compartments, with any number of interconnecting translocation routes, can be solved in a few seconds; providing that no recycling occurs. An example computer program, written in 30 lines of Microsoft BASIC, is included in an appendix to demonstrate the use of the algorithm. A detailed description is included to show how the algorithm is modified to satisfy the requirements commonly encountered in compartment modelling, for example, continuous intake, partitioning of activity, and transformations from radioactive progeny. Although the algorithm does not solve models involving recycling, it is often possible to represent such cases by a nonrecycling model which is mathematically equivalent.