TypeScript 7: The Go-Native Compiler That's 10x Faster

RunFreeTools TeamJul 16, 20267 min read

TypeScript 7 shipped on July 8, 2026, and the headline is true: Microsoft rewrote the compiler in Go, and it type-checks roughly 8 to 12 times faster than TypeScript 6. If you maintain a large codebase — or you have ever watched your editor stall while it re-checks types — this is the most consequential TypeScript release in a decade. The one caveat worth knowing up front is that some framework tooling isn't ready for it yet.

TypeScript 7 in one sentence

TypeScript 7 is the same type system you already use, driven by a brand-new engine written in Go instead of JavaScript. Your types behave exactly as before; only the speed of checking them changes. General availability landed on July 8, 2026, following a release candidate on June 18 and a public beta back in April.

Microsoft describes the native build as a full port of tsc — the existing compiler logic reimplemented in Go, with shared-memory multithreading that the old single-threaded JavaScript runtime simply could not do. Same emitted output, same type-checking rules, far less waiting.

Why Microsoft rewrote the compiler in Go

Rewriting a mature compiler is a serious bet, and the choice of Go over Rust or C# surprised plenty of developers. The practical logic holds up, though. The original compiler is a decade of carefully tuned graph-walking code, and Go's structure — garbage collected, with goroutines for concurrency — maps unusually cleanly onto that existing design. A Rust port would have meant fighting the borrow checker to reproduce patterns the team already trusted, while Go let them translate the algorithms more directly and finally get real parallelism.

That parallelism is the real payoff. Type inference across a big project is full of independent work that a single JavaScript thread had to grind through one item at a time. Spread across CPU cores, the same work finishes in a fraction of the wall-clock time. The result is not a new language or a smarter type system — it is the type system you know, running the way a modern native tool should.

How much faster is TypeScript 7, really?

Here's the figure everyone cites: type-checking the Visual Studio Code codebase fell from 125.7 seconds on TypeScript 6 to 10.6 seconds on TypeScript 7 at default settings. That's an 11.9x speedup on one of the largest TypeScript projects anywhere, and it is Microsoft's own published number rather than a marketing round-up.

It isn't a cherry-picked demo, either. Microsoft's standardized full-build benchmarks land between roughly 7.7x and 11.9x faster across five well-known codebases — VS Code, Sentry, Bluesky, Playwright, and tldraw. Memory improved too: the VS Code build reportedly used about 18% less RAM.

Metric TypeScript 6 TypeScript 7
VS Code type-check 125.7s 10.6s (~11.9x)
Full-build speedup (5 projects) baseline ~7.7x–11.9x
VS Code build memory ~5.2GB ~4.2GB (~18% less)

The honest read: "10x faster" is marketing shorthand, but it sits inside a real, reproducible range rather than floating above it. Your mileage depends on project size and config, and the biggest projects see the biggest absolute wins.

tsc vs tsgo: what the binary is called now

During the preview, the native compiler shipped under a different name — tsgo — distributed on the nightly @typescript/native-preview package so you could trial it beside your existing install. With 7.0 GA, that split is gone. The shipped tool is invoked as plain tsc, the exact command you already type. If you wired tsgo into a script or a CI job during the beta, renaming it back to tsc is the main cleanup you owe yourself.

TypeScript 6 vs 7: the transition-release story

TypeScript 6.0 was the final release built on the JavaScript codebase, and it existed largely as a bridge. Per the reporting, 6.0 was the transition line — it cleaned up deprecations and reset defaults so that 7.0, the Go-native compiler, could arrive without hauling a decade of legacy behavior along. If you're already on 6.x, the jump to 7 is designed to be mechanical for most projects rather than a rewrite. If you're on an older 5.x line, upgrade through 6.0 first so you meet the tightened defaults one step at a time.

What "10x faster" actually changes day to day

Benchmark multipliers are fun, but the everyday wins matter more:

  • Editor latency. IntelliSense, go-to-definition, and error squiggles feel close to instant on large projects, because the language service is no longer the bottleneck. This is the change most developers will actually feel every hour.
  • CI cost. A type-check step that took minutes can drop to seconds — faster feedback on pull requests and fewer paid runner minutes. On a busy repo, that compounds across every push.
  • Monorepos. The bigger the project, the larger the absolute time saved. Cutting a two-minute check by 12x returns real developer time on every single run.

None of this changes what your code does. It changes how long you wait to find out whether it is correct, which is exactly the friction that makes big TypeScript projects tiring to work in.

How to install or upgrade to TypeScript 7

For most projects, it's the command you already know:

npm install -D typescript

