How to Set Up a VLESS Subscription Link in Happ, Hiddify, V2Box or v2rayNG
One link, imported once, holds every server and updates itself. Here's how to add it in each app, what's inside it, and what to do when it doesn't connect.
On this page
A VLESS subscription link is one URL that loads every server from your VPN provider into an app like Happ, Hiddify, V2Box, Streisand or v2rayNG, and keeps them updated. To set it up, copy the link (or scan its QR code), add it in the app as a subscription, and connect. You don't type in any keys, ports or server settings. The app refreshes the server list on its own schedule, shows your data use and expiry date, and can pick the fastest server for you.
Key takeaways
- One link holds every server. Inside is a list of
vless://links, each with the server, your ID and the REALITY settings, all filled in for you. - Five free apps work with VLESS + REALITY: Happ (iOS, macOS, Android, Windows, Linux, Apple TV), V2Box (iOS, macOS, Android), Streisand (iOS and macOS), Hiddify (all platforms, open source) and v2rayNG (Android, open source).
- The link updates itself. Providers can set how often the app refreshes it, and show your usage and expiry through standard headers.
- Treat the link like a password. Anyone who has it can use your account. If it leaks, ask your provider to rotate it.
- Most "won't connect" problems come from a partial copy of the link, an outdated app, or an app built on an older engine that lacks the post-quantum handshake.
What is a subscription link?
When you sign up with a VLESS provider, you get one HTTPS link instead of a config file. Opening it in an app does three things:
- Downloads the server list. The response is a base64-encoded list of share links, one per server, such as:
vless://<your-id>@<server>:443?type=tcp&security=reality&pbk=<public-key>&sid=<short-id>&sni=<borrowed-site>&fp=chrome&flow=xtls-rprx-vision#Tokyo - Reads the provider's headers. Common ones are
subscription-userinfo(upload, download, total data and expiry),profile-update-interval(refresh interval in hours), andprofile-title(the name shown in the app). - Keeps it current. When servers are added, moved or retired, the app picks up the change at its next refresh, with nothing for you to do.
Every parameter in that vless:// link has a job: pbk and sid prove you're a real user to the REALITY server, sni names the real website the server borrows, fp=chrome makes the handshake look like Chrome's, and flow=xtls-rprx-vision turns on Vision. If you want to know what those do, read VLESS + REALITY explained.
Which app should you use?
| App | Platforms | Open source | Notes |
|---|---|---|---|
| Happ | iOS, iPadOS, macOS, Android, Android TV, Apple TV, Windows, Linux | No | Xray-based; supports provider headers such as auto-update, usage display and lowest-delay connect |
| V2Box | iOS, iPadOS, macOS, visionOS, Android | No | Xray-based; free version shows ads |
| Streisand | iOS, iPadOS, macOS (Apple silicon), visionOS | No | No Android or Windows version |
| Hiddify | Android, iOS, Windows, macOS, Linux | Yes | Imports many subscription formats; use a recent version |
| v2rayNG | Android | Yes (GPL-3.0) | Xray-based; the classic Android client |
Our pick is Happ, because it runs on every major platform and understands the most provider settings: it can ping every server when it opens and connect to the one with the lowest delay.
Download apps only from their official sources: Happ from happ.su or the App Store, Hiddify and v2rayNG from their GitHub releases or official stores, V2Box and Streisand from the App Store.
How to add a subscription link, app by app
Menu names change between versions, but the flow is the same everywhere: copy, add from clipboard, update, connect.
Happ
- Install Happ for your device.
- Copy your subscription link, or open it on the same device: many providers' pages have an Add to Happ button that does this step for you.
- In Happ, tap + and add from the clipboard, or scan the QR code from another screen.
- The server list appears. Tap connect. If the provider has turned it on, Happ picks the lowest-delay server automatically.
- On iOS and Android, allow the VPN permission prompt the first time.
V2Box (iPhone, iPad, Mac, Android)
- Install V2Box from the App Store or Google Play.
- Copy the subscription link.
- Open the configs or subscriptions tab, tap +, and add a subscription from the clipboard (or scan the QR code).
- Update the subscription so every server loads, select one, and connect.
Streisand (iPhone, iPad, Mac)
- Install Streisand from the App Store.
- Copy the link, tap + in Streisand, and import from the clipboard, or scan the QR code.
- Select a server and switch the connection on. Allow the VPN configuration prompt.
Hiddify (Android, iOS, Windows, macOS, Linux)
- Install the latest Hiddify release.
- Copy the link. In Hiddify, tap New profile (or +) and add from the clipboard.
- Hiddify downloads the profile. Tap the connect button. Use a recent version: older builds can't complete the post-quantum handshake.
v2rayNG (Android)
- Install v2rayNG from its official GitHub releases.
- Open the menu, go to the subscription settings, tap +, paste the link as the URL, give it a name and save.
- Back on the main screen, run Update subscription. Every server appears.
- Select a server, tap the connect button and allow the VPN request.
Troubleshooting: when it won't import or connect
| Problem | Likely cause | Fix |
|---|---|---|
| "Subscription data was not received" or an empty list | The link was copied incompletely, or the network blocks the subscription address | Copy the full link again; try on mobile data; update the app |
| Servers import but none connect | The app's engine lacks the post-quantum key share (upstream sing-box 1.14 and older) | Use Happ, V2Box, Streisand, v2rayNG or the latest Hiddify |
| Connected, but nothing loads | The VPN permission wasn't granted, or routing/DNS settings were changed | Allow the VPN permission; reset the app's routing to default; reconnect |
| Worked yesterday, fails today | The subscription expired, ran out of data, or was rotated | Check usage and expiry in the app; get the current link from your account |
| Works at home, fails on hotel Wi-Fi | You haven't completed the Wi-Fi login page | Sign in with the VPN off, then reconnect. See VPN blocked on Wi-Fi |
| Slow on every server | A distant server, or the Wi-Fi itself | Let the app pick the lowest delay; compare with the VPN off. See why your VPN is slow |
About the engine issue: since Xray v26.9.9, REALITY servers can require the hybrid post-quantum key exchange X25519MLKEM768 in the handshake. Apps built on upstream sing-box 1.14 or earlier don't send it, so they fail even though the link imports fine.
Keep your subscription link safe
- Don't post it anywhere. It's your login. Anyone with it can use your data and devices.
- Use the QR code to move it between your own devices, not a group chat.
- If it leaks, rotate it. A good provider can issue a new link that cuts off the old one at once.
- Be wary of free links. Many "free VLESS subscription" lists are run by strangers who can see your traffic's metadata and may log it.
How it works with SleekDart
Your SleekDart account page shows Add to Happ, Copy link and a QR code. Opening the link in a browser shows the same page, with one-tap buttons for Happ, Hiddify, V2Box and Streisand.
- One link holds every city: Tokyo, New York, Los Angeles, London and Frankfurt. New cities appear in the app on their own.
- Lowest delay, automatically. In Happ, the app pings every city when it opens and connects to the fastest one.
- Usage and expiry are shown in the app, from the standard subscription headers.
- Changes arrive within seconds. A new or removed user reaches every server within 3.5–10 seconds, and rotating a leaked link kills the old one immediately.
Frequently asked questions
How do I add a subscription link in Happ?
Copy the link, open Happ, tap the plus button and add from the clipboard, or scan the link's QR code. Many providers also have an "Add to Happ" button that opens the app with the link already filled in. Then connect, and allow the VPN permission the first time.
How do I add a subscription in v2rayNG?
Open the menu, go to subscription settings, tap plus, paste the link as the URL and save. Then run "Update subscription" from the main screen so every server loads. Select one and tap connect. Install v2rayNG from its official GitHub releases.
Hiddify vs Happ: which is better?
Both work with VLESS + REALITY. Hiddify is open source and runs on every desktop and mobile platform; use a recent version. Happ is closed source, but it supports more provider settings, such as auto-updates, usage display and connecting to the lowest-delay server, and it also runs on Apple TV and Android TV. We recommend Happ for most people.
Is there a Streisand app for Android?
No. Streisand is available only on iPhone, iPad, Apple-silicon Macs and Vision Pro. On Android, use Happ, Hiddify, V2Box or v2rayNG with the same subscription link.
What's inside a VLESS subscription link?
The link returns a base64-encoded list of vless:// share links, one per server. Each holds the server address, your user ID and the REALITY settings: public key, short ID, borrowed site, Chrome fingerprint and Vision flow. Headers add your usage, expiry, refresh interval and profile name.
Sources
- Happ developer docs: subscription headers and app management
- v2rayNG on GitHub and its subscription parser
- Hiddify on GitHub
- V2Box on the App Store
- Streisand on the App Store
- Happ on the App Store
- VLESS share link format proposal
- REALITY ML-KEM enforcement commit (September 2026)
- SleekDart client and sync tests, 9–12 November 2026