Setting up Shadowrocket on an iPhone involves more than pasting a link. You need to confirm that the app is available in your App Store region, obtain the correct subscription URL, import it into the right section, and approve iOS’s VPN configuration prompt. After that, you still need to select a server and check that traffic is taking the route you expect. This guide walks through each step and explains what to check if the connection does not work.

Shadowrocket is a third-party iOS client, not a VPN service or subscription provider. You need an active subscription with a configuration format the app can read. Menu names and screen layouts can vary between app versions and language settings, so treat the wording below as a guide to the relevant controls rather than an exact match for every screen.

Check app availability and prepare your subscription

Before changing settings, make sure you can install and open Shadowrocket from the Apple App Store associated with your device. App availability can vary by storefront and region. Search the App Store directly and check the app’s publisher and listing details; do not rely on an unofficial download page or a profile from an unknown source. If the app is unavailable in your storefront, resolve that availability issue through Apple’s supported account options before proceeding.

Next, make sure your VPN account provides a subscription link intended for a compatible third-party client. A subscription URL is not the same as a website address or a login password. It usually contains information that allows a client to retrieve configuration details, so treat it like a credential: do not post it in a public chat, include it in a screenshot, or send it to someone who does not need access. If you think it has been exposed, check the provider’s account settings for a way to renew or replace it.

Some services offer a dedicated app as well as support for compatible clients. The dedicated app may handle account authentication and configuration automatically, while a third-party client generally requires you to import a subscription yourself. If you are unsure whether your subscription includes a compatible configuration, check the provider’s instructions rather than guessing a protocol, address, or port.

iOS

Supported platform

120+

Countries covered

220+

Routes available

VPN61 supports iOS, but the precise subscription format and the client used to connect are separate details. A service supporting iOS does not mean every third-party client can use every configuration type. Confirm the client instructions for your account before importing anything.

Install Shadowrocket safely

Open the App Store on your iPhone, search for Shadowrocket, and review the listing before downloading. Check that the name and publisher match the app you intended to install. If the listing is not available, avoid websites offering repackaged apps, configuration profiles, or instructions to disable device protections. Those workarounds can put account credentials and device data at risk.

Once installed, open Shadowrocket and review any initial notices in the app. You do not need to add a configuration profile from an unrelated website to import a subscription. The iOS VPN permission request normally appears when the client first attempts to create a VPN configuration or connect. We cover that prompt below; approving it gives the app permission to manage a VPN configuration on your device, not permission to read your account password from another app.

If Shadowrocket is already installed, check whether it has an older configuration that you still need. Removing or replacing an existing entry can affect a setup you use for another service. If in doubt, note which entries belong to which account before changing them. Avoid importing the same subscription repeatedly just because a refresh did not appear to work; first inspect the existing entry and its update status.

Import the subscription into Shadowrocket

Copy the subscription URL from the provider’s account page or setup instructions. Use the copy control where available, then switch to Shadowrocket. Look for the subscription or configuration management screen and use its add control. Depending on the app version and language, the action may be labelled with a plus sign or a term such as “Add.” Choose the option for a subscription URL or remote subscription, rather than entering a single server manually.

Paste the full URL into the address field. If the app provides a name or remark field, use a short label that helps you recognize the account, such as the provider name. A label is for your own reference and does not change the configuration. Before saving, check that the URL was not truncated and does not contain an accidental space at the beginning or end. Do not replace part of it with a guessed server address or edit its query parameters unless the provider’s instructions explicitly require that change.

Save or confirm the entry, then allow the client to retrieve the configuration. A successful import may add one or more server entries to the app. If the list remains empty, check the app’s error message and confirm that your phone has an internet connection. Also verify that you copied the subscription URL, not a browser page URL, and that the subscription is active. A URL copied from an expired page or an account with no available configuration cannot be repaired by changing Shadowrocket’s connection mode.

  • ✅ Copy the complete subscription URL from the provider’s account or setup page.
  • ✅ Add it as a subscription or remote configuration, not as a manually entered server.
  • ✅ Keep the URL private because it may grant access to your configuration.
  • ❌ Do not invent server details or edit the URL to make an error disappear.

For general travel planning and service information alongside this setup, see VPN for China Travel. Keep the import process itself focused on the subscription instructions for your account; a general service page is not a substitute for the private URL or client-specific setup details.

Refresh the subscription and select a server

After importing, refresh the subscription if the app offers a refresh control. Open the subscription entry and use its update or refresh action, or use the app’s documented gesture for the installed version. A refresh asks the client to fetch the latest configuration; it does not necessarily create a new subscription or change your account. If a refresh fails, note the exact error before deleting anything. That message may help distinguish an unreachable URL from an authentication or configuration problem.

When the server list is available, choose an entry based on the task you want to perform and the provider’s descriptions. If entries are grouped by region, start with a location relevant to your destination or application, then test whether the service you need behaves as expected. The nearest displayed location is not automatically the best choice: routing, destination requirements, current network conditions, and the app you are using can all affect the result.

