Comparison

mypy vs PMD

On the evidence we track, mypy leads this comparison with a composite score of 72/100. Scores are only directly comparable because these tools share a category; the full breakdown and every source is below.

Machine formatsJSONMarkdownGraphQLor send Accept: application/json
mypy72
PMD60
Score
Vioscale score
mypy72 / 100medium · 60%updating
PMD60 / 100medium · 53%updating
Pricing
Free tier
mypy
PMD
Price level
mypyfree
PMDfree
Transparent
mypy
PMD
Integrations
Count
mypy
PMD1
Adoption
Dependent repos
mypy52,771
PMD356
Github stars
Package downloads weekly
PMD
Activity
Commits last 30d
mypy27
PMD62
Release
Cadence days
mypy
PMD28
History
mypy
Language
Primary
mypyPython
PMDJava
Market
Availability

Capabilities

Feature-by-feature on the axes that matter for code quality tools. “-” means undocumented, not absent.

Core
Function
mypyType checker
PMDStatic analyzer
Language scope
mypySingle-language
PMDMulti-language
Implementation language
mypyPython
PMDJava
Capability
Autofix
mypy
PMD-
Config
Config model
mypy-
PMDRule packs
Extensibility
Custom rules
mypy
PMD
Deployment
Deployment
mypyCLI-local
PMDCLI-local
Delivery
Editor integration
mypy
PMD
CI / VCS gating
mypy
PMD
Insight
Code metrics
mypy
PMD-
Performance
Incremental / monorepo aware
mypy
PMD-
Licensing
Open-source
mypyOSS
PMDOSS
Commercial
Pricing model
mypyFree
PMDFree

What each one is

The product in its own terms, so the numbers below have context.

mypy

Leader

A type analysis tool for Python that enables code to transition from pure dynamic typing to statically-typed code through annotations, with error detection at check time. Code runs with negligible performance impact and developers can incrementally adopt static types in existing projects.

Independently observed

PMD

PMD is a multilingual static code analyzer that detects common programming issues like unused variables and inefficient patterns. It includes over 400 built-in rules, supports 16+ languages with primary focus on Java, and supports custom rules via Java or XPath.

Independently observed

Pricing

List pricing as published by each vendor, with the date we read it. Always verify at the source before you buy.

mypy

Leader
Open source
as of verify ↗

PMD

FreeFree tier

Free, open source

as of verify ↗

Platform & deployment

Where each product runs and how it can be hosted. A dash means undocumented, not unsupported.

Platforms
macOS
mypy
PMD
Windows
mypy
PMD
Linux
mypy
PMD
CLI
mypy
PMD
Deployment
Self-hosted
mypy
PMD

Integrations

What each product connects to. Counts come from the vendor's own integration directory where one exists.

mypy

Leader

Not documented yet.

PMD

1 total
  • Eclipse
Independently observed

Comparison generated from independently-sourced facts. Every value links to its source and retrieval date. See the method.