Skip to content
SPECIFICTION
Get listed

GitHub CodeQL vs Pysa

GitHub CodeQL

codeql.github.com

Pysa

pyre-check.org

Side by side

FigureGitHub CodeQLPysa
Price from$30/moFree
Free planYesYes
Free trial——
Open source——
WebYes—
WindowsYesYes
macOSYesYes
LinuxYesYes
Self-hostedYesYes
Plans published51
Spec score · Static Application Security Testing Software8.6 (#3)8.3 (#6)
CI integrationThe CodeQL bundle can be downloaded for an external CI system to generate code-scanning results and upload them to GitHub.A GitHub Action can run Pysa in CI and show results in GitHub's Security code scanning UI.
PurposeCodeQL is a language and toolchain for code analysis that treats code as data.Pysa is a security-focused static analysis tool for Python that tracks data flows to find security and privacy issues.

Plans

GitHub CodeQL

  • Free for research and open sourceFree
  • GitHub Code Security$30 a month
  • CodeQL for open source and researchFree
  • GitHub Code Security$30 a month
  • GitHub Free with CodeQL code scanningPrice not published

GitHub CodeQL pricing →

Pysa

  • Free (MIT-licensed open-source software)Free

Pysa pricing →

In their own words

GitHub CodeQL

GitHub CodeQL has no write-up on Specifiction yet; its figures are above.

Visit codeql.github.com

Pysa

Pysa is a free, open-source Python static analysis tool that uses taint analysis to identify potential security issues. It follows data from configured sources toward dangerous sinks, such as user-controlled request data reaching an eval call. Users configure sources, sinks, features and rules in taint.config, and annotate code with .pysa model files; built-in and common Python libraries have prewritten models and rules. Sanitizer models describe data that should lose taint, including function parameters and return values. Pysa analyzes the target repository and directories in the configured search_path, but not dependency source outside that scope. When it cannot access a function’s source, it assumes the return value retains taint, which can lead to false positives. Analysis may freeze on similarly sized projects if the machine lacks enough memory. The quickstart installs it with pip install pyre-check in a Python virtual environment. Pyre supports the Language Server Protocol, and a VSCode extension connects to a running server. SAPP can ingest results for viewing and filtering in a local web UI; a GitHub Action can run Pysa in CI and show findings in GitHub’s Security code scanning UI. Pysa requires Python 3.9 or later and relies on type information from Pyrefly. The project says it can analyze codebases with millions of lines. Its repository is MIT-licensed; the Pyre repository was archived on June 26, 2026, and says Pysa moved to its own repository.

Visit pyre-check.org