Some clients show labels or icons for protocol, latency, or availability. Treat those as client-side information rather than a promise that a particular site, streaming service, or application will always work. Avoid selecting several servers at once unless the client specifically provides a supported group or fallback feature. For a basic test, choose one server, save the selection if required, and make one connection attempt before changing other settings.

If the subscription contains many entries, use the app’s search or grouping controls where available. A concise label can help you identify a region later, but do not rename entries in a way that makes you confuse one location with another. You can also compare behavior by disconnecting and selecting a different entry, then repeating the same test. Change one variable at a time so you can tell whether a result came from the server choice, the network, or a change in the client’s mode.

Connect and approve the iOS VPN prompt

With a server selected, tap the app’s connect control. The first time Shadowrocket requests a VPN configuration, iOS may display a system prompt asking whether to allow it to add VPN configurations. Read the prompt and confirm that it is being triggered by the app you just opened. If you choose to allow it, iOS may ask you to authenticate with your device passcode, Face ID, or Touch ID. This is a system-level approval step; it is separate from entering your VPN account credentials.

After approval, return to Shadowrocket and check the connection indicator. The exact indicator varies by version, but it should show that the client is connected rather than merely displaying a selected server. You may also see the iOS VPN symbol in the status area, depending on your device and system layout. The symbol alone is not a complete test: it indicates a VPN configuration is active, not that every app is using the route you intended.

If the iOS prompt does not appear, check whether the app already has permission or whether an existing configuration is present under the iPhone’s VPN settings. Do not remove configurations you cannot identify. If a prompt appears while you are not trying to connect, cancel it and investigate before approving. When you no longer use a configuration, remove it only after confirming which app or account created it.

Once connected, open a browser and visit a site you normally use. Check that pages load, then test the specific app or destination you care about. If you want to compare the public-facing address before and after connection, VPN61’s IP lookup page can help you inspect the address visible to a website. Results can vary with routing and network conditions, so use this as a practical check rather than a guarantee about every app’s traffic.

Connection check:Confirm the client says it is connected, then test an actual website or app. A selected server or VPN icon by itself does not prove that the traffic you care about is working.

Troubleshoot common import and connection problems

If Shadowrocket reports that it cannot retrieve the subscription, first check that the iPhone has working internet access without the VPN. Then revisit the provider’s account page and copy the URL again. Confirm you selected the subscription link rather than a sign-in page, and check whether your account instructions mention a particular compatible client or format. If the provider’s page says the subscription has expired or needs to be renewed, resolve that account issue before retrying the import.

If importing succeeds but no server appears, refresh the subscription once and inspect the result. Check for a message explaining whether the response could not be reached or could not be interpreted. Do not assume that changing DNS, selecting a random protocol, or adding a manual server will fix a subscription-format problem. If the service supplies a client guide, follow that guide for Shadowrocket and send support the error text without including the private subscription URL.

If the app connects but websites do not load, disconnect and reconnect once, then check that the selected server is still available in the imported list. Verify that another app or network setting is not competing to manage the device’s VPN connection. On an iPhone, two VPN clients generally cannot independently control the active system VPN tunnel at the same time. Close or disconnect the other client before testing Shadowrocket again.

If only some apps work, consider whether the client is using a routing mode that sends certain traffic directly rather than through the selected server. Rule-based routing and global routing can produce different results. Do not switch modes blindly: read the client’s mode description and the provider’s guidance, then test the affected app again. A browser test can succeed while a different app uses a separate connection method or follows different rules.

When reporting a problem, include the iPhone model only if relevant, the iOS version, the Shadowrocket version, whether the subscription imported, the selected server label, and the exact error text. Never include your account password or full subscription URL in a public post. These details help distinguish an App Store availability issue, a subscription retrieval failure, an iOS permission problem, and a connection or routing issue without exposing access information.

Keep the setup secure and maintainable

Keep Shadowrocket and iOS up to date through their normal update channels, and refresh the subscription when the provider instructs you to do so. If a server disappears after a refresh, avoid restoring an old configuration from an unknown source. The subscription is meant to provide current configuration details; importing unrelated files can create confusion about which account or provider an entry belongs to.

Before travelling or changing networks, confirm that you can open the client, see the subscription, and identify the server you intend to use. Do not wait until an urgent task to discover that the App Store listing is unavailable in your current region or that you no longer have access to the account page where the subscription URL is stored. Keep access details in a secure password manager or another private location, not in an unprotected note or shared screenshot.

Shadowrocket setup is complete when the subscription has been imported, a suitable server is selected, iOS has approved the VPN configuration, and a real connection test succeeds for your intended use. If one of those stages fails, troubleshoot that stage rather than repeatedly reinstalling the app or changing unrelated settings. Keeping the steps separate makes the setup easier to understand and reduces the chance of exposing your subscription details.