How to Install Claude Code on Windows, Mac & Linux (2026)

Let me save you the 30 minutes I wasted trying to install Claude Code on Windows.

When I decided to install claude code on windows for a fresh setup, I followed the official recommendation: use the Native Installer. One PowerShell command, no Node.js required, done in 2 minutes. That’s what the documentation says. Here’s what actually happened: I ran the command, the cursor blinked, and nothing else happened. No progress bar, no status message, no indication that anything was downloading or installing. I waited 4-5 minutes the first time. Then I tried again. And again. Five attempts, over 30 minutes, all failures.

I eventually got Claude Code installed through a completely different method — and that’s what this guide is really about. Not just the commands to copy, but what to do when the recommended approach doesn’t work.

My testing context: I installed Claude Code on Windows. Mac and Linux instructions in this guide are based on the official Claude Code documentation, not personal testing. I’ll be clear about which parts come from my experience and which come from official docs.

Before You Install — What You Need to Know

Don’t want to use the terminal at all? Anthropic now offers a desktop app with Claude Code access for Windows and macOS. This guide focuses on the CLI (command-line) installation path — but if the terminal is a dealbreaker, the desktop app might be a better starting point.

Installing Claude Code is free, but using it requires a paid Claude account. The free Claude.ai plan does not include Claude Code access. You need at least a Pro subscription ($20/month) to authenticate and start using it. For pricing details, see my Claude Code Pricing guide.

There are multiple installation methods, and the right one depends on your situation:

MethodNode.js RequiredAuto-UpdatesMy Experience
Native InstallerNoYes❌ Failed on my Windows
WinGet (Windows)NoNo✅ Worked
Homebrew (Mac)NoNoNot tested
npm (deprecated)Yes (18+)No✅ Worked (my first time)

The official docs recommend the Native Installer. I recommend trying it first, but having WinGet (Windows) or Homebrew (Mac) as your backup. You’ll see why below.

How to Install Claude Code on Windows

Method 1: Native Installer (Official Recommendation — But It Failed for Me)

The official command is simple. Open PowerShell and run:

irm https://claude.ai/install.ps1 | iex

What’s supposed to happen: the script downloads Claude Code, installs it, and you’re done in about 2 minutes.

claude code native installer windows powershell no response cursor blinking
Five minutes of this. No progress bar, no status message, no way to know if anything is happening.

What actually happened on my machine: nothing. The cursor blinked. No progress bar, no download indicator, no text output. I had no way to know if it was downloading, stuck, or broken.

I waited 4-5 minutes on my first attempt before giving up. Then I tried again — same result. I tried running PowerShell as Administrator. Same result. I tried adding $ProgressPreference = 'SilentlyContinue' before the command. Same result. Five attempts total, over 30 minutes, all failures.

claude code native installer administrator powershell still no response
Running as Administrator didn’t help. Same blank cursor, same silence.

I never got an error message. The installer just… sat there. For a non-developer, this is the worst possible experience — you can’t tell whether you should keep waiting or try something else.

If this happens to you: Don’t waste 30 minutes like I did. After one failed attempt (5 minutes with no output), move to Method 2.

Method 2: WinGet — What Actually Worked

After failing to install Claude Code on Windows via the Native Installer, I tried WinGet — Windows’ built-in package manager. One command:

winget install Anthropic.ClaudeCode
install claude code windows winget download progress bar success
WinGet showed what the Native Installer wouldn’t — a progress bar and a clear success message.

The difference was night and day. WinGet showed a download progress bar (228 MB), confirmed the hash, and displayed a clear “설치 성공” (Installation successful) message. The entire process took about 2 minutes — exactly what the Native Installer was supposed to deliver.

After installation, open a new PowerShell window (important — the current window won’t recognize the new command) and verify:

claude --version
claude code version 2.1.91 windows powershell verification
Version 2.1.91 confirmed. Two minutes with WinGet vs. 30 minutes of failed Native Installer attempts.

If you see a version number, you’re done.

Note: WinGet doesn’t auto-update like the Native Installer is supposed to. You’ll need to run winget upgrade Anthropic.ClaudeCode periodically to get new versions.

Native Installer vs WinGet — What’s the Actual Difference?

Since I ended up using WinGet instead of the official recommendation, I wanted to understand what I was giving up.

Native InstallerWinGet
Auto-updatesYes (background)No (manual winget upgrade)
Install location~\.local\bin\AppData\Local\Microsoft\WinGet\Links\
Node.js requiredNoNo
Progress feedbackNone (just a cursor)Download bar + status messages
Release speedImmediateCan lag by hours or a day

The biggest trade-off is auto-updates. The Native Installer keeps Claude Code current in the background — you always have the latest version without doing anything. With WinGet, I’ll need to manually run winget upgrade Anthropic.ClaudeCode periodically, and new versions might appear a few hours later than the Native Installer gets them.

For me, that trade-off was easy: I’d rather have a visible installation that I update manually than an invisible one that might or might not be working. If auto-updates matter more to you, keep trying the Native Installer — it may work better on your machine than it did on mine.

One important warning: if you install both (Native + WinGet), they go to different locations and can conflict. Windows may keep using the WinGet version due to PATH priority, even after the Native Installer reports success. This is a known issue. Pick one method and stick with it.

Method 3: npm (Deprecated, but Still Works)

This was the original installation method before the Native Installer existed. It still works, but requires Node.js.

Step 1: Install Node.js (LTS version, 18+).

Step 2: Open PowerShell and run:

npm install -g @anthropic-ai/claude-code

