A computer program that allows the preparation of buffers containing known concentrations of metal-ligand complexes at defined pH values and temperatures is described. Ligands are defined as compounds that bind metals and may include AMP, ADP, ATP, GMP, GDP, GTP, EGTA, EDTA, BAPTA, phosphate, sulfate, chloride, monocarboxylic acids, dicarboxylic acids, organophosphates, and/or citric acid. Metals may include sodium, potassium, magnesium, calcium, and/or manganese. The program uses association constants corrected for temperature and ionic strength so that solutions between 0 and 40 degrees C and between pH values of 4 and 10 can be defined. The program can perform the following: (i) calculate the concentration of all metal-ligand complexes when total metal and total ligand concentrations are known, (ii) calculate the concentration of metal ion required to make a solution of known free metal ion concentration when total ligand concentrations are known, (iii) calculate the concentration of ligand required to make a solution of known free metal ion concentration when total metal concentrations are known, and (iv) calculate the total concentrations of metal and ligand required to make a buffer of known metal-ligand concentration. Options i-iii are useful for making buffers of defined free metal ion concentrations; option iv is useful for making buffers of defined metal-nucleotide concentrations.