A refined and optimized settings.json configuration for Visual Studio Code — built to reduce lag, improve load time, and enhance overall coding performance.
Over time, my VS Code started lagging due to excessive extensions and unnecessary background processes.
Even after uninstalling many extensions, the performance issues persisted.
So, I took a deep dive into the settings.json file — carefully tuning and disabling the right parameters.
The result is a lightweight, responsive, and developer-focused VS Code setup that feels faster and more stable, even on moderate hardware.
- Reduces VS Code lag and startup time
- Optimized for performance without losing essential features
- Cleaner workspace with minimal visual noise
- Auto-formatting and productivity features preconfigured
- Balanced setup for both web and backend developers
| Metric | Before Optimization | After Optimization |
|---|---|---|
| VS Code Startup Time | ~8–10 seconds | ~3–4 seconds |
| Extension Load Lag | Noticeable stutter | Smooth and instant |
| File Save Delay | 1–2 seconds | Almost instant |
| Overall Responsiveness | Laggy during multitasking | Fast and stable |
| Memory Usage | High due to unused features | Reduced footprint |
⚡ These changes were achieved purely through settings.json refinements — no performance extensions required.
- Open your VS Code.
- Press Ctrl + , → search for “settings.json”
- Click “Edit in settings.json” (top-right icon).
- Replace your existing settings with the code below.
- Save and restart VS Code.
You’re all set — enjoy a smoother, faster development environment.
{
"tabnine.experimentalAutoImports": true,
"code-runner.runInTerminal": true,
"debug.terminal.clearBeforeReusing": true,
"terminal.integrated.cursorBlinking": true,
"terminal.integrated.drawBoldTextInBrightColors": false,
"code-runner.saveAllFilesBeforeRun": true,
"extensions.autoUpdate": false,
"workbench.editorAssociations": {
"*.pdf": "pdf.view"
},
"editor.inlineSuggest.showToolbar": "always",
"editor.fontFamily": "Cascadia Code, Consolas, 'Courier New', monospace",
"editor.fontLigatures": true,
"explorer.confirmDelete": false,
"explorer.confirmDragAndDrop": false,
"editor.defaultColorDecorators": "auto",
"liveServer.settings.donotShowInfoMsg": true,
"notebook.confirmDeleteRunningCell": false,
"remote.wsl.updateOnStart": false,
"terminal.integrated.fontFamily": "Cascadia Code",
"debug.console.fontSize": 13,
"terminal.integrated.fontSize": 12,
"window.zoomLevel": 1,
"[html]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[javascript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[javascriptreact]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[typescript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[typescriptreact]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[css]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[json]": {
"editor.defaultFormatter": "vscode.json-language-features"
},
"[jsonc]": {
"editor.defaultFormatter": "vscode.json-language-features"
},
"emmet.extensionsPath": [
"C:\\Study\\html\\.vscode\\snippets.json"
],
"git.enableSmartCommit": true,
"git.autofetch": true,
"css.hover.references": false,
"less.hover.references": false,
"scss.hover.references": false,
"html.hover.references": false,
"git.openRepositoryInParentFolders": "never",
"editor.linkedEditing": true,
"editor.formatOnPaste": true,
"git.confirmSync": false,
"editor.tokenColorCustomizations": {
"textMateRules": [
{
"scope": "comment",
"settings": {
"fontStyle": "italic"
}
}
]
},
"files.associations": {
"*.html": "html",
"*.css": "css"
},
"workbench.colorTheme": "One Dark Pro Darker",
"typescript.updateImportsOnFileMove.enabled": "always",
"workbench.iconTheme": "material-icon-theme",
"explorer.confirmPasteNative": false,
"javascript.updateImportsOnFileMove.enabled": "always",
"window.confirmSaveUntitledWorkspace": false,
"terminal.integrated.enableMultiLinePasteWarning": false,
"prettier.singleQuote": false,
"editor.formatOnSave": true,
"editor.minimap.enabled": false,
"files.exclude": {
"**/.git": false,
"**/.svn": true,
"**/.hg": true,
"**/.DS_Store": true
},
"editor.wordWrap": "on",
"files.autoSave": "afterDelay",
"files.watcherExclude": {
"**/node_modules/**": true,
"**/build/**": true,
"**/.git/**": true,
"**/dist/**": true,
"**/.next/**": true
},
"search.exclude": {
"**/node_modules": true,
"**/build": true,
"**/.git": true,
"**/dist": true,
"**/.next": true
},
"editor.quickSuggestions": {
"strings": "on"
},
"chat.implicitContext.suggestedContext": false
}This settings file is not about fancy extensions — it’s about balance, simplicity, and performance. If you value a clean and efficient workspace, this configuration is for you.
Author: Ovilash Jalui