TL;DR: Windsurf's March 2026 credit pricing turned a $25/8-hour tool into a ~$25/hour tool for active builders. Claude Code is the most popular migration destination right now. It runs in your terminal, uses the same Claude AI that powered Windsurf's Cascade, and charges per token through the Anthropic API — meaning most users pay $3–$10/hour instead. Migration takes about 30 minutes: install Node, run npm install -g @anthropic-ai/claude-code, set your API key, and add a CLAUDE.md file to your project. Everything below walks you through each step.
Why People Are Switching: The Pricing Math
In March 2026, Windsurf moved from a flat subscription model to a credit-based system. The announcement post on r/windsurf picked up 497 upvotes — almost all of them angry. Here's what changed and why the numbers stung so badly.
Under the old Pro plan (~$15–$25/month), you got unlimited or near-unlimited Cascade interactions. One flat fee covered a full month of building. Under the new credit system, every Cascade action costs credits — and credits are priced such that heavy builders burn through them fast.
The community math worked out to roughly this:
Old system: $25/month → unlimited Cascade use across ~20 working days = ~$1.25/day for power users who coded 8 hours a day.
New system: Same $25 now lasts roughly 1 hour of active Cascade use for builders who do long multi-file sessions with the most powerful models.
To be fair: casual users who make a handful of requests per day may not notice a huge difference. But vibe coders — people who lean on Cascade to build entire features, iterate on bugs, and run multi-step tasks — are the heaviest users. They're also the ones who got hit hardest. The pricing model essentially taxed the power users who loved the product most.
For more context on exactly how the new credit system works, see: Windsurf's Pricing Changes Explained.
What You'll Miss From Windsurf (Honest)
Before we get into the migration, let's be straight about what Claude Code doesn't have. Switching tools is a real tradeoff, not an upgrade in every dimension.
Visual diff panel
Windsurf shows you proposed changes in a clean side-by-side diff UI. Claude Code outputs changes to the terminal and you review via git. It works, but it's less visual.
Inline Supercomplete
Windsurf's Tab completion inline in the editor is fast and fluid. Claude Code has no inline autocomplete — it operates on full prompts, not keystrokes. You'll want to keep a separate autocomplete tool if you rely on Tab heavily.
Everything in one window
Windsurf's IDE + AI in one window is genuinely convenient. With Claude Code, your editor and your AI live in separate windows (terminal vs editor). Some people adapt quickly; others find it annoying.
Seamless model switching
Windsurf lets you switch between Claude, GPT, and their own SWE-1 model from a dropdown. Claude Code uses Claude exclusively. If you relied on GPT-5 for certain tasks, you'll need a different tool for that.
None of these are dealbreakers for most vibe coders — but they're real. Go in with clear eyes.
What You'll Gain With Claude Code
Here's the flip side — what Claude Code does better, or differently enough to matter.
Predictable costs
You pay per token through the Anthropic API. A typical 1-hour session of active Claude Code use costs $3–$8. There's no surprise bill from leaving a long session running. You can also set hard spending caps in the Anthropic console.
No rate limits mid-task
Windsurf's credit system can cut you off mid-feature when credits run out. With API billing, you keep working as long as your balance allows. No more "you've used your credits" interruptions.
First-class Claude model access
Claude Code uses the latest Claude models directly — the same intelligence that powered Windsurf's Cascade, but without Windsurf as a middleman adding markup to the cost.
Scriptable and automatable
Claude Code runs in a terminal, which means you can script it, chain it with other CLI tools, run it in CI/CD, and automate repetitive workflows. Windsurf's GUI doesn't support this at all.
CLAUDE.md project memory
A CLAUDE.md file gives Claude Code persistent context about your project — tech stack, conventions, rules. It reads this every session, so you don't re-explain your setup every time. Better than Windsurf's one-time system prompt.
Editor agnostic
Claude Code works with any editor — VS Code, Zed, Neovim, Sublime. You don't have to switch your editing environment. Just add Claude Code to your terminal workflow alongside whatever editor you already love.
Step-by-Step Migration Guide
Step 1: Install Claude Code
Claude Code requires Node.js 18 or later. Check your version first:
node --version
If you get a version below 18, or "command not found", install Node from nodejs.org (download the LTS version). Then install Claude Code globally:
npm install -g @anthropic-ai/claude-code
Verify the install worked:
claude --version
You should see a version number. If you see an error, try closing and reopening your terminal, then run the version check again.
Step 2: Get Your Anthropic API Key
Claude Code uses the Anthropic API directly. You need an API key to use it.
- Go to console.anthropic.com and create an account (or sign in if you have one).
- Navigate to API Keys in the left sidebar.
- Click Create Key, give it a name like "Claude Code", and copy the key — it starts with
sk-ant-. - While you're in the console, go to Billing and add a payment method. Set a monthly spending limit to protect yourself from accidental overuse.
Now set the key in your terminal environment. The cleanest way is to add it to your shell profile so it persists across sessions:
# If you use zsh (default on modern macOS):
echo 'export ANTHROPIC_API_KEY="sk-ant-YOUR-KEY-HERE"' >> ~/.zshrc
source ~/.zshrc
# If you use bash:
echo 'export ANTHROPIC_API_KEY="sk-ant-YOUR-KEY-HERE"' >> ~/.bashrc
source ~/.bashrc
Replace sk-ant-YOUR-KEY-HERE with your actual key. Do not share this key or commit it to git.
Step 3: Start Your First Session
Navigate to your project folder in the terminal and launch Claude Code:
cd ~/your-project-folder
claude
This opens an interactive session. Claude Code immediately reads your project files and is ready for your first prompt. Try something simple to confirm everything works:
> Summarize what this project does based on the files you can see.
Claude Code will scan your project and give you a summary. If this works, your setup is correct. If you see an API key error, double-check that your environment variable is set correctly by running echo $ANTHROPIC_API_KEY — it should print your key.
For a full walkthrough of Claude Code's features and interface, see: Claude Code: The Complete Beginner's Guide.
Step 4: Create Your CLAUDE.md File
This is the most important step for getting good results from day one. A CLAUDE.md file sits in your project root and tells Claude Code everything it needs to know about your project before it starts working.
Create a file called CLAUDE.md in your project root. Here is a template to start from:
CLAUDE.md — Starter Template
# Project: [Your Project Name]
## What This Is
[One sentence describing what the app does.]
## Tech Stack
- Frontend: [e.g. React 18, Tailwind CSS]
- Backend: [e.g. Node.js, Express 5]
- Database: [e.g. PostgreSQL via Prisma]
- Deployment: [e.g. Vercel]
## Important Rules
- Never modify files in /node_modules or /dist
- Always use TypeScript strict mode
- Use the existing utility functions in /src/lib before creating new ones
- Prefer early returns over nested if/else
## Coding Style
- Use async/await, not .then() chains
- 2-space indentation
- Named exports only (no default exports)
## Current Focus
[What you're working on right now — update this as the project evolves]
Fill in the blanks for your actual project. The more specific you are, the less you'll need to repeat yourself in every prompt. To learn more about what makes a great CLAUDE.md file, read: What Is a CLAUDE.md File and How Do You Write One?
Translating Windsurf Cascade Workflows to Claude Code
The mental model is nearly identical — describe what you want, the AI does it. But the interface is different. Here's how your Cascade habits map to Claude Code.
Cascade Write Mode → Claude Code (default mode)
In Windsurf, you switched to Write mode when you wanted Cascade to actually change files. In Claude Code, the default mode is agentic — it can and will edit files. You don't need to toggle anything. Just describe what you want built:
Windsurf Cascade (Write Mode)
Add a password reset flow to this
Express app. POST /auth/reset
sends an email with a token,
POST /auth/reset/:token
validates and updates the
password. Use nodemailer.
Claude Code (same prompt, same result)
Add a password reset flow to this
Express app. POST /auth/reset
sends an email with a token,
POST /auth/reset/:token
validates and updates the
password. Use nodemailer.
The prompt is identical. The experience is nearly identical. The main difference is where you see the changes — Claude Code shows them in the terminal and applies them to your files, while Cascade showed them in the visual diff panel inside the IDE.
Cascade @file mentions → Claude Code file references
In Windsurf, you used @filename to point Cascade at specific files. In Claude Code, you can reference files directly in your prompt using plain language or relative paths:
| Windsurf Cascade | Claude Code equivalent |
|---|---|
@src/auth/login.js add rate limiting |
"In src/auth/login.js, add rate limiting" |
@components/Button fix the hover state |
"Fix the hover state in the Button component" |
@server.js @routes/ refactor the auth routes |
"Looking at server.js and the routes/ folder, refactor the auth routes" |
Claude Code indexes your entire project at startup, so it can find files semantically — you don't need to know exact paths for most requests. For large codebases, being specific still helps.
Cascade Chat Mode → Claude Code question prompts
Windsurf's Chat mode was for questions that didn't change code. In Claude Code, just ask your question as a prompt. If Claude Code thinks it needs to edit files, it will ask you first. If you want to make sure it stays in "explain only" mode, just say so:
> Don't make any changes — just explain how the authentication middleware works in this project.
Windsurf system prompt → CLAUDE.md
If you had a custom system prompt configured in Windsurf to set project context, that maps directly to CLAUDE.md. Copy the content of your system prompt into your CLAUDE.md file. Claude Code reads it at the start of every session — no need to paste it manually each time.
New Cascade conversation → Claude Code /clear
In Windsurf, you started fresh with Cmd+Shift+L. In Claude Code, type /clear to reset the conversation context. Do this between unrelated tasks to keep the context window clean and costs lower.
Context window tip
Claude Code uses tokens to process your requests — the longer your conversation history, the more tokens each new message costs. Use /clear between features just like you'd start a new Cascade conversation in Windsurf. Your CLAUDE.md still loads at the start of the fresh session, so you don't lose project context. Learn more: What Are AI Tokens and Context Limits?
Cost Comparison: Windsurf New Pricing vs Claude Code API
These numbers are based on community reports from the r/windsurf exodus thread and Anthropic's published API pricing as of March 2026. Individual costs vary depending on how you work, which models you use, and how long your prompts are.
| Usage Profile | Windsurf (new credits) | Claude Code (API) | Savings |
|---|---|---|---|
| Casual (1–2 hrs/day, simple prompts) | ~$15–25/month | ~$8–15/month | ~40% |
| Regular builder (3–4 hrs/day, multi-file) | ~$60–120/month | ~$20–40/month | ~65% |
| Power user (6–8 hrs/day, long sessions) | ~$200–400/month | ~$40–80/month | ~75–80% |
| Sprint day (full-day feature build) | ~$25–50 that day | ~$5–12 that day | ~75% |
The gap widens with heavier use because Windsurf's credit system charges more per action at scale, while the Anthropic API charges purely per token with no multiplier for volume. If you want a flat monthly cost instead of per-token billing, Anthropic also offers Claude Max subscription plans at $100/month and $200/month for high-volume users.
What AI Gets Wrong About This Migration
If you ask an AI assistant (including Claude) "how do I switch from Windsurf to Claude Code?", you'll get a mostly accurate answer. But here are four things that tend to be glossed over or wrong:
1. "Claude Code is just like Cascade but in a terminal"
This is mostly true but misses important gaps. Claude Code has no inline autocomplete, no visual diff UI, and no multi-model switching. If your workflow relied heavily on Supercomplete's Tab key suggestions or the visual diff panel, the adjustment period will be real. Plan to compensate: keep a lightweight autocomplete extension in your editor, and build the habit of doing git diff to review changes before committing.
2. Claiming API billing is always cheaper
For heavy users, yes. But if you're a very casual builder who makes 5–10 simple requests per day, Windsurf's flat fee might still be more cost-effective than per-token billing — especially if you use Claude's most powerful models for every request. Run your own math: estimate your daily token usage using this guide on tokens and context limits, then multiply by Anthropic's published rates.
3. CLAUDE.md is optional
Technically yes, practically no. Without a CLAUDE.md, Claude Code has to re-learn your project setup every session. You'll repeat yourself constantly ("this is a Next.js app with Tailwind, use TypeScript strict mode…"). Creating even a basic CLAUDE.md file in the first 10 minutes saves hours of repeated context over the coming weeks.
4. You can just copy your Windsurf system prompt to CLAUDE.md
You can, and it's a good starting point. But Windsurf system prompts are often written for Cascade's specific behaviors and may include instructions that don't apply to Claude Code (like "use Write mode for changes"). Audit your system prompt when you paste it — remove anything Windsurf-specific and restructure it around what Claude Code actually needs: project overview, tech stack, hard rules, and style preferences.
FAQ
For most active builders, yes — significantly. Windsurf's new credit system charges roughly $25 per hour of active Cascade use on the Pro plan. Claude Code with direct API access charges per token, and a typical hour of active coding costs $3–$8 depending on how many long-context requests you make. Heavy users who previously spent $25 over 8 hours in Windsurf may now spend $25 in a single hour under the new system.
Claude Code is a terminal tool, not an IDE, so extensions don't transfer directly. However, you keep your editor of choice — Claude Code works alongside VS Code, Zed, or any editor. Your keyboard shortcuts, themes, and editor settings stay exactly as they are. You just add Claude Code as the AI layer running in your terminal.
A CLAUDE.md file is a plain text file you put in your project root that tells Claude Code about your project — the tech stack, coding conventions, which files to avoid touching, and how you want it to behave. It's the Claude Code equivalent of Windsurf's system prompt or Cursor's .cursorrules file. You don't strictly need one, but having even a basic one dramatically improves the quality of Claude Code's output for your specific project.
Yes. Claude Code operates as a full agent — it reads files, edits multiple files simultaneously, runs terminal commands, checks output, and iterates. The experience is similar to Cascade Write mode. The main difference is that Claude Code runs in your terminal rather than inside an IDE panel, and you review changes via git diff rather than a visual diff panel.
Set a spending limit in your Anthropic console before you start — go to console.anthropic.com, find Billing, and set a hard monthly cap. Claude Code also shows you an estimated token count before executing large requests. For predictable costs, some users prefer Claude Code's subscription plan (Claude Max at $100–$200/month) which includes high usage limits without per-token billing.
What to Read Next
You've got the migration steps. Here's where to go deeper:
- Claude Code: The Complete Beginner's Guide — full walkthrough of every Claude Code feature, from first session to advanced workflows.
- What Is a CLAUDE.md File and How Do You Write One? — everything you need to know to write a CLAUDE.md that makes Claude Code dramatically more useful.
- Windsurf's Pricing Changes Explained — the full breakdown of what changed, who it affects, and what your options are.
- Cursor vs Windsurf — if you're still deciding between tools, this comparison includes Claude Code in the mix.
- What Are AI Tokens and Context Limits? — understanding tokens helps you use Claude Code efficiently and avoid unexpected costs.
Ready to switch?
The migration takes about 30 minutes. Install Claude Code, get your API key, set a spending limit in the Anthropic console, and write a basic CLAUDE.md for your main project. Run one real task — something you'd normally do in Cascade. After an hour of use, most Windsurf refugees say the workflow clicks naturally.