Step 3: Verify with claude --version.

When I first installed Claude Code months ago, this was the only option. It took about 10 minutes including the Node.js installation. It worked, but the extra dependency felt unnecessary for a non-developer.

My recommendation: If WinGet works for you (Method 2), use that. If it doesn’t, the npm method is reliable but requires installing Node.js first.

Prerequisite: Git for Windows

Whichever method you use, Claude Code on Windows requires Git for Windows. Claude Code uses Git Bash internally to run commands.

If you don’t have it, download and install it from gitforwindows.org before running Claude Code for the first time.

How to Install Claude Code on Mac

I don’t have a Mac, so this section is based on the official documentation.

Method 1: Native Installer (Recommended)

Open Terminal and run:

curl -fsSL https://claude.ai/install.sh | bash

According to the docs, this downloads and installs Claude Code without requiring Node.js, and it auto-updates in the background.

Method 2: Homebrew

brew install --cask claude-code

Note: Homebrew installations don’t auto-update. Run brew upgrade --cask claude-code periodically.

How to Install Claude Code on Linux

I haven’t tested this personally — instructions are from the official documentation.

Native Installer

Same command as Mac:

curl -fsSL https://claude.ai/install.sh | bash

Supported distributions include Ubuntu, Debian, Fedora, and Arch Linux. Both x86_64 and ARM64 architectures are supported.

WSL (Windows Subsystem for Linux)

If you’re on Windows but want a Linux environment, both WSL 1 and WSL 2 work. Install WSL first, then run the Linux installation command inside your WSL terminal.

After Installation — What Happens Next

Once you install Claude Code on Windows successfully and claude --version shows a version number, you’re ready to authenticate.

Step 1: Type claude in your terminal and press Enter.

Step 2: A browser window will open asking you to log in with your Claude account. Sign in with the account that has a Pro or Max subscription.

Step 3: After authentication, you’ll see the Claude Code prompt — a blank terminal waiting for your input.

If you’ve never used Claude Code before, that blank screen can be intimidating. I wrote about my first experience with it here — from “what do I type?” to building a working program in 34 seconds.

Ready to build something? My Claude Code beginner tutorial walks through creating a real project step by step.

When Things Go Wrong — Lessons from My Installation Disaster

My installation journey wasn’t just “Method 1 failed, Method 2 worked.” It was a confusing 30-minute detour. Here’s the full story, because if you’ve installed Claude Code before through different methods, you might hit the same issues.

The “I don’t know how I installed this” problem

Before my fresh install attempt, I already had Claude Code on my machine. But I didn’t remember how it got there — was it npm? WinGet? The desktop app?

When I tried the Native Installer, nothing happened. So I tried removing the existing version first:

npm uninstall didn’t work:

npm uninstall -g @anthropic-ai/claude-code

This ran without errors, but claude --version still showed the old version. Because it wasn’t installed via npm in the first place.

claude code windows troubleshooting where exe winget list uninstall
The full detective work — finding where Claude Code was actually installed and removing it correctly.

Finding the actual installation:

where.exe claude

This revealed: C:\Users\J\AppData\Local\Microsoft\WinGet\Links\claude.exe — it was a WinGet installation.

First uninstall attempt failed:

winget uninstall claude-code

Error: package not found. The name wasn’t exact enough.

Finding the exact package ID:

winget list claude

This showed the correct ID: Anthropic.ClaudeCode

Successful uninstall:

winget uninstall Anthropic.ClaudeCode

Only after this complete removal could I attempt a fresh installation.

The lesson for non-developers

If you’re getting unexpected behavior during installation, the first step is figuring out how Claude Code was previously installed. Run where.exe claude (Windows) or which claude (Mac/Linux) to find the binary location. That tells you which uninstall method to use.

Binary LocationInstalled ViaUninstall Command
WinGet\Links\WinGetwinget uninstall Anthropic.ClaudeCode
npm\ pathnpmnpm uninstall -g @anthropic-ai/claude-code
\.local\bin\Native InstallerSee commands below

For Native Installer uninstall, the official docs provide these PowerShell commands:

Remove-Item -Path "$env:USERPROFILE\.local\bin\claude.exe" -Force
Remove-Item -Path "$env:USERPROFILE\.local\share\claude" -Recurse -Force

FAQ

Is Claude Code free to install?

The installation itself is free. But to actually use Claude Code after installing, you need a paid Claude subscription — Pro ($20/month) at minimum. The free Claude plan does not include Claude Code access.

Do I need Node.js to install Claude Code?

Not anymore. The Native Installer and WinGet methods don’t require Node.js. Only the legacy npm method requires Node.js 18+. In my experience, WinGet was the most reliable way to install Claude Code on Windows — the Native Installer is supposed to work without Node.js too, but it failed silently on my machine.

Final Thoughts

The honest summary of installing Claude Code on Windows: the official recommended method didn’t work for me, and figuring out why took longer than the actual installation.

If I could go back and give myself one piece of advice, it would be: try WinGet first. One command, a visible progress bar, and a clear success message. That’s what a non-developer needs — not a silent cursor that might or might not be doing something.


Tested on Windows 11 in April 2026. Claude Code version 2.1.91 installed via WinGet. Mac and Linux instructions are based on official documentation at code.claude.com/docs/en/setup — I haven’t tested these personally. Installation methods and commands may change; check the official docs for the latest.

Looking for alternatives that skip the terminal entirely? See my Claude Code Alternatives guide. Students can check my Claude Student Discount guide for ways to access Claude without paying full price.

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top