We have developed a computer program that estimates venous admixture (intra-pulmonary shunt) from four measurements: haemoglobin concentration, end-tidal carbon dioxide tension (PE'(CO2)), fractional inspired oxygen concentration (FIO2) and pulse oximetry (Sp(O2)). The formula was tested on patients in an intensive therapy unit by using it to estimate shunt while it was measured simultaneously by a standard, invasive method. A total of 101 measurements were made in 29 patients. After correcting the systematic errors in the assumed differences between PE'(CO2) and arterial PCO2 and between Sp(O2) and co-oximetrically measured Sa(O2), and correcting for a trend in the arteriovenous oxygen concentration difference (C(a-(v) over bar)(O2)) with shunt, the bias of the non-invasive minus invasive shunt differences was negligible, with no significant dependence on shunt. The limits of agreement were then +/-16% shunt overall (+/-13% within patients). When Sa(O2) was used instead of Sp(O2), the limits were +/-11% (+/-8% within patients).