Running into issues with OpenClaw? You're not alone. Here are the most common errors and how to fix them.
Deep-dive guides — for complex errors, we have dedicated articles with full diagnosis steps:
- Gateway Start Blocked Fix — the most common setup error
- Device Token Mismatch Fix — token regeneration and pairing issues
- Gateway Connection Errors — "did not become ready", disconnections, send failures
- Config Validation Errors — unknown keys, invalid config
- Access Not Configured — dashboard and web access issues
- OpenClaw Doctor Guide — complete
openclaw doctorreference - Config Reference — every
openclaw.jsonsetting explained - Factory Reset Guide — when you need a clean start
- Reverse Proxy Setup — Caddy, Nginx, trusted proxies
Gateway Errors
"Gateway connect failed"
Cause: Wrong host, port, or URL configuration. See our full gateway connection guide for detailed diagnosis.
Fix:
openclaw config set gateway.host "localhost"
openclaw config set gateway.port 3001
openclaw restart
If running behind a reverse proxy (like Caddy or Nginx), make sure gateway.trustedProxies includes your proxy IP. See our reverse proxy setup guide.
openclaw config set gateway.trustedProxies '["127.0.0.1"]'
"Gateway start blocked"
Cause: Gateway mode is not set correctly. See our detailed gateway.mode fix guide for all variations.
Fix:
openclaw config set gateway.mode "local"
openclaw restart
Gateway keeps restarting
Cause: Usually a port conflict or corrupted state.
Fix:
openclaw gateway stop
# Wait 5 seconds
openclaw gateway start
If that doesn't work, run the diagnostic tool:
openclaw doctor --fix
Device Pairing Issues
"Device identity required" / "Device token mismatch"
Cause: Every new browser or client connection needs to be approved, or a previously approved device's token no longer matches. See our device token mismatch guide for full diagnosis.
Fix:
# List pending devices
openclaw devices list
# Approve a specific device
openclaw devices approve DEVICE_ID
For token mismatch errors, run:
openclaw doctor --fix
openclaw restart
Pairing code not appearing
Cause: The Telegram channel might not be fully connected.
Fix:
- Verify your bot token is correct:
openclaw config get telegram.token
- Restart the gateway:
openclaw gateway restart
- Send a message to your bot — the pairing code should appear in your terminal.
Telegram Issues
Bot doesn't respond
Cause: Multiple possible reasons.
Checklist:
- Is OpenClaw running? Check with
openclaw status - Is the gateway ready? Look for
[gateway] listening onin logs - Is the bot token correct? Verify with BotFather
- Is another instance polling? Only one process can poll a bot's updates
Quick fix:
openclaw restart
"Telegram getUpdates returned empty"
Cause: If OpenClaw is already polling for updates, the Telegram API won't return them to other callers.
Fix: This is normal behavior. Only one process should poll a bot. If you previously ran a different bot on the same token, stop that process first.
Messages are delayed
Cause: Usually high API load or rate limiting from your AI provider.
Fix:
- Check your API provider's dashboard for rate limit errors
- Consider switching to a faster model (e.g., Sonnet instead of Opus)
- Check
openclaw logsfor timeout errors
Docker Issues
Container starts but OpenClaw doesn't work
Cause: The gateway takes ~40 seconds to fully start.
Fix: Wait for the log line [gateway] listening on — that's the real ready signal. The earlier message [entrypoint] Starting OpenClaw gateway does NOT mean it's ready.
"Permission denied" errors in Docker
Cause: File ownership mismatch inside the container.
Fix:
docker exec -it YOUR_CONTAINER_ID chown -R node:node /app
docker restart YOUR_CONTAINER_ID
Gateway token changes on restart
Cause: OpenClaw regenerates the gateway token on every restart unless you set it explicitly.
Fix:
# Set a permanent token
docker exec YOUR_CONTAINER_ID openclaw config set gateway.token "YOUR_FIXED_TOKEN"
# Or set it via environment variable
OPENCLAW_GATEWAY_TOKEN=your-token docker-compose up -d
Configuration Errors
"Configuration validation error"
Cause: Invalid JSON in openclaw.json.
Fix:
# Validate your config
openclaw config validate
# Or reset to defaults
openclaw config reset
"Unknown configuration key"
Cause: Typo in config key or using an outdated key name. See our config validation guide for the full key migration table.
Fix: Check the config reference for valid keys. Common mistakes:
telegramTokenshould betelegram.tokenmodelshould beai.model
General Debugging
The Nuclear Option: openclaw doctor
When nothing else works:
openclaw doctor --fix
This runs health checks and auto-fixes common issues (permissions, config, missing directories).
Check Logs
Always check logs first:
# Stream live logs
openclaw logs --follow
# Last 100 lines
openclaw logs --tail 100
Node.js Version
OpenClaw requires Node.js 22+. Check your version:
node --version
Skip the Troubleshooting Entirely
Most of these errors come from self-hosting complexity — Docker configuration, reverse proxy setup, port conflicts, token management.
ClawTank handles all of this for you. One click, no terminal, no debugging. Your OpenClaw instance is pre-configured and ready in under 1 minute.
