VS Code Problems & Issues
Real user-reported problems, complaints, and limitations for VS Code. Based on analysis of 12 signals.
Issues by Category
Limited refactoring compared to JetBrains IDEs
VS Code's refactoring capabilities are basic compared to JetBrains IntelliJ or WebStorm. Java and OOP languages get limited support. Developers switching from JetBrains miss advanced rename, extract, and inline refactoring that work across entire projects.
No local change history built-in
VS Code doesn't store project or local change history, making it impossible to view previous changes from days earlier without Git commits. JetBrains IDEs have built-in local history that saves every edit. VS Code users must rely on extensions or manual backups.
Git integration inferior to JetBrains
While VS Code has Git support, developers switching from JetBrains miss the superior Git experience: visual diffs, Git tool window, branches/changes overview, and interactive rebase workflows. VS Code requires extensions and CLI for advanced Git operations.
Requires extension hunting for basic features
Many features that are built into full IDEs require finding and installing extensions in VS Code. Setting up a productive environment takes time—choosing between competing extensions, configuring each, and troubleshooting conflicts.
High memory usage and lag with extensions
VS Code becomes sluggish with many extensions installed. Unoptimized marketplace extensions cause memory bloat and slow typing response. Large codebases with many files trigger high RAM usage. Some describe it as 'a bloated Electron mess held together by half-baked plugins.'
Struggles with large monorepo projects
When working with mega-codebases or monorepos spanning multiple apps, VS Code's file watchers overwhelm the system. Indexing thousands of files causes lag. Reddit developers recommend splitting into multi-root workspaces or using .gitignore patterns to exclude files.
Slow search on large projects
File search and global search become slow on large codebases. Waiting on searches disrupts flow. JetBrains IDEs with their indexing provide instant search. VS Code users must carefully configure file exclusions for acceptable performance.
Telemetry sends data to Microsoft by default
VS Code collects usage data and crash reports, sending them to Microsoft by default. While telemetry can be disabled, it uses opt-out rather than opt-in. Third-party extensions may collect their own data outside VS Code's telemetry settings. Privacy-conscious users should consider VSCodium instead.
Not truly open source in distributed form
While VS Code's source is open, the downloadable binary includes Microsoft telemetry and proprietary licensing. For true open source, users must use VSCodium, which lacks access to Microsoft's marketplace and some proprietary extensions like GitHub Copilot.
Extension conflicts and breakage
Multiple extensions can conflict with each other, causing unexpected behavior. Extensions from different authors may fight over same functionality. Updates sometimes break extensions until authors catch up. Quality varies wildly in the marketplace.
Closed-source extensions hard to debug
Some VS Code internal plugins like Pylance are closed source. When bugs occur, it's very hard to reach Microsoft for fixes. Users can't patch issues themselves. Community alternatives exist but may lack features.
Electron-based means inherent overhead
VS Code is built on Electron (Chromium + Node.js), meaning it's essentially a web browser running your editor. This architectural choice brings inherent memory overhead compared to native editors like Sublime Text or terminal-based editors.
Regret Patterns
Common reasons users regret choosing VS Code.
Extension overload killed performance
Developers installed every recommended extension without auditing, leading to severe slowdowns. Editing became laggy, startup took forever. Should have been selective and regularly audited extensions.
Switched from JetBrains, missed features
Developers left JetBrains to avoid subscription costs but found VS Code lacking in refactoring, Git GUI, and project intelligence. Spent more time configuring extensions than saved on subscription. Some returned to JetBrains.
Realized telemetry was sending data
Privacy-conscious developers discovered VS Code sends usage data to Microsoft by default after using it extensively. Felt betrayed by opt-out model. Migrated to VSCodium but lost access to some extensions.
Struggled with large Java project
Java developers tried VS Code for a large enterprise project but found refactoring painful, compilation slow, and features missing. IntelliJ would have been more productive despite the cost.
Extension broke after VS Code update
Critical workflow extension stopped working after a VS Code update. The extension author was slow to update. Lost productivity waiting for fixes or finding alternatives.
Monorepo performance became unbearable
Developers working on growing monorepos found VS Code increasingly slow. File search, intellisense, and watchers consumed resources. Should have configured exclusions earlier or used different tooling.
When VS Code Breaks Down
Specific scenarios where VS Code fails or underperforms.
Project grows into large monorepo
File watchers, search, and IntelliSense slow down as projects grow to thousands of files. Memory usage spikes. Requires careful configuration of exclusions or switching to JetBrains with proper indexing.
Extension you depend on breaks
Critical workflow extension stops working after VS Code or extension update. You're dependent on third-party maintainer timelines. May need to find alternatives or wait for fixes.
Need advanced Java/enterprise refactoring
Complex OOP refactoring that IntelliJ handles automatically requires manual work in VS Code. Cross-project rename, extract patterns, and code analysis are significantly weaker.
Privacy audit reveals telemetry
Organization discovers VS Code sends data to Microsoft. Must either accept this, configure enterprise telemetry settings, or migrate to VSCodium (losing some extensions).
Too many extensions installed
Accumulated extensions over time cause severe performance degradation. Must audit and remove, but determining which to keep becomes difficult when workflows depend on many.
Need features VSCodium can't provide
Switched to VSCodium for privacy but need GitHub Copilot, Live Share, or other proprietary Microsoft extensions. Must choose between privacy and functionality.