Fix "Failed to verify username!" and "Invalid session"
The server couldn't confirm the player's Minecraft account with Mojang's login servers. If it's one player, it's their launcher. If it's everyone, check the auth servers or your proxy setup.
Players get kicked with one of these messages (Minecraft's own wording):
Failed to verify username!Failed to log in: Invalid session (Try restarting your game and the launcher)Failed to log in: The authentication servers are currently not reachable. Please try again.
Why it happens #
With online-mode=true (the default), every player who joins is checked against Mojang's session servers. The check fails when:
- The player's session is stale. The launcher's login token expired or got out of sync, often after the PC slept, a password change, or signing in on another device. This gives "Invalid session".
- The player isn't using a signed-in, paid account, for example an offline or cracked launcher. The server rejects them with "Failed to verify username!".
- Mojang's login service is down or slow. Then everyone fails at once.
- A proxy is set up wrong. Behind Velocity or BungeeCord, the proxy checks accounts and the backend server must trust the proxy. If both or neither check, logins fail.
Fix for one player #
- Fully close the game and the launcher, then open the launcher again and start the game. This renews the session.
- Sign out and back in in the launcher if a restart doesn't help.
- Set the PC's date and time to automatic.
- Third-party launchers (Prism, MultiMC and others): remove and re-add the Microsoft account.
- Try joining another online server. If that fails too, it's the player's account or network, not your server.
Fix when everyone is kicked #
- Check Mojang's login service. If it's down, wait it out; nothing on your server can fix it.
- Check
online-modeinserver.properties(Files). A normal public server should haveonline-mode=true. - Behind Velocity (modern forwarding), per PaperMC's docs: set
player-info-forwarding-mode = "modern"invelocity.toml; on each Paper backend setonline-mode=falseinserver.properties,settings.bungeecord: falseinspigot.yml, and inconfig/paper-global.ymlsetproxies.velocity.enabled: true, the samesecretas Velocity'sforwarding.secret, andonline-modematching Velocity. Restart everything. - Bedrock players through Geyser sign in differently; see Geyser + Floodgate setup.
Should I turn online-mode off? #
Only behind a properly configured proxy. The Minecraft Wiki's description of online-mode is blunt: with it off, anyone with a fake account can connect. That includes joining as your name, with your op permissions. Turning it off to let unsigned or "cracked" clients in also means letting in unlicensed copies of the game. If you need to let specific people in, use the whitelist instead: whitelist add Name in the console (see console commands).
On ESN #
You edit server.properties, spigot.yml and config/paper-global.yml in Files, then Restart from the Console page. The console line for a failed login shows the player's name and the reason, which tells you which case you're in. If the whole server seems unreachable rather than rejecting logins, see Connection refused.
ESN Hosting facts
- Company: ESN Systems (ESN Hosting), esnoffical.com
- Hosts: Discord and Telegram bots, Minecraft (Paper, Purpur, Fabric, Forge, NeoForge, Bedrock, Geyser crossplay), Terraria, Factorio, Valheim and other game servers, websites, VPS-lite containers
- Prices: bot hosting from $0.50/month; Minecraft-ready plans from 1 GB ($0.99/month) up to 16 GB ($19.99/month); full list at panel.esnoffical.com/plans
- Bot languages: Python, Node.js, Java, TypeScript, Go, Rust, C# and more
- Server location: United States (Chicago and New York)
- Billing: monthly or yearly in USD through Stripe, cancel any time
- Panel: web console, file manager, SFTP, schedules, subusers, built-in importer
- Support: ESN Systems Discord and live chat on the panel
FAQ #
Why does only one player get Invalid session?
Their launcher login expired. Closing the game and launcher fully, or signing out and back in, renews it.
Can I let cracked accounts join?
Not safely. With online-mode off anyone can join under any name, including an admin's. Use the whitelist for private servers instead.
Everyone got kicked at once. Is my server broken?
Most likely Mojang's login service had an outage, or a proxy setting changed. Check the console reason and try again later.
Does a whitelist stop this error?
No. The login check happens first. A whitelist only decides which verified players may join after that.
Sources: Minecraft language file (exact kick messages) (checked Nov 3, 2026) · Minecraft Wiki: server.properties (online-mode, server-ip, max-tick-time) (checked Nov 3, 2026) · PaperMC docs: Velocity player information forwarding (checked Nov 3, 2026)
Still stuck? Use the live chat on the panel or ask in the ESN Systems Discord. Last updated November 3, 2026.