Shadowrocket Setup Guide: Import a VPN Subscription on iPhone

Set up Shadowrocket on your iPhone with clear steps for adding a subscription URL, refreshing server profiles, choosing a connection, and checking the iOS VPN status.

Adding a subscription to Shadowrocket is a configuration task, not a way to create a VPN account or obtain a service. You need an active subscription URL from a provider, an iPhone with Shadowrocket installed, and a network connection that can reach the subscription server. The names and placement of buttons may vary between app versions, so treat the steps below as a workflow: find subscription management, add the URL, refresh the profile, select a connection, and confirm iOS has established the VPN.

Keep the subscription URL private. It can contain authorization information, and anyone who obtains it may be able to use or update the configuration associated with it. This guide explains how to import and check a profile without asking you to share the URL or change unrelated iPhone network settings.

What You Need Before Importing a Subscription

Shadowrocket is an iOS client. It does not provide an account, a subscription, or a server route by itself. Obtain the configuration from a service you trust, and check that its subscription format and connection protocols are supported by the client version you are using. A subscription may contain several server entries, group definitions, or update instructions; it is not necessarily a single server address.

If you use VPNGF, sign in to the dashboard and follow the current instructions for obtaining a client configuration. The available configuration and import method can depend on the account and service settings. Do not assume that a URL intended for one application will automatically work in Shadowrocket. If the dashboard names a compatible client or provides a specific import format, follow that guidance rather than converting the URL with an untrusted website.

Before opening Shadowrocket, check that the iPhone has a working internet connection and that the App Store account can access the app in its region. App availability, purchase status, and interface labels can vary by region and app version. If the app is unavailable to your Apple Account, avoid unofficial downloads or configuration files from unknown sources; first resolve app access through Apple's supported channels.

90+

Countries covered by VPNGF

150+

VPNGF routes

Unlimited

Simultaneous devices

iOS

Supported platform

These service details describe VPNGF, not a guarantee that every route, protocol, or app version will behave identically on every iPhone. A useful troubleshooting baseline is simple: confirm the subscription is active, use the provider's current instructions, and test with one client at a time.

Protect the Subscription URL

A subscription URL is different from an ordinary website link. Depending on how a provider issues it, the URL can authorize access to server configurations or permit profile updates. Treat it like a password: copy it only from the authenticated dashboard or another provider-approved source, do not post it in a forum, and do not send it in a public support message.

When copying the address, select the complete value. A missing character, extra space, or a line break inserted by a note-taking app can make the request fail. If the URL is displayed behind a copy button, use that control instead of manually selecting text. Do not paste the address into a public URL checker, online converter, or a third-party “subscription parser” to see whether it works.

Subscription links may be renewed, revoked, or replaced by the provider. If you are unsure whether a saved address is current, compare it privately with the current dashboard instructions or ask the provider through its official support channel. Avoid repeatedly sharing the full address when asking for help; describe the error and, if necessary, provide only a redacted screenshot that does not expose the URL, account credentials, or other private configuration details.

Import the Subscription URL in Shadowrocket

The following sequence is intended for the common subscription workflow. Shadowrocket labels and navigation can change between versions, so look for the equivalent control if your screen differs. Do not add a URL as an individual server unless the provider specifically supplied a single-server configuration and instructed you to do so.

  1. Open the provider's dashboard. Sign in and locate the section for subscription information or client setup. Confirm that the subscription is active and that the instructions identify Shadowrocket or a compatible import method. Copy the subscription URL using the dashboard's copy control where available.
  2. Open Shadowrocket on the iPhone. If iOS asks for permission to add VPN configurations, review the request and allow it only when you understand which client is requesting access. This permission lets the app create a VPN configuration on the device; it does not, by itself, mean a connection is active.
  3. Find subscription management. Depending on the current interface, this may appear as a subscription, configuration, or add control. Choose the option for adding a subscription URL, not an option for manually entering a single server unless that is what the provider supplied.
  4. Paste the complete URL. Check the beginning and end of the pasted value for accidental spaces or missing characters. If the app offers a label or remark field, use a neutral name that helps you recognize the profile without putting account secrets in the label.
  5. Save the entry and request an update. Use the app's save, add, or update action. Wait for the request to finish and read any error message. A successful import should make the provider's configuration or server entries available in the relevant list, although the exact presentation varies.
  6. Choose a route for an initial test. Select an entry or group that the provider identifies as appropriate for your use. If there is a group selector, distinguish the group from the individual server entries it controls. Start with one choice and avoid changing several settings at once.
  7. Start the connection and approve the iOS prompt. Tap the app's connect control. If iOS displays a system confirmation to add or enable a VPN configuration, review it and confirm the request initiated by Shadowrocket. Return to the app and wait for its connection state to update.

For broader guidance on evaluating a provider and its route options, see Best VPN for China. The setup decision still depends on the actual configuration supplied for your account: an app name alone does not confirm that a particular subscription format or protocol is supported.

Once the subscription is imported, leave the URL in the app's subscription record rather than copying individual entries into unrelated tools. Keeping the profile together makes later updates easier and reduces the chance of accidentally using an outdated server configuration.

Key point: Add the provider's subscription through subscription management, then refresh it before testing a route. Importing a URL and establishing a VPN connection are separate actions.

Refresh the Profile and Choose a Connection

A subscription import is a saved reference to configuration data; it may not be a permanent snapshot. Use the app's update or refresh action when the provider changes its available entries or when the dashboard tells you to update. If an automatic update option is shown, review what it does and follow the provider's recommendations. Avoid repeatedly refreshing during an unstable network connection, because an incomplete request can leave you unsure whether the displayed profile is current.

