The fastest way to check your Angular version
Open your terminal or command prompt and run ng version. This command displays your Angular CLI version, the Angular core version, and details about your Node.js and npm setup in one output. If you are inside an Angular project folder, it also shows the specific version that project uses.
If the command does not work, Angular CLI may not be installed globally on your machine. In that case, navigate to your project folder and run npx ng version instead — this uses the local copy of Angular CLI that came with your project.
Key Takeaways
- Run ng version in your terminal to see Angular CLI version, Angular core version, and your Node.js setup all at once.
- If ng version fails, use npx ng version inside your project folder to check the local Angular version instead.
- The package.json file in your project root lists the exact Angular version under the "@angular/core" entry.
- Different projects on the same machine can use different Angular versions, so always check inside the specific project folder you are working on.
Checking the version inside your project folder
If you want to see only the Angular version for a specific project without seeing global CLI information, look at the package.json file in your project root. Open it in any text editor and search for "@angular/core". The number next to it is your Angular version — for example, "@angular/core": "^17.0.0" means you are using Angular 17.
The package.json file is the source of truth for your project. The ng version command reads this file and displays the information, so checking the file directly gives you the exact same answer. This method works even if you cannot run the ng command for any reason.
Understanding the version numbers you see
Angular uses semantic versioning, which means the version number breaks down into three parts: major.minor.patch. Angular 17.2.5 means major version 17, minor version 2, and patch version 5. Major versions (like jumping from 16 to 17) include breaking changes and new features. Minor versions add features without breaking existing code. Patch versions fix bugs only.
The ^ symbol in front of the version number in package.json means npm will install any minor or patch update automatically when you run npm install, but will not jump to the next major version. This protects your project from unexpected breaking changes while still getting bug fixes.
Checking Angular version when ng command is not recognized
If you type ng version and get a "command not found" or "is not recognized" error, Angular CLI is not installed globally on your system. This is actually common and not a problem — your project has its own copy of Angular CLI inside the node_modules folder.
Navigate to your project folder in the terminal and run npx ng version instead. The npx command finds and runs the local copy of Angular CLI. You can also run npm list @angular/core to see just the Angular core version without needing the CLI at all.
Checking Angular version in an older project
Projects built with Angular 1.x (also called AngularJS) use a completely different system and do not have a package.json file or CLI. If you are working with an older AngularJS project, look for a bower.json file instead, or search the HTML files for a script tag that loads Angular — the URL or filename usually contains the version number.
Modern Angular (version 2 and later) always uses npm and package.json, so if you see those files in your project, you are working with current Angular. The ng version command only works with Angular 2 and later.
Why you need to know your Angular version
Different Angular versions have different syntax, different packages, and different ways of doing things. If you are following a tutorial or copying code from another project, knowing your version tells you whether that code will work in your project. Angular 17 code may not run in an Angular 14 project without changes.
When you upgrade Angular or install a new package, npm checks your Angular version to make sure the package is compatible. Knowing your version helps you understand error messages and find the right documentation. The official Angular docs are organized by version, so you need to know which version you are using to read the correct guide.
Checking versions of other Angular packages
Angular is actually many packages working together: @angular/core, @angular/common, @angular/router, and others. They should all be the same version in a healthy project. Run npm list @angular/* to see the version of every Angular package in your project at once.
If the versions do not match — for example, if @angular/core is 17 but @angular/router is 16 — you have a dependency problem. This usually happens after a partial upgrade or a conflicting package install. Running npm install again or using ng update @angular/core to upgrade Angular properly will fix it.
Frequently Asked Questions
What does the caret symbol (^) mean in front of the Angular version?
The ^ tells npm to install any minor or patch update automatically, but not major versions. So ^17.0.0 will install 17.2.5 if available, but not 18.0.0. This keeps your project stable while still getting bug fixes.
Can I have two different Angular versions on the same computer?
Yes. Each project has its own node_modules folder with its own copy of Angular. Project A can use Angular 16 and Project B can use Angular 17 at the same time. Always check the version inside the specific project folder you are working on.
Why does ng version show more information than just the Angular version?
The ng version command shows Angular CLI, Angular core, Node.js, npm, and operating system because they all affect how your project builds and runs. If something is broken, this information helps you figure out whether the problem is Angular itself or something in your environment.
Is it safe to use the caret (^) symbol or should I pin an exact version?
The caret is safe for most projects because minor and patch updates do not break code. Pinning an exact version (removing the ^) is more work to maintain but gives you complete control. Most teams use the caret and upgrade major versions intentionally when they are ready.