Under the latest npm tag, that now resolves to 7.0. Confirm the version with npx tsc --version, then run a full tsc --noEmit to surface anything new. Because the type-checking semantics are unchanged, a clean build on 6.x should stay clean on 7.x — the differences you hit will almost always be defaults and flags, not your actual types. If you want a scratchpad to test syntax without touching your repo, our TypeScript playground type-checks code in the browser with no install required.

Breaking changes and gotchas to check first

The compiler behavior is the same, but the defaults tightened. Reported changes to check before you upgrade — and worth confirming against the official release notes — include:

  • strict: true as the default, so loosely typed projects may light up with new errors.
  • An empty types array by default, meaning it no longer auto-loads every @types package in node_modules.
  • Hard errors on long-deprecated options such as target: es5, baseUrl, and legacy moduleResolution settings.

None of these are difficult to fix, but a large project can surface a wave of them at once. Budget an afternoon, not a sprint. An AI assistant can speed up the mechanical parts — see our roundup of the best LLM for coding if you want help triaging errors in bulk.

Framework support: Vue, Angular, Svelte, and Astro

This is the honest catch, and it's the part the hype posts skip. Tooling that hooks into the compiler's programmatic API isn't on 7.0 yet. That includes Vue's Volar, Angular's template type-checking, Svelte, Astro, and MDX — all of which wait on a forthcoming API layer targeted at roughly 7.1. If your build's type-checking runs through one of those integrations, the native speedup isn't available on that path today. Treat framework support as "coming, not yet," and don't block a release on it.

Should you upgrade now or wait?

A quick decision guide by team shape:

  1. Green-field or plain TypeScript apps — upgrade now. You get the full speedup with almost no risk.
  2. Large monorepos on plain tsc — strong candidate. Test in CI first to catch the tightened defaults, then roll it out for the compounding time savings.
  3. Framework-locked teams (Vue, Angular, Svelte, Astro) — wait for the programmatic API around 7.1, or upgrade only the parts of your pipeline that call tsc directly.

TypeScript 7 is the rare release where the marketing number is basically honest and the migration is mostly painless. The speed is real, the type system is unchanged, and the only thing standing between most teams and an 8-to-12x faster check is a short config cleanup and, for some, a brief wait on framework tooling. If you want to feel the difference before you touch your own repo, open the TypeScript playground, paste in a file, and watch how fast the errors resolve.

Try the tool from this post

TypeScript Compiler

Online TypeScript compiler — compile & run TS.

Open TypeScript Compiler

Frequently asked questions

Yes. TypeScript 7.0 reached general availability on July 8, 2026, after a release candidate on June 18 and a public beta in April 2026. Installing the `latest` npm tag now resolves to 7.0.

Go's garbage-collected design and goroutine-based concurrency map cleanly onto the existing compiler's structure, which made porting the decade-old codebase more direct than a Rust or C# rewrite would have been. The bigger reason is speed: Go gives the compiler real multithreading that the old single-threaded JavaScript runtime could not.

Microsoft's benchmarks show roughly 7.7x to 11.9x faster full builds across VS Code, Sentry, Bluesky, Playwright, and tldraw. Type-checking the VS Code codebase fell from 125.7 seconds on TypeScript 6 to 10.6 seconds on TypeScript 7, an 11.9x speedup, while using about 18% less memory.

`tsgo` was the name of the native compiler during its preview, distributed on the nightly `@typescript/native-preview` package. With the 7.0 GA release, the tool is invoked as plain `tsc` again, so `tsgo` is only relevant if you scripted it during the beta.

In most cases no. The type system and emitted output are unchanged, so a clean build on 6.x should stay clean on 7.x. The changes you may hit are tightened defaults and removed deprecated flags, not your actual types.

Not on the native path yet. Tooling that uses the compiler's programmatic API — Vue's Volar, Angular template type-checking, Svelte, Astro, and MDX — waits on a forthcoming API layer targeted at around 7.1. Treat framework support as coming, not yet.

Run `npm install -D typescript`, which now resolves to 7.0 under the `latest` npm tag. Confirm with `npx tsc --version`, then run `tsc --noEmit` to surface any errors from the tightened defaults before committing.

TypeScript 6.0 was the final release built on the JavaScript codebase and acted as a transition release that cleaned up deprecations. TypeScript 7.0 is the Go-native compiler with the same type system but far faster checking and lower memory use.

Sources

Share this article

Send it to a teammate or save the link for later.

Related tools

Related articles

A mailbox receiving new tools, guides and feature updates

New tools, straight to your inbox

A short note whenever we ship a new free tool or guide. No spam, unsubscribe in one click.

  • No spam
  • Unsubscribe anytime
  • Your email is safe
7min left