Cursor

Cursor High CPU Usage — How to Fix It

Cursor spiking to 80–100% CPU even while idle is one of the most common performance complaints among developers working with large codebases. The issue typically surfaces when Cursor is indexing thousands of files or when a runaway extension consumes processing resources in the background. Developers on older hardware or spinning-disk drives are especially likely to notice sluggishness, fan noise, and battery drain.

?

Why does this error happen?

Cursor performs background indexing to power AI-assisted features like code completion, semantic search, and codebase-aware chat. When a project contains large dependency folders such as node_modules, .git history, or build output directories, the indexer attempts to parse and vectorize every file, saturating a single CPU core for extended periods. Simultaneously, VS Code-compatible extensions that register file system watchers can compound the problem by triggering repeated change events across thousands of files. On machines with slow I/O (mechanical HDDs) or limited RAM, the operating system begins swapping, further amplifying CPU wait times and creating a feedback loop of high utilization.

How to fix it

1

Add Large Folders to .cursorignore

Create or open a .cursorignore file in your project root and list directories that do not need AI indexing, such as node_modules, dist, .git, and build. Cursor treats this file similarly to .gitignore, skipping listed paths entirely during indexing. After saving the file, reload the window with Ctrl+Shift+P → 'Developer: Reload Window' to apply the changes immediately.

2

Disable Unused Extensions

Open the Extensions panel (Ctrl+Shift+X), filter by 'Enabled', and disable any extension you are not actively using for your current project. Extensions that provide linting, live previews, or file watching can each independently spike CPU usage. Right-click an extension and choose 'Disable (Workspace)' to turn it off only for the current project without affecting other workspaces.

3

Limit File Watcher Scope in Settings

Open Settings (Ctrl+,) and search for files.watcherExclude. Add glob patterns for heavy directories — for example, set **/node_modules/** and **/dist/** to true to exclude them from the file watcher. Also check files.exclude to hide those folders from the Explorer, which reduces the number of resources Cursor tracks at runtime.

4

Upgrade RAM or Use an SSD for the Project

If hardware resources are the bottleneck, moving your project folder to an SSD (or an NVMe drive) dramatically reduces I/O wait time that the CPU spends blocked during indexing. Adding RAM above 16 GB prevents the OS from swapping Cursor's in-memory index to disk. As a quick workaround, storing the project on a RAM disk or fast external NVMe enclosure can yield immediate improvements while a hardware upgrade is planned.

Pro tip

Add a .cursorignore file to every new project before writing your first line of code — blocking node_modules and build folders from the start prevents the indexer from ever processing them, keeping CPU usage low for the entire life of the project.

Frequently asked questions

Why does Cursor use high CPU even when I am not typing or using AI features?
Cursor runs background indexing and file-watching processes continuously so that AI features respond instantly when you do need them. If a large folder like node_modules was never excluded, the indexer may still be building or refreshing its vector store in the background long after you open a project.
Will adding folders to .cursorignore break AI code suggestions?
Ignoring dependency folders like node_modules does not meaningfully reduce suggestion quality because Cursor infers type information from your source files and tsconfig rather than scanning raw node_modules. Only exclude folders that contain generated or third-party code you would never want the AI to reference directly.
How can I tell which extension is causing the CPU spike?
Open the Process Explorer via Help → Open Process Explorer to see a real-time breakdown of CPU usage per extension host process. Sort by CPU to identify the offending extension, then disable it and monitor whether utilization drops.
Does Cursor Pro offer better performance than the free plan?
Cursor Pro does not change the local indexing engine, but it unlocks faster cloud model inference and priority access to AI features, which can reduce the time the editor stays busy waiting on completions. For CPU issues rooted in local indexing, the configuration fixes above will have the greatest impact.

Upgrade to Cursor Pro for faster AI responses and priority model access

Related Guides