When to use a subscription vs adding a server by hand

Whether you have a subscription URL, a QR code, or a host and port decides which Type to pick. The wrong Type makes the form fields mismatch.

Shadowrocket does not ship with working nodes. After you open it, SERVER on Home often shows only Add Server. You must enter material from your provider before anything is selectable. Common material is a subscription URL, a single-node QR code, or host, port, and credentials written out. Each kind maps to a different Type. Do not mix them.

This site does not provide subscriptions or nodes. The notes below only cover which write method to use in the app, and what you see when you pick the wrong one.

Look at what you have first

From + on Home or Add Server, the first field is Type. Type decides which fields appear next. Judge the material, then change Type. Do not pick a protocol from memory and then try to fill it in.

  • If the whole string is a URL starting with http:// or https://, it is usually a subscription. Choose Subscribe.
  • A QR code may be a subscription or a single node. Scan it if you can. After the scan, see whether the list gained a group or only one row.
  • If their docs list protocol, address, port, and a password or UUID separately, that is manual entry. Set Type to the protocol they wrote—Shadowsocks, Vmess, or Trojan—not Subscribe.

Pasting a subscription URL into a Shadowsocks address field, or a hostname into Subscribe’s URL, can still look like it saved. The row will not work as intended. The first never fetches a node list. The second treats the hostname as a subscription request and usually fails or returns an empty list.

Subscribe writes many nodes at once

A subscription tells the app to fetch a node list from that URL and show it on Home. Pull down on that subscription on Home to refresh the list. A refresh replaces the list contents. It does not automatically change the node you already selected. If the old node disappears after an update, select a node that is still there, then turn the switch on.

The most common paste failure is a truncated link. Chat apps, mail, or web copy can insert spaces, line breaks, or only the first half. After you paste into URL, check that the start is complete, there is no break in the middle, and there are no extra characters at the end. Do not add http yourself or strip query parameters. Providers often use those parameters to identify you.

A subscription that writes nodes does not mean those nodes work now. Expiry, rate limits, or a remote outage can leave a normal-looking list that still fails to connect. Ask your provider about the subscription status. Do not change Type or reinstall the app.

Manual entry adds only the row you are editing

Use manual entry when they gave you one node, or when you need a single test node. Type must match their docs. If the protocol is wrong, later fields such as Method, UUID, and Plugin will not line up: some disappear, others become required and you have no value.

Method and Plugin must follow their docs. Do not guess a common cipher from the web, and do not pick a Plugin option because it looks advanced. After a wrong guess the node may still appear on Home and the switch may turn on, but Connectivity Test fails or pages will not load.

Remark only changes the name in the list. It does not affect the connection. Copy the address and port as given. Trying both a domain and an IP only helps if they documented both. Changing the port to 443 or 80 “to see if it works” usually does not help.

Do not import the same QR code twice

Scan at the top left of Home is for a subscription code or a node code. The manual form also has Scan QR Code, which fills the current form from the code. Scanning the same material twice can duplicate rows. Duplicates may not error, but they make it easy to pull down the wrong subscription later.

If a scan cannot be recognized, check that the code is not cropped, glare-covered, or scaled too far. If it still fails, ask your provider for the URL or parameters as text and paste them. Do not copy a “looks like a subscription” string from an unknown image-recognition result.

Do not change the mode right after you write it in

A successful import only means the list has rows. Next, select one on Home, turn the switch on, and check latency with Connectivity Test. That step is in Connect. If the test fails, confirm Type matches the material, then check whether the subscription expired. Global Routing set to Direct can also look like a failed import. That belongs in another article.

For field locations and screenshots, see Import config. Rule files in the Config tab are not the same as this node list: a subscription does not become rules, and a manual node does not create a routing policy.