Claude Desktop app extreme input lag (18+ seconds) due to React render loop

Resolved 💬 4 comments Opened Mar 6, 2026 by maxsoweski Closed Apr 9, 2026

Description

The Claude Desktop app (Windows Store / MSIX) has extreme UI sluggishness — 18+ seconds from typing a message to it appearing as a chat bubble. This has progressively worsened over weeks of use.

Claude Code in the terminal on the same machine is instantaneous, confirming the issue is entirely in the Electron desktop renderer.

Environment

  • OS: Windows 11 (WSL2)
  • CPU: Ryzen 7 9800X3D
  • GPU: RTX 5080 (16GB VRAM)
  • RAM: 32GB DDR5
  • App version: Claude Desktop (Windows Store / MSIX package Claude_pzs8sxrjxfjjc)

What I've ruled out

  • Cache bloat — cleared 14GB of Electron cache, no improvement
  • RAM pressure — ~500MB app usage, 60% free system RAM
  • Conversation length — fresh session still has 18-second delay
  • Network latency — ~0.95s warm round-trip from WSL2, normal
  • MCP servers — all disabled, still 17-second delay
  • CoworkVMService — disabled via registry (Start = 4), confirmed stopped. No improvement.
  • WSL2 load — zero load, 15GB free RAM

Likely root cause

This appears related to the React render loop bug discussed in #29366 and #4896:

  • Cascading React state updates (SkillsPlugin + fast mode status checks)
  • Reports of 536 re-renders in 32 seconds, 100% full-screen rewrites with zero incremental diffs
  • On my system I observed lastFpsAverage: 0.01 — the renderer is doing full repaints every frame

The MSIX packaging also blocks any GPU tuning workarounds (per #25801, #26302) — ELECTRON_EXTRA_LAUNCH_ARGS, electron-flags.conf, and NVIDIA per-app profiles are all ignored.

Expected behavior

Chat input should appear as a bubble within ~1 second, as it does in Claude Code terminal.

Actual behavior

18+ second delay from input to chat bubble appearing. Progressive degradation over weeks of use.

Workaround

Using Claude Code in the terminal instead. The PWA (claude.ai installed as web app) doesn't support Claude Code features so isn't a viable alternative.

View original on GitHub ↗

This issue has 4 comments on GitHub. Read the full discussion on GitHub ↗