On iOS, Shadowrocket imports in this order: genuine install → allow the VPN payload → add Subscribe → Update → flip the switch. If the list is empty, inspect the URL before you rewrite rules or enable HTTPS decryption.

This is a rule client, not an account-and-one-tap VPN. You bring the subscription. Channels: download page. Longer troubleshooting: guides, FAQ.

Three import paths

MethodUse whenDo not
Subscribe URLThe provider rotates hostsPaste an HTML page as the URL
QRSomeone shows you a screenScan a chat-compressed screenshot
ManualYou own one stable protocol lineSplit a subscribe URL into “hostname”

Messengers inject spaces and shorteners. Expand redirects in Notes before pasting. Apple’s VPN UI notes live in iPhone VPN settings; labels follow your language.

The permission sheet is mandatory

The first switch flip asks iOS to add a VPN configuration. Deny it and General → VPN & Device Management stays empty. Face ID here is the OS.

Success is a populated list, a measurable latency, and the status-bar VPN icon—plus a real site in Safari. Latency caveats: URL Test. Cross-device: porting. Update failures: grey nodes.

Field questions tied to this guide

  • App Store search finds nothing. Some storefronts dropped it. Use a region Apple ID that already owns the app, as the download page describes. No enterprise-signed copies.
  • Subscribe vs a typed node? Subscribe refreshes a list. Manual SS/VMess/Trojan is for a line you control.
  • List stays empty after import. Tap Update. Look for spaces or shortened URLs from chat apps. Empty lists are not a rule problem yet.
  • Does buying the app include servers? No. The App Store charge is the client. Nodes are a separate bill.

Change one control, then retest

While working through “Importing a Shadowrocket subscription on iPhone: URL, QR, and a single node”, write the download-page version, mode, protocol, and node name on the first line of a note. After each toggle, run one check only: 1.1.1.1/help or the exact page that failed. Changing Kill Switch, split rules, and nodes together makes the next failure un-debuggable. Get Shadowrocket packages only from the download page; permissions and device limits live in the FAQ and guides.

On office or hotel networks, finish captive portals and clear leftover PAC entries before you decide this article’s failure mode applies. A cellular A/B exposes router DNS and parental filters quickly. Avoid hammering login on a second device during the test so session kickouts are not mistaken for radio drops.

Pin the combination that works—SSID, node, protocol—and reuse it on that network instead of starting from Auto every time. Keeping slug rocket-ios-subscribe-import as your note title makes the write-up searchable later.

When to stop and change layers

After five identical failures, stop. Recheck the documented build, confirm a single tunnel client, ensure Kill Switch was not blocking a portal, and verify the browser is not Direct in a split list. Stopping is how you escape the wrong layer.

When you ask for help, include time, SSID, mode, protocol, node names, and steps already tried. After recovery, verify egress in a clean browser so cache does not fake success, then write the split list or favorites back into your notes before the next reinstall.

Extra pass for “Importing a Shadowrocket subscription on iPhone: URL, QR, and a single node”: retest three minutes on a second network and confirm the download page build. If only one app fails, inspect split membership; if everything fails, inspect permissions and DNS first. One change at a time remains the fastest habit when debugging Shadowrocket.

Extra pass for “Importing a Shadowrocket subscription on iPhone: URL, QR, and a single node”: retest three minutes on a second network and confirm the download page build. If only one app fails, inspect split membership; if everything fails, inspect permissions and DNS first. One change at a time remains the fastest habit when debugging Shadowrocket.

Extra pass for “Importing a Shadowrocket subscription on iPhone: URL, QR, and a single node”: retest three minutes on a second network and confirm the download page build. If only one app fails, inspect split membership; if everything fails, inspect permissions and DNS first. One change at a time remains the fastest habit when debugging Shadowrocket.

Extra pass for “Importing a Shadowrocket subscription on iPhone: URL, QR, and a single node”: retest three minutes on a second network and confirm the download page build. If only one app fails, inspect split membership; if everything fails, inspect permissions and DNS first. One change at a time remains the fastest habit when debugging Shadowrocket.