Tutorial / 03 Add a subscription or node

Getting started

Add a subscription or node

You supply servers you already have. The app does not include a proxy service.

A node is the server your traffic reaches after it leaves the device. It can only come from a service you run yourself, or from a subscription you already obtained. This site does not sell, broker, or recommend any proxy service.

A subscription is a node list that can update. A manual node is a single server you enter yourself. You can keep both.

Add from a subscription URL

  1. Copy the full subscription URL. Keep the scheme, and do not leave extra spaces or line breaks.
  2. Open Shadowrocket and go to the configuration list.
  3. If you just copied a link, use Add from Clipboard. When the app recognizes it, a configuration is created.
  4. You can also choose Add Subscription, paste the URL into the address field, and give the configuration a name you will recognize.
  5. Save, then tap Update. After it succeeds, server entries should appear on the Home screen or in the node list.

If an update fails, check in this order: whether the URL is complete, whether it has expired, and whether the current network can reach that URL (try Wi-Fi and cellular). If all three fail, the problem is usually the subscription source, not a broken client.

Scan a QR code

If the provider gave you a QR code instead of text, use scan-to-add on the configuration page. Only scan a code on your own screen or on paper. Scanning an unknown image from a chat or forum hands your egress to someone you do not know.

Add a single server manually

If you have one server and no subscription, use Add Server or Manual Add. Fields must match what the provider gave you. Do not guess.

Field Notes
Type / protocol Must match the server. The usual result of the wrong protocol is that you can save the entry but cannot connect.
Address A domain or IP. Do not put the port in this field, and do not add extra spaces.
Port A number in its own field.
Password / UUID / user The label changes by protocol; all of them are credentials. One wrong character will fail the handshake.
Encryption, transport, obfuscation If the server requires these, copy them from the documentation field by field. Leaving them blank or changing them looks like “added successfully, connection failed.”
Remark For your eyes only. It does not affect the connection.

Start with a few nodes whose source you can confirm. Importing many manual entries from different sources makes it hard to tell which one failed.

Import from a file

Some people export a configuration file from an old device or a computer. When you add from a file or iCloud Drive on the configuration page, first tell Add apart from Replace. Replace can overwrite the entire local configuration, including rules you edited later. If you are unsure, back up first.

Subscriptions and manual nodes together

You can keep one subscription and several manual nodes at the same time. Updating a subscription usually does not delete manual entries. Multiple subscriptions can coexist, but more sources mean more duplicate nodes and rule conflicts. If what you have is enough, do not stack extra lists.

A successful update means entries appear in the node list, not merely that you see Saved. If the update succeeds and the list is empty, the source probably returned no nodes. Ask the provider; do not reinstall the app.

Do not import a subscription or configuration file from someone you do not know. If they change the nodes later, they change your egress. Do not post a paid subscription in a group chat or as a public screenshot.

Once nodes appear, connect and test latency. See Connect and test latency.