Skip to content
SPECIFICTION
Get listed

CPAchecker vs Infer

CPAchecker

cpachecker.sosy-lab.org

Infer

fbinfer.com

Side by side

FigureCPAcheckerInfer
Price fromFreeFree
Free planYesYes
Free trial——
Open source——
Web—Yes
WindowsYes—
macOSYesYes
LinuxYesYes
Self-hostedYesYes
Plans published11
Spec score · C and C++ Static Analysis Tools8.0 (#10)8.5 (#5)
PurposeCPAchecker is a tool for configurable software verification based on configurable program analysis concepts.Infer is a static analysis tool that produces a list of potential bugs from Java or C/C++/Objective-C code.
SupportThe project directs installation questions, bug reports, and suggestions to its CPAchecker users mailing list, and also provides an issue tracker.The project directs users to GitHub issues and the #infer IRC channel on Libera Chat for questions and issue reports.

Plans

CPAchecker

  • CPAcheckerFree

CPAchecker pricing →

Infer

  • Infer (free)Free

Infer pricing →

In their own words

CPAchecker

CPAchecker is a configurable software verification tool based on configurable program analysis concepts. It accepts C and SV-LIB inputs, lists predicate analysis for SV-LIB programs, and supports invariants, counterexamples, and proof artifacts. It can also validate termination witnesses in YAML formats 2.1 and 1.0. The project lists a hybrid verification method and provides a self-hosted deployment. CPAchecker is free software under the Apache 2.0 License. Version 4.2.2, released in December 2025, is available as Unix and Windows ZIP archives; Debian and Ubuntu users can install it from the SoSy-Lab APT repository, and a Docker image is available. Java 21 or later is required as of version 4.2. An older version, 1.6.1, can be accessed through a web interface, where some functions are unavailable in the restricted environment. Documentation includes installation instructions, tutorials, and getting-started guidance. Installation questions, bug reports, and suggestions can go to the users mailing list or issue tracker. The project is based in Munich, Germany.

Visit cpachecker.sosy-lab.org

Infer

Infer is a static analysis tool that examines compiled Java, C, C++, Objective-C, and Erlang code and reports potential bugs before release. Its checks include null pointer problems, resource or memory leaks, coding conventions, unavailable APIs, and concurrency issues such as data races. Some analyses can follow an issue across multiple functions or methods and files. Pulse provides memory-safety analysis, while RacerD checks thread safety. Cost analysis estimates asymptotic function complexity for Java and C-family languages; Hack support is experimental, and Python, Rust, and Swift are not supported by that analysis. Infer captures compilation commands, analyzes the captured files, and writes reports that can be reviewed with `infer explore`; files that are not compiled are not analyzed. Integrations are documented for build tools including Buck, CMake, Gradle, Make, Maven, Xcodebuild, and xctool. It can be installed from binary releases, built from source, or run in Docker. The free plan costs nothing. Infer runs on Linux and macOS, with web and self-hosted options; Windows is not supported.

Visit fbinfer.com