is a Python package for making electrochemical impedance spectroscopy (EIS) analysis reproducible and easy-to-use.

Aiming to create a consistent, scikit-learn-like API for impedance analysis, contains modules for data preprocessing, validation, model fitting, and visualization.

If you have a feature request or find a bug, please file an issue or, better yet, make the code improvements and submit a pull request! The goal is to build an open-source tool that the entire impedance community can improve and use!


The easiest way to install is from PyPI using pip:

pip install impedance

See Getting started with for instructions on getting started from scratch.

Dependencies requires:

  • Python (>=3.7)

  • SciPy (>=1.0)

  • NumPy (>=1.14)

  • Matplotlib (>=3.0)

  • Altair (>=3.0)

Several example notebooks are provided in the examples/ directory. Opening these will require Jupyter notebook or Jupyter lab.

Examples and Documentation

Getting started with contains a detailed walk through of how to get started from scratch. If you’re already familiar with Jupyter/Python, several examples can be found in the examples/ directory (Fitting impedance spectra is a great place to start). The documentation can be found at

Indices and tables