After updating, check that the expected entries or groups appear. A profile name can be present even when its server list has not loaded successfully, so look for a clear completion state or a refreshed list. If the app reports a parsing or network error, first confirm the iPhone can reach ordinary websites, then recheck the copied URL and the provider's compatibility instructions. Do not “fix” an import error by changing random protocol fields in an unrelated server entry.

When several choices are listed, select one that matches the task and the provider's guidance. A route suitable for browsing may not be the best choice for every streaming service, work application, or network environment. Names such as country, region, or group can help identify an option, but they do not guarantee a particular site's availability or a specific performance level. If one choice fails, disconnect before trying another so that the connection state remains clear.

Separate profile import checks from active connection checks
Stage What to confirm If it does not work
Subscription added The saved subscription entry is visible in the app Recheck the URL, account status, and import method
Profile refreshed The update completes and expected entries or groups appear Check internet access and provider format guidance
Route selected The intended server or group is selected Choose one supported entry and retest
VPN connected Shadowrocket and iOS both show an active VPN state Disconnect, inspect the error, then reconnect once

Check the Connection and iOS VPN Status

After connecting, check both the status inside Shadowrocket and the iPhone's system-level VPN status. A profile being visible in the app is not proof of an active tunnel. Likewise, an iOS VPN indicator only tells you that a VPN configuration is active; it does not prove that every app is using the intended route or that a particular website is reachable.

Use a low-risk test that makes sense for your setup. Open an app or website that should use the selected route, then check whether it loads as expected. If your configuration uses rules, some destinations may intentionally connect directly. Therefore, an app reaching a local service does not necessarily mean the VPN failed, and a browser test alone does not demonstrate how every other app is routed. Consult the provider's instructions before changing routing modes.

If the connection remains in a connecting state, note the app's error text and whether iOS accepted the VPN permission. Disconnect before retrying. Confirm that the iPhone has internet access, the selected entry still exists after a profile refresh, and another VPN or proxy app is not competing for control. If you recently changed networks, for example from Wi-Fi to cellular, allow the app to reconnect and check the current status rather than relying on an old indicator.

  • ✅ Confirm the subscription is active and its URL came from the provider's authenticated instructions.
  • ✅ Refresh the profile and verify that the expected group or entry is present.
  • ✅ Select one route, connect, and check both Shadowrocket and iOS status.
  • ❌ Do not run multiple VPN clients at once while diagnosing a connection problem.
  • ❌ Do not treat an imported profile, a VPN permission prompt, or a status icon alone as proof that a specific app is using the intended route.

Troubleshoot Common Import and Connection Problems

The subscription update fails

Start with the least disruptive checks. Verify that the iPhone has ordinary internet access, confirm that the subscription is active, and compare the saved address privately with the provider's current instructions. Recopying the URL can resolve a truncated paste or an accidental whitespace character. If the provider has changed the link or import format, use the new instructions rather than repeatedly retrying an obsolete address. A temporary network restriction can also prevent the client from reaching the subscription server, so test again on a network you are permitted to use.

The profile appears but no usable routes do

An entry can be saved even if its contents did not download or could not be interpreted. Refresh the subscription and look for an explicit success message. Check whether the provider expects a particular client format or protocol, and confirm Shadowrocket supports the supplied configuration. Do not edit a generated profile blindly: changing a server name, transport, port, or authentication field can make a valid configuration unusable. If the issue persists, contact the provider with the app version, iOS version, and a description of the error, but redact the subscription URL and credentials.

The connection starts but apps do not behave as expected

First determine whether the issue affects one app or all network access. Disconnect and check that ordinary connectivity returns. Then reconnect and test the same destination again. If only one app is affected, it may use different network behavior or be covered by a routing rule that differs from the browser's rule. Review the provider's client guidance before changing DNS, routing, or protocol settings. On a managed iPhone, workplace or school policies may also control VPN use; do not attempt to bypass those controls.

Keep the subscription up to date through the app's subscription management screen, and remove profiles you no longer use if the provider recommends doing so. If you replace a URL, make sure you know which profile is current before deleting the old one. Preserve privacy when sharing diagnostics: error wording and general app details are usually more useful than an unredacted configuration export.

Use Shadowrocket Safely in Everyday Use

Once the connection works, avoid treating the client as a set-and-forget switch. A subscription can be updated, routes can change, and iOS can re-establish network connections after a change in connectivity. If an app stops working, check the current profile and connection state before rebuilding the setup. Keep the app and iOS updated through their normal distribution channels, and review the provider's current compatibility notes when its setup instructions change.

Pay attention to what a profile is allowed to do. A VPN configuration can affect network traffic beyond a single browser, while rule-based configurations may route different destinations in different ways. Understand the provider's explanation of its profile before enabling options you do not recognize. On public or shared devices, do not leave access credentials visible, and do not export or share a configuration unless you understand what sensitive information it contains.

For VPNGF accounts, the service facts relevant to setup are straightforward: VPNGF supports iOS as well as Windows, macOS, Android, and Linux; simultaneous device use is unlimited; and the published coverage is 90+ countries and 150+ routes. These details do not remove the need to use a compatible client configuration and check the iOS status after connecting. The reliable workflow remains the same: obtain the current URL privately, import it through subscription management, refresh the profile, select a supported route, and verify the connection on the device.

First Month Free