How-To

VPN Keeps Disconnecting on Android? 8 Fixes That Work

By CarrotVPN Team··7 min read

Your VPN connects fine, then drops after a few minutes. You reconnect, it drops again. Or it holds for hours on WiFi but disconnects constantly on mobile data. This is one of the most common VPN complaints on Android — and it's almost always caused by Android's aggressive power management, network switching behavior, or a settings conflict. Here are the 8 most effective fixes, ordered from most to least common cause.

Why Android VPNs Keep Dropping

Android is designed to aggressively manage battery life and background processes. This is great for extending battery but creates a fundamental tension with VPN apps, which need to run continuously as background services. The most common disconnection causes are:

  • Battery optimization killing the VPN app — Android's battery saver terminates background apps it considers inactive; VPN processes are frequent targets
  • Network switching — moving between WiFi and mobile data, or between different WiFi networks, can reset the VPN tunnel unless the app handles it explicitly
  • Power saving mode — device-level power saving modes reduce background processing, including VPN keepalive packets that maintain the tunnel
  • Doze mode — Android's Doze mode restricts background network activity during screen-off periods, which can interrupt VPN keepalives
  • Background data restrictions — Android lets you restrict background data per-app; if applied to the VPN app, it will disconnect when the screen turns off
  • Always-on VPN not enabled — without Always-on VPN configured in system settings, Android doesn't treat the VPN as a persistent system service

8 Fixes: Step by Step

Fix 1 — Most Common
Disable Battery Optimization for the VPN App

Go to Settings → Apps → CarrotVPN → Battery (exact path varies by manufacturer) and set it to Unrestricted or Don't optimize. On Samsung devices, look for "Allow background activity." On Xiaomi/MIUI, disable "Battery saver" for the app and enable "Autostart." This is the fix for the majority of random disconnection issues.

Fix 2
Enable Always-On VPN in System Settings

Go to Settings → Network & Internet → VPN (or Settings → Connections → More connection settings → VPN on Samsung). Tap the gear icon next to CarrotVPN and enable Always-on VPN. This tells Android to treat the VPN as a system-level persistent service, preventing the OS from terminating it.

Fix 3
Turn Off Power Saving Mode

Device-level power saving modes (Battery Saver on stock Android, Power Saving Mode on Samsung, Ultra Battery Saver on various brands) restrict background processes in ways that interrupt VPN keepalives. Turn off any active power saving mode while you need the VPN to stay connected, or add the VPN app to any "exceptions" list your device offers.

Fix 4
Allow Unrestricted Background Data

Go to Settings → Apps → CarrotVPN → Data usage and ensure Background data is enabled (not restricted). Some Android skins also have a global "Data Saver" mode in network settings — either disable it or whitelist the VPN app as an exception. Without background data access, Android will cut the VPN tunnel when your screen turns off.

Fix 5
Prevent Doze Mode from Affecting the VPN

Android's Doze mode restricts network access for background apps when the device is idle with the screen off. To exclude the VPN app from Doze: go to Settings → Battery → Battery optimization, find CarrotVPN, and select Not optimized. On Android 12+ you may need to use All apps view to find it.

Fix 6
Handle Network Switching Manually

If disconnections happen specifically when switching from WiFi to mobile data (or vice versa), reconnect the VPN manually after the network change while testing. WireGuard® handles network transitions faster than older protocols, but a brief manual reconnect after switching ensures a clean tunnel. Long-term, Always-on VPN (Fix 2) should handle this automatically.

Fix 7
Check Manufacturer-Specific Background Process Killers

Some Android manufacturers add aggressive process killers beyond standard Android battery optimization. Common culprits: Xiaomi/MIUI (Security app → Autostart → enable CarrotVPN), Huawei/EMUI (Phone Manager → App launch → manual management for CarrotVPN), OnePlus (Battery → Battery optimization), Oppo/ColorOS (Battery → Sleep standby optimization → exclude CarrotVPN). Search for your device brand + "whitelist background app" for exact steps.

Fix 8
Reinstall the VPN App

If all else fails, uninstall CarrotVPN completely, restart your device, then reinstall fresh from the Google Play Store. Corrupted install data or cached state can sometimes cause persistent disconnection issues that disappear after a clean reinstall. After reinstalling, apply Fixes 1–3 before reconnecting.

Prevention: Keeping VPN Stable Long-Term

Once you've fixed the disconnection issue, these settings keep CarrotVPN stable permanently:

  • Always-on VPN enabled in system VPN settings — treats the VPN as a system service, not a killable app
  • Battery optimization disabled for CarrotVPN — prevents the battery manager from terminating it
  • Background data unrestricted for CarrotVPN — maintains the tunnel when the screen is off
  • WireGuard® protocol (CarrotVPN's default) — reconnects faster than any other VPN protocol after interruptions, minimizing any drops you do experience

If you're still seeing disconnections after all 8 fixes, the issue may be network-level — the specific cellular tower or WiFi router your device is connected to may be dropping the underlying connection itself. Test on a different network to confirm.

A VPN That Stays Connected

CarrotVPN's WireGuard® protocol reconnects faster than any other VPN after interruptions — free, no account needed.

Download CarrotVPN Free

Related Articles