PyRCA is Salesforce’s open-source Python library for root cause analysis, the machine learning discipline of finding which components or metrics actually caused a system incident or anomaly. It packages several published RCA methods into one toolkit with a consistent interface. The project is released under the BSD-3-Clause license, has about 572 stars on GitHub, and was updated in June 2026.
When a large service degrades, dashboards show hundreds of correlated metrics moving at once; PyRCA’s job is to rank the likely culprits. The library works on multivariate operational data and implements a range of approaches from the research literature, including causal-discovery-based and hypothesis-testing-based methods, so practitioners can compare techniques on their own incidents. It ships with benchmarks and examples, and is accompanied by a research paper (arXiv 2306.11417) describing the approach. The package installs from PyPI as sfr-pyrca, with documentation hosted on Salesforce’s open-source site. For reliability teams, it offers a ready-made experimental bench for automated incident diagnosis instead of hand-rolled notebooks.
The library is also designed to be extended: new root cause algorithms can be added behind the same interface and compared against the included methods on shared benchmarks. That makes it useful both as a starting point for production anomaly-diagnosis features and as a research bench for evaluating root cause techniques on operational data.
PyRCA is free and open source under the BSD-3-Clause license. There is no commercial edition; you run it against your own metrics data.
PyRCA is for site reliability engineers, observability teams and ML researchers who want to automate the diagnosis of incidents in complex, metric-heavy systems.