Seeing Shadowrocket in the Battery Usage list doesn’t automatically mean you should turn off On Demand. First, distinguish battery attribution from connection duration and active speed tests. Then compare both settings under the same network conditions. This guide covers what to check, how to test, and how to choose based on your usage.
Understand iOS battery usage before deciding what’s unusual
Shadowrocket uses a system VPN connection to handle traffic. On your iPhone, go to Settings → Battery and select Shadowrocket to see usage and foreground and background activity for the selected period. These figures show its share of battery use during that period, not a direct measurement of how much power the app alone consumed. If other apps were barely used, Shadowrocket’s share may look high. Check the selected period, actual battery loss, and background activity before drawing conclusions.
While a connection is active, the system network stack, wireless connection, the app itself, and other apps transferring data may all contribute to battery use. Activity attributed to Shadowrocket on the Battery screen doesn’t mean all of that drain came from rule matching. Conversely, a small percentage doesn’t rule out extra wakeups caused by frequent network changes. The goal is to find out what makes battery drain faster—not just lower one percentage in the list.
Keep screen time, video playback, system updates, and switches between Wi-Fi and cellular separate in your notes. Activity shortly after importing a configuration, updating a subscription, or running repeated speed tests isn’t representative of typical standby. Battery statistics also cover an earlier period, so checking them immediately after changing a setting won’t show the effect of the new setup.
What persistent connections and On Demand actually do
After you connect manually from Home, the VPN session can remain active as long as the system allows it and the connection isn’t interrupted. Even with no requests to route, staying connected doesn’t mean the device has no network activity at all. Still, an active connection alone doesn’t prove it’s the main cause of battery drain. Network quality, traffic volume, and background requests from other apps matter too.
Settings → On Demand lets you configure when a connection should be established based on network conditions. It controls when the app tries to connect; it doesn’t wake the app for each request and disconnect as soon as it’s handled. After enabling it, check that the rules match the Wi-Fi or cellular networks you use and confirm whether the connection stays active once established. Conditions that are too broad can result in a connection that’s effectively always on; conditions that are too narrow may not trigger when you need a connection.
Another setting that’s easy to confuse with On Demand is Global Routing on Home. Config routes requests according to configuration rules; Proxy and Direct select the corresponding global routing mode; Scene relates to scene settings. These options control how traffic is routed, not what triggers a connection through On Demand. When troubleshooting, don’t change Global Routing, the configuration, and On Demand at the same time, or you won’t know which change made a difference.
Bottom line: On Demand isn’t an automatic battery-saving switch
Keep On Demand enabled only if its conditions actually reduce unnecessary connection time without causing repeated connection attempts. Compare results in the same usage scenario to decide whether it’s right for you.
Compare the same scenario instead of relying on one percentage
Choose a repeatable everyday scenario—for example, use the same Wi-Fi and similar screen time, without running speed tests. In the first round, keep your current connection setup and note the starting and ending battery levels, activity in Settings → Battery, and connection status on Home. In the second round, change only Settings → On Demand and keep the test duration, network, and usage as close as possible to the first round. If a system update, extended video playback, or significant signal fluctuation occurs, mark that round as not comparable rather than forcing a conclusion.
- On Home, note the active configuration, Global Routing setting, and whether you’re connected. Keep these unchanged during the comparison.
- Go to Settings → On Demand and check the switch and its conditions. Make sure the conditions actually cover the network you plan to test; turning on the switch doesn’t guarantee a connection will be triggered.
- At the end of each round, check battery loss, activity in Settings → Battery, and whether the connection behaved as expected. Don’t compare the app’s percentage alone.
- If the results vary, repeat the test at a similar time on another day. Focus on patterns that recur and correspond to connection behavior.
Test standby and normal browsing separately. A standby test shows whether the connection remains active when you’re not using the device; a browsing test can reveal whether frequent reconnects affect everyday use. If you’re on cellular, also watch for changes when the signal is weak. Battery performance on stable Wi-Fi and in a weak-signal area isn’t directly comparable.
Rule out speed tests, subscription updates, and rule issues
Running repeated latency tests for existing servers from Home or repeatedly refreshing a subscription you already have generates active network requests. These actions may appear in Battery activity, but they don’t represent normal standby. Before testing On Demand, stop bulk speed tests and repeated refreshes. Check subscription links and connection parameters with your own service provider; Shadowrocket’s one-time purchase does not include network service.
Rules under Config determine where requests go. For example, DOMAIN-SUFFIX,example.com,DIRECT routes requests matching the example domain through Direct, while FINAL,PROXY routes requests that didn’t match earlier rules through Proxy. IP-CIDR and GEOIP are also rule conditions. Rule matching, DNS lookups, and network requests affect traffic routing, but switching Global Routing from Config to Direct isn’t a reliable battery test: it changes what the connection is used for, so the results can’t isolate the effect of On Demand.
Error: No Internet Connection
Cause and fix: If this system network alert appears after changing On Demand conditions, don’t assume it’s caused by battery drain or the rules themselves. First, confirm that your Wi-Fi or cellular connection is working, then check the connection status on Home and the trigger conditions in Settings → On Demand. If needed, restore the previous settings and test one change at a time.
If increased battery usage happens just after a subscription update, distinguish the update process itself from any changes to connection parameters afterward. Keep your existing records and check when the update finished, whether the connection remains stable, and whether it disconnects repeatedly. Don’t skip troubleshooting connection failures just to lower the usage shown in the list; repeated failures and retries can skew the comparison.
Choose settings for your usage and keep a way to revert
If you use a connection only on certain networks and want it to connect automatically when conditions are met, you can test On Demand. If you need an established connection to stay active for long periods, first check whether On Demand conditions cause unexpected disconnections or repeated reconnects. Choose based on whether connection behavior meets your needs and whether battery changes are consistent in the same scenario—not on the setting’s name.
| Usage scenario | What to check first | How to evaluate |
|---|---|---|
| Connect only on specific networks | Network conditions in Settings → On Demand | Connects when you join the target network and behaves as expected when you leave |
| Keep the connection active | Connection status and disconnection history on Home | Stable connection with no repeated reconnects caused by On Demand conditions |
| Open the app occasionally to run speed tests | Speed test timing and Battery activity period | Compare active tests separately from standby activity |
| Frequent switches between Wi-Fi and cellular | Connection status after each network change | Confirm triggers work as expected before comparing battery use |
If enabling On Demand causes unexpected connection behavior or repeated reconnects during network changes, restore the last working settings first, then review the trigger conditions. Don’t change servers, rules, and DNS all at once. Conversely, if turning off On Demand doesn’t produce a consistent change in battery use, don’t assume it caused all the battery usage you saw earlier. Keep notes on the conditions used for each comparison so you can reassess when your network environment changes.
Check App Store details and setup steps
If you haven’t verified the app’s source, start with the authenticity check. To review the basics of Home, Config, and Settings, continue with the getting started guide.
Open the authenticity check View the guide