PESTools is an open-source Python package for processing and visualizing information associated with
the parameter estimation software PEST and PEST++. While PEST output can be reformatted for post-
processing in spreadsheets or other menu-driven software packages, that approach can be error-prone
and time-consuming. Managing information from highly parameterized models with thousands of
parameters and observations presents additional challenges. PESTools consists of a set of Python object
classes to facilitate efficient processing and visualization of PEST-related information. Processing and
visualization of observation residuals, objective function contributions, parameter and observation
sensitivities, parameter correlation and identifiability, and other common PEST outputs have been
implemented. PESTools is integrated with the pyemu software package for linear-based computer model
uncertainty analyses, allowing for efficient computations using the Jacobian Matrix without any external
utilities or files. The use of dataframe objects (pandas Python package) facilitates rapid subsetting and
querying of large datasets, as well as the incorporation of ancillary information such as observation
locations, times, measurement types, and other associated information. PESTools’ object methods can
be easily scripted with concise code, or alternatively, the use of IPython notebooks allows for live
interaction with the information. PESTools is designed to streamline workflows and provide deeper insight
into model behavior, enhance troubleshooting, and improve transparency in the calibration process.