FreeSASA is a command line tool, C-library and Python module for calculating solvent accessible surface areas (SASA). Casual users can calculate SASA directly from a PDB file with no configuration overhead using sensible default parameters. Advanced users can configure all calculation parameters and also use the C and Python APIs to perform calculations directly on arrays of coordinates.

Quick-start guide

Download the latest tarball, expand it and run

$ ./configure
$ make
$ sudo make install

This installs the binary freesasa to your path, the header freesasa.h, the library libfreesasa and a man page.

See README for how to build the Python module, and how to disable features you don't want or don't have the dependencies for.

If you got the code directly from the git repo, first run autoreconf -i to create the configure script (this requires autotools).

Tarballs for older versions are attached to the GitHub-releases

After building the package, calling

$ freesasa -h

explains how the command line interface (CLI) can be used. If the man pages are installed more info is available through

$ man freesasa


The reference documentation contains info the CLI, the C and Python APIs and some implementation details.

Citing FreeSASA

Simon Mitternacht (2016) FreeSASA: An open source C library for solvent accessible surface area calculation. F1000Research 5:189 (doi: 10.12688/f1000research.7931.1)

Legacy versions

Version 2 breaks a few parts of the interface. Tarballs for most older versions can be downloaded from the GitHub releases. The documentation and tarball for v1.1 are available at this site.