[BUG] Desktop app Cloudflare Turnstile 403 loop on Windows 11
Preflight Checklist
- [x] I have searched existing issues and this hasn't been reported yet
- [x] This is a single bug report (please file separate reports for different bugs)
- [x] I am using the latest version of Claude Code
What's Wrong?
The desktop app cannot connect. It loops on "Performing security verification." The application log records a repeating Cloudflare managed-challenge ("Just a moment…") interstitial returning HTTP 403 on every navigation to claude.ai and on every event-logging batch flush. The challenge is never cleared, so the app reloads continuously.
Chrome, Edge, and Firefox all load claude.ai and authenticate normally from the same machine, network, and public IP. The failure is specific to the app's embedded browser.
With all local network and client configuration excluded, and with system browsers succeeding on the identical network and account, the failure appears to be an interaction between the app's web view and the Cloudflare challenge — not resolvable through local configuration.
What Should Happen?
Claude's internal browser should pass the Cloudflare challenge.
Error Messages/Logs
See attached "Main.log.txt" file, or contact me for details.
Steps to Reproduce
Launch Claude desktop app, or install/reinstall it.
Claude Model
Opus
Is this a regression?
Yes, this worked in a previous version
Last Working Version
_No response_
Claude Code Version
Claude desktop app version 1.12603.1.0 (MSIX package).
Platform
Anthropic API
Operating System
Windows
Terminal/Shell
PowerShell
Additional Information
Steps already taken (local causes ruled out):
- No system or WinHTTP proxy configured.
- hosts file clean.
- No TLS-interception certificate in the trust store; no third-party antivirus.
- IPv6 preference toggled — no change.
- DNS switched to 1.1.1.1 — no change.
- MSIX container / app data cleared.
- In-app Repair and Reset both failed.
- Full uninstall and clean reinstall of the package completed — no change.
Additional detail:
A single GPU-process crash appears in the log, but the 403 loop both precedes and follows it, so it is not the cause.
Showing cached comments. Read the full discussion on GitHub ↗
5 Comments
I am experiencing a very similar issue on macOS.
Whenever I open the Claude desktop app, a "Network Connection Failed" error briefly pops up. It then automatically redirects to the Cloudflare verification page, completes the challenge entirely on its own without requiring any manual interaction, and successfully loads the app.
Additionally, I noticed a specific pattern regarding the timing:
Long intervals: This issue always happens if I haven't used the app for a relatively long time (e.g., after a long break).
Short intervals: If I close the app and reopen it shortly after, the app launches smoothly without triggering the error or the redirect.
While it eventually lets me in, this seamless but repetitive automated loop happens every single time after a period of inactivity.
same problem, browser work, cli work, app dont lastest version, windows
Confirming this on a much newer build — and I can narrow it to a version regression.
Working: 1.22209.3
Broken: 1.24012.0 and 1.24012.1
Same machine, same network, same account, same egress IP across all three. The only variable that changed was the app version — the app auto-updated and stopped working on the next launch.
Environment
Symptoms
Every navigation to claude.ai returns 403 with a Cloudflare managed-challenge interstitial. The Turnstile iframe loads but never resolves, so
accountIdandorgIdstay null and the app fails to start.Chrome loads claude.ai and authenticates normally on the same machine, network and IP.
api.anthropic.comis reachable throughout — the in-app updater downloaded and installed 1.24012.1 without errors during the same session that could not reach claude.ai. So the failure is specific to the embedded webview against the claude.ai zone.Possible cause
The log shows the app rejecting three permission requests that the Turnstile widget makes, all from
challenges.cloudflare.cominside the claude.ai top frame:If the challenge cannot complete without these, the permission handler may need to allow them for the
challenges.cloudflare.comorigin specifically.Already ruled out
Remove-AppxPackage(all users + provisioned), removedCoworkVMService, deleted all leftover data directories, rebooted, reinstalled — no change. Log confirmsis_first_run: trueandFilesystem virtualization active, so the install was genuinely clean.Additional observations
GPU process gone: { reason: 'crashed', exitCode: 101457950 }appears consistently, but the 403 loop both precedes and follows itSeeing the exact same behavior, adding my logs as another data point.
Environment:
Claude Desktop version: 1.24012.9 (MSIX)
Windows 10.0.26200, x64, Professional edition
Fresh install (also reproduced after full uninstall + clean reinstall)
Symptoms:
Every request to https://claude.ai/ and the API returns 403 immediately on launch
Cloudflare Turnstile iframe loads and gets removed/re-triggered (Turnstile iframe detected. Removing error overlay.)
growthbook and Bootstrap API calls also fail with 403
A GPU process crash (exitCode: 101457950) shows up in the same session, but like the OP noted, the 403s start before the crash and continue after, so it looks like a separate/unrelated issue rather than the cause
Also noticed a JS error that might be relevant: [watch-record] failed to subscribe to swift events i.on is not a function — TypeError: i.on is not a function in index.chunk-D4J9UP7v.js
App eventually becomes unresponsive and prompts to "repair," which does not resolve it
What I've tried (no change):
Full uninstall via Settings > Apps, plus Remove-AppxPackage
Cleared %LOCALAPPDATA%\Packages\Claude_pzs8sxrjxfjjc and %LOCALAPPDATA%\AnthropicClaude
Clean reinstall from claude.ai/download
Verified system clock/timezone accuracy (Asia/Tokyo, auto-sync enabled)
No VPN/proxy in use
Log excerpt:
Navigation to https://claude.ai/ failed with status code 403:
Health check returned non-200 status: { status: 403, statusText: '' }
[account] Bootstrap API returned 403
Blocked permission check { permission: 'notifications', requestingOrigin: 'https://challenges.cloudflare.com/', ... }
GPU process gone: { type: 'GPU', reason: 'crashed', exitCode: 101457950, serviceName: 'GPU' }
Happy to attach full logs if useful. This looks like it's blocking new installs entirely rather than being an intermittent issue, so bumping priority seems warranted.
Confirming this on a much newer build, with some additional data points that I think change the severity assessment.
Same symptom, newer version, different geography
Claude_1.24012.9.0_x64__pzs8sxrjxfjjc), MSIX package, installed from claude.ai/downloadThe app launches, reaches the security verification step, and dies a few seconds later.
main.logshows the same Cloudflare pattern:The
403health-check failures repeat throughout startup, before and around the GPU crash. Browsers on the same machine, network, and public IP authenticate to claude.ai without issue, matching the original report exactly: the failure is specific to the app's embedded web view.This version is substantially newer than the 1.12603.1.0 in the original report, so the issue persists across a wide version range.
I can independently confirm the GPU crash is not the cause
The original report notes the 403 loop brackets the GPU crash. I tested this from the other direction and reached the same conclusion:
101457950. A driver-state or driver-version fault would not reproduce the same exit code across a clean reinstall.ANGLE (NVIDIA, NVIDIA GeForce RTX 5070 Ti, D3D11),Major Performance Caveat: No, and bothEXT_color_buffer_floatandEXT_color_buffer_half_floatpresent.The
INVALID_ENUM: getInternalformatParameterwarnings inclaude.ai-web.logare normal capability probing by the Turnstile fingerprinting code, not a fault. The GPU crash appears to be a downstream symptom.New: the failure is unrecoverable, which makes the app permanently unusable
This is the part I'd flag as more severe than currently reflected. The crash does not just fail — it corrupts the MSIX package:
Get-AppxPackage *Claude* | Select Name, StatusreturnsOkModified, NeedsRemediationSo a single ordinary crash puts the package into a non-launchable state that requires a full uninstall and reinstall. And because the installer auto-launches the app on completion, there is no window in which the user can intervene before the crash happens. Reinstall → auto-launch → crash → package corrupted → reinstall. It is a closed loop with no user-accessible escape.
I verified this is not recoverable through the documented path: in-app Repair and Reset both fail, matching the original report.
New: MSIX packaging blocks the obvious workaround
The natural workaround would be launching with hardware acceleration disabled. MSIX makes this impractical. I tried the package-identity-preserving route:
This fails with
0x80073CFC(package not found), because by the time the first crash has occurred the package is already in the modified state. There is no point at which the flag can be applied.This is closely related to #45031, where the MSIX GPU flag limitation has been noted as unresolved since Feb 2026. An environment variable or a
settings.jsonswitch honored at startup would give affected users a workaround for both issues.Suggested fixes
child-process-goneto restart the GPU process or fall back to SwiftShader would at least prevent the package-corruption cascade, regardless of what the underlying Turnstile issue turns out to be.C:\Program Files\WindowsApps\.Two secondary notes
Log path is wrong in the docs.
%APPDATA%\Claude\logs\does not exist on MSIX installs due to path redirection. The actual location is:This cost me a while to find and may be why some reports lack logs.
Orphaned package directories.
C:\Program Files\WindowsApps\on this machine holds 18 Claude package directories going back to1.2773.0.0, none cleaned up across updates. The AppX deployment log also showserror 0x5failures deleting files underWindowsApps\Deleted\, affecting other packages too (e.g. Clipchamp), so MSIX cleanup appears to be failing generally here. Probably unrelated to the crash, but it does mean no reinstall on this machine starts from a truly clean state.Happy to attach full log files or run any specific diagnostic.