X (Twitter) link formats
Each row shows the normal web link, the iPhone URL scheme and the Android form. Replace the capitalised placeholders with real values.
| Content | Web link | iPhone (URL scheme) | Android |
|---|---|---|---|
| Profile | https://x.com/USERNAME | twitter://user?screen_name=USERNAME | intent://twitter.com/USERNAME#Intent;package=com.twitter.android;scheme=https;end |
| Post | https://x.com/USERNAME/status/POST_ID | twitter://status?id=POST_ID | intent://twitter.com/USERNAME/status/POST_ID#Intent;package=com.twitter.android;scheme=https;end |
The app kept the twitter:// scheme after the rename to X.
Most apps do not officially document their URL schemes. The formats below are the ones DSLink uses in production today, but an app update can change them — test on a real device before hard-coding a scheme into your own app or site.
Using the scheme on a website
A URL scheme can go straight into a link. On iPhone, Safari asks the visitor to confirm before switching apps:
<a href="twitter://user?screen_name=USERNAME">Open in X (Twitter)</a>
On Android you can add a web fallback to the intent itself. If the app is missing, Chrome opens the fallback URL instead of failing:
intent://twitter.com/USERNAME#Intent;package=com.twitter.android;scheme=https;S.browser_fallback_url=https%3A%2F%2Fx.com%2FUSERNAME;end
Two limits apply everywhere. If the app is not installed, a bare scheme does nothing useful — iOS shows an error. And built-in browsers inside apps such as Instagram, TikTok or X often block or ignore custom schemes, which is exactly where most links are tapped.
The no-code alternative: a smart link
A DSLink smart link wraps all of this in one short URL. On a phone it tries the right app format for the device, falls back to the X (Twitter) web page if the app is missing, and sends desktop visitors straight to the website. You share one link everywhere and get click statistics on top.
Frequently asked questions
Does the twitter:// scheme still work after the rename to X?
Yes. The X app still registers twitter://, so twitter://user?screen_name=NAME opens a profile.
How do I open a specific post in the X app?
Use twitter://status?id=POST_ID with the numeric ID from the post URL.
What happens if the X (Twitter) app is not installed?
A bare URL scheme fails: iOS shows an error and nothing opens. Always pair it with a web fallback — on Android with S.browser_fallback_url in the intent, or use a DSLink smart link, which falls back to the web page automatically.