ty is a new Python type checker and language server from Astral, the company behind Ruff and uv, and it is now in public beta. Written in Rust and built around incremental recomputation, ty runs 10 to 60 times faster than mypy and Pyright, and in an editor it recomputes diagnostics in single-digit milliseconds. Astral now uses it exclusively on its own projects and is recommending it to motivated users, with a stable release targeted for 2026.

  • ty is written in Rust and architected around incrementality, so it re-runs only the computations an edit actually affects.
  • Without caching it is 10x to 60x faster than mypy and Pyright; in editors it recomputes a load-bearing file in 4.7ms, roughly 80x faster than Pyright.
  • It ships a full language server (go-to-definition, rename, autocomplete, inlay hints) plus cross-cell Jupyter support and Rust-compiler-style diagnostics.
  • A gradual guarantee means adding annotations to working code never introduces new errors, making incremental adoption predictable.
ty in the Astral toolchain ty joins Ruff and uv as Astral's Rust-based Python tools, and will power semantic features across the toolchain. Rufflinter + formatteruvpackaging + envstytype checker + LSP ALL RUST · SHARED FOUNDATIONS ty's type model unlocks a longer roadmap across the toolchain: • dead code elimination• unused dependency detection• SemVer upgrade enforcement• CVE reachability analysis genztech.blog
Fig 1 ty completes Astral's Rust-based Python trio alongside Ruff and uv. Its type model is meant to power semantic features across the whole toolchain, from dead-code removal to CVE reachability.

What is ty?

ty is an extremely fast Python type checker and language server designed as an alternative to mypy, Pyright and Pylance. It began under the code name Red-Knot, and Astral founder Charlie Marsh has described its architecture as built around incrementality: when you edit a file or change a single function, ty selectively re-runs only the computations that edit affects rather than re-checking the whole program. That design is why it feels instant in an editor, and why Astral is comfortable running it on production codebases already.

RelatedPostgreSQL 19 Beta Makes Async I/O Actually Scale

How much faster is it, really?

Fast enough that the numbers change how you work. Without caching, ty is consistently between 10x and 60x faster than mypy and Pyright. The editor story is more dramatic: after editing a load-bearing file in the PyTorch repository, ty recomputes diagnostics in 4.7ms, about 80x faster than Pyright at 386ms and 500x faster than Pyrefly at 2.38 seconds. On whole-project checks, ty type-checks the entire Home Assistant codebase in around 2.19 seconds versus mypy's 45.66 seconds. When type checking drops from tens of seconds to a couple, it stops being a CI step you tolerate and becomes feedback you get while typing.

Whole-project type check: Home Assistant ty checks Home Assistant in about 2.19 seconds versus mypy at 45.66 seconds. 2.19s45.66s tymypy Same codebase, no caching. ty is roughly 20x faster on the full project check. genztech.blog
Fig 2 · benchmark On a full check of Home Assistant, ty finishes in about 2.19 seconds against mypy's 45.66. In-editor, ty recomputes a PyTorch file in 4.7ms, roughly 80x faster than Pyright.

How does it stack up against mypy, Pyright and Pyrefly?

Beyond speed, ty pushes on correctness and ergonomics with features like first-class intersection types, advanced narrowing and reachability analysis, plus a diagnostic system modeled on the Rust compiler that can pull context from multiple files to explain not just what is wrong but why.

CheckertymypyPyrightPyrefly
LanguageRustPythonTypeScriptRust
Relative speedBaseline (fastest)10-60x slower10-60x slowerSlower in editor
IncrementalCore designLimitedYesYes
Language serverBuilt inVia pluginsBuilt inBuilt in
LicenseOpen sourceOpen sourceOpen sourceOpen source
StatusBeta (stable 2026)MatureMatureNewer

Should you adopt it now?

Cautiously. ty is in beta, uses 0.0.x versioning with no stable API yet, and Astral itself warns to expect bugs, missing features and the occasional fatal error. The safe pattern is to run it alongside mypy as an experiment, leaning on the gradual guarantee so that adding annotations never breaks a working build. You install it with a single command, uv tool install ty, or via the VS Code extension, and the most recent release was version 0.0.55 on June 27, 2026.

RelatedNode's Monopoly Is Over: Bun and Deno Split the Field

What to watch · 2026
  • Library support. The gap to stable is mostly the long tail of the typing spec plus first-class Pydantic and Django support. That is what gates real-world adoption.
  • The toolchain payoff. ty's type model is meant to feed dead-code elimination and CVE reachability across Astral's tools. Prediction: that unification, not raw speed, is the real long-term draw.
  • Ecosystem gravity. With Ruff and uv already defaults on many teams, ty inherits enormous distribution. Watch how fast it becomes the assumed checker for new projects.

Our take

ty is the type checker Python has quietly needed, and Astral is the rare team with the track record to actually ship it. Ruff killed the fragmented linting story and uv is doing the same to packaging; ty aims the same Rust-speed, single-tool philosophy at type checking. The speed is not a vanity metric: sub-second whole-project checks and millisecond editor feedback change type checking from a chore into a live safety net. The beta caveats are real and the Pydantic and Django gaps matter, so this is not a drop-in mypy replacement for every team yet. But the direction is unmistakable, and by the time the stable release lands in 2026, ty is likely to be the default Python type checker for anyone starting fresh.

Primary sources

Original analysis by GenZTech. Based on Astral's ty beta release, current as of July 2026.