Cursor Troubleshooting: Fix Freezes, Lag and AI Errors
Related guide: Cursor pricing, seats and usage limits
Most Cursor problems go away after a full quit and restart, a look at the status page, or Cursor’s own network diagnostics. If they don’t, find the extension or folder that slows it down, read the logs, and as a last resort reset Cursor’s local data. This guide goes in that order, from the quickest fix to the slowest, using the steps in Cursor’s help pages as of October 2026.
Quick fixes to try first
Fully quit Cursor and reopen it: Cmd+Q on a Mac, or exit from the tray on Windows and Linux. Closing the window isn’t enough. If you only see a blank window on startup, reinstall from cursor.com/download (Cursor help).
Then check status.cursor.com. If AI requests or sign-in show an incident there, the problem isn’t on your machine.
Finally, update. Open the Command Palette (Cmd/Ctrl+Shift+P) and run Cursor: Attempt Update. If you’re on the Early Access channel and things broke after an update, switch back to Stable in Cursor Settings.
| Symptom | Likely cause | First action |
|---|---|---|
| Frozen or blank window | A stuck process | Fully quit and reopen; reinstall if the window stays blank |
| Slow typing, high CPU or memory | An extension, or a large folder being indexed | Start Cursor with extensions disabled and compare |
| Agent or chat requests fail | An outage, the network, a proxy or a usage limit | Check the status page, then run network diagnostics |
| A usage limit notice | The plan’s included usage is used up | Turn on on-demand usage or switch to Cursor’s own models |
| Sign-in fails or “suspicious activity” | A VPN | Turn off the VPN, or sign in with Google or GitHub |

When AI requests fail: network, proxy and VPN
Run Cursor’s diagnostics first. Go to Cursor Settings › Network and click Run Diagnostics. It tests your connection to Cursor’s servers and shows which check fails (Cursor network help).
Behind a corporate proxy or VPN, the usual cause is HTTP/2. Cursor streams responses over HTTP/2, and some proxies, such as Zscaler, block it. In Cursor Settings › Network, set HTTP Compatibility Mode to HTTP/1.1 (the fix forum threads call “Disable HTTP/2”), then restart Cursor.
Three more network causes:
- A firewall blocks Cursor’s domains. Ask IT to allowlist
*.cursor.sh,*.cursor-cdn.comand*.cursorapi.com, plus the rest of the list in Cursor’s network configuration docs. - DNS errors after you disconnect a VPN. Cursor can keep the VPN’s DNS settings. Fully restart Cursor, not just reload the window.
- AI stops working over Remote SSH. AI requests go from your local machine to Cursor, not from the remote host, so check your local connection first. If the SSH session keeps dropping, raise the keep-alive in your SSH config:
Host your-server
ServerAliveInterval 60
ServerAliveCountMax 3
When AI errors aren’t the network: usage, keys and the agent
You don’t need an API key to use Cursor. Its plans include usage of Cursor’s own models (Composer and Grok) and of third-party models from Anthropic, Google and others. When the included usage runs out, Cursor shows a notice in the editor. Turn on on-demand usage, switch to Cursor’s own models (they draw from a separate pool), or upgrade. The Spending tab in your dashboard shows what’s left (Cursor usage help).
Your own API key is optional. You add it in Cursor Settings › Models for OpenAI, Anthropic, Google, Azure OpenAI or AWS Bedrock. If a key is invalid or the provider rejects it, requests to that provider’s models fail until you update or remove the key (Cursor API key help). So if only one provider’s models fail, check that key first, and check your credit on the provider’s side.
One change to expect: OpenAI has said it will stop supplying its models to Cursor, with a proposed cutoff of November 12, 2026 (OpenAI). If GPT models stop working after that date, that’s the reason, not your setup.
For agent problems, Cursor’s agent troubleshooting page covers the common ones:
- “Agent Execution Timed Out”: Cursor’s extension host didn’t start within 60 seconds. Export the logs (below) before changing anything. On managed machines, antivirus or endpoint security software is one possible cause.
- The agent can’t see your files: check
.cursorignoreand.gitignore, run “Reindex” from the Command Palette, or attach the file with@. - An MCP server won’t connect: check the server’s entry in
mcp.jsonand its tools in Cursor’s MCP settings. Our Figma and GitHub MCP setup guide shows a working config.
When Cursor is slow or crashes
Start with extensions, because they’re the most common cause. Launch Cursor with all of them turned off:
cursor --disable-extensions
If Cursor is fast that way, re-enable extensions one at a time until the slowdown comes back. The last one you turned on is the cause. To see what’s running now, open the Command Palette and run Show Running Extensions, which lists each extension with its CPU and memory use (Cursor performance help).
Next, shrink what Cursor indexes. Add large generated folders such as dist/, build/ and .next/ to .cursorignore. In a big monorepo, opening the subfolder you work in, not the whole repository, also helps. Watch Activity Monitor (macOS) or Task Manager (Windows): a CPU spike right before a freeze is your first clue.
Two more fixes for an editor that has slowed down over time:
- Clean up old agent chats. Their local database can grow to many gigabytes. Run
Delete Old Chats…from the Command Palette, thenGC Agent KV Blobs, which shrinks the file on disk. - Clear the cache. Quit Cursor and delete the
Cache,CachedData,Code CacheandGPUCachefolders inside Cursor’s data folder (locations in the reset section below). Cursor rebuilds them on the next launch and keeps your settings.

Read the logs
Open the logs: Command Palette → Developer: Open Logs Folder. To send them to support, run Developer: Export Logs… and select Main, Window and Extension Host. Each covers a different part of Cursor:
- Main: startup, windows and updates. Read it first if Cursor crashes on launch.
- Window: the interface. Read it for visual glitches or a frozen UI.
- Extension Host: everything extensions do. Read it when an extension misbehaves or the agent times out. You can also see it live in the Output panel by picking “Extension Host” from the dropdown.
Search the log for ERROR, FATAL and Unhandled. Then read the lines just before the first error: a network request that timed out right before an agent failure tells you more than the error itself. For interface errors, open Help › Toggle Developer Tools and check the Console tab.
Reset Cursor completely
A full reset is the last resort: it removes your settings, extensions and local chat history. Back up settings.json (in the User folder of Cursor’s data folder) and note which extensions you use. Then quit Cursor and delete its data folder:
- macOS:
~/Library/Application Support/Cursor - Windows:
%APPDATA%\Cursor - Linux:
~/.config/Cursor
To remove extensions and your global MCP config too, also delete ~/.cursor in your home folder. The next launch starts like a new install.
Report a bug Cursor can fix
If nothing above works, post on forum.cursor.com with what Cursor’s bug report guide asks for:
- Your Cursor version (Cursor › About Cursor) and your operating system and version.
- The steps to reproduce the problem.
- What you expected and what happened instead.
- The request ID: in the chat, open the “…” menu and choose Copy Request ID.
- Error lines from the logs or the developer tools console.
- A recording: screen-record the bug and attach it to your report.
With Privacy Mode on, Cursor’s support team sees only which model ran and whether a tool failed. For a problem with the agent’s behavior, turn on Share Data, reproduce the issue, copy the new request ID, then switch back.
If you’re new to Cursor’s features, start with these Cursor tutorials.
Zest records each engineer’s coding-agent sessions (Claude Code, Codex, Cursor, Copilot Chat) and links them to the pull requests they led to.
Frequently asked questions
Why is Cursor so slow?
Usually because of an extension or a large folder being indexed. Start Cursor with cursor --disable-extensions to test, add build output folders to .cursorignore, and update to the latest version. If only AI requests are slow, check status.cursor.com.
Why does Cursor’s AI stop working behind a VPN or corporate proxy?
Some proxies block HTTP/2, which Cursor uses to stream responses. In Cursor Settings › Network, set HTTP Compatibility Mode to HTTP/1.1, restart Cursor and click Run Diagnostics. If a firewall blocks outbound traffic, ask IT to allowlist Cursor’s domains.
Do I need my own API key to use Cursor?
No. Cursor’s plans include usage of its own models and of models from Anthropic, Google and others. Your own key is optional, and if a key you added is invalid or out of credit, requests to that provider fail until you update or remove it.
How do I completely reset Cursor?
Back up settings.json, quit Cursor and delete its data folder: ~/Library/Application Support/Cursor on macOS, %APPDATA%\Cursor on Windows or ~/.config/Cursor on Linux. Delete ~/.cursor too to remove extensions. This also deletes your local chat history.