Universal Links on Shopify, Webflow, Wix and Squarespace: Which Builders Can Host the AASA File
When your app links open the website, iOS and Android usually couldn’t find two small files on your domain. What each site builder lets you host in October 2026, the subdomain route when yours says no, and a link that needs no file at all.
Open your app from a link without touching your site builder
- Store routing on every plan, Free included
- Deep links that open the app on Pro
- Nothing to upload to your website
Why the link opens your website
A Universal Link is an ordinary https link that iOS hands to your app instead of Safari. Android calls its version an App Link. Before either phone opens a yourbrand.com link in your app, it downloads a file from yourbrand.com that names the app. No readable file, no app: the link opens the website.
On a site builder, that file is usually what’s missing. Your developer did the app side. The website side needs a file at a fixed address, and the builder decides what you can put there.
The address both phones check
iOS checks this URL on each domain your app lists. Android checks assetlinks.json in the same folder.
https://yourbrand.com/.well-known/apple-app-site-association
https://
HTTPS, no redirects
A valid certificate and a direct answer, no 301 or 302.
yourbrand.com
The exact host
Each subdomain serves its own file. www.yourbrand.com is a separate host.
/.well-known/
A fixed folder
The path can’t move. Whether you can write to it is where builders differ.
apple-app-site-association
No extension
JSON inside, no .json on the name. Android’s file is assetlinks.json.
What each builder lets you host
From each builder’s own help pages and developer docs, October 23, 2026.
Builder by builder
Webflow. Since December 16, 2024, Webflow serves any well-known file. In the Assets panel, create a folder named well-known, upload the files and publish. Uploads must end in .json, .txt or .md, so name the iOS file apple-app-site-association.noext.txt and Webflow drops the extension. assetlinks.json goes in as it is. New files need a Premium Site plan (or a legacy Business Site plan) and don’t work on webflow.io staging domains.
Framer. In Site Settings, open Hosting, then Files. Add each file with the path /.well-known and publish. Framer lists both files by name and accepts files without an extension. It’s on the Pro and Enterprise plans. Framer doesn’t say which content type an extensionless file gets, so check it after publishing.
Shopify. Shopify doesn’t document a way to upload either file. It generates both on your custom domain, never on *.myshopify.com, once your app is registered: in a custom app’s Storefront API settings, or through the MobilePlatformApplication API, whose scope Shopify Support has to enable. The iOS file ends in /*, so every store URL except /admin and two payment callbacks opens the app. A developer asked for path control in May 2026; on October 14 Shopify had no update to share.
Wix. Wix doesn’t document a way to serve files at /.well-known/ (checked October 2026). Its help center says a verification file can’t currently be added at the root of a domain, in a feature request that is still collecting votes.
Squarespace. No documented way either. Its help page on files says the CDN assigns file URLs and they can’t be changed. The workaround on its forum is a URL mapping with a 301 redirect, which Apple and Google both reject.
The subdomain route
If your builder says no, or Shopify’s catch-all is more than you want, leave the website where it is. Point a subdomain such as links.yourbrand.com at a static host like Netlify, Vercel, Cloudflare Pages or Firebase Hosting; all four let you set response headers per path. Apple’s TN3155 suggests a separate subdomain for a related case anyway: a link from one yourbrand.com page to another doesn’t open the app from the browser, while a link to a different subdomain does.
Two things change. The links you share must point at the subdomain; links to yourbrand.com pages still open the website. And the app needs an update: applinks:links.yourbrand.com in Associated Domains, and an autoVerify intent filter for the host on Android. Give every other path on the subdomain a destination too, like a redirect to your website, so people without the app don’t hit a 404.
The three files
Swap in your own IDs and fingerprint. The generator fills them in for you.
.well-known/apple-app-site-association
{
"applinks": {
"details": [
{
"appIDs": ["ABCDE12345.com.yourbrand.app"],
"components": [
{ "/": "/*", "comment": "Every link on this subdomain opens the app" }
]
}
]
}
}.well-known/assetlinks.json
[{
"relation": ["delegate_permission/common.handle_all_urls"],
"target": {
"namespace": "android_app",
"package_name": "com.yourbrand.app",
"sha256_cert_fingerprints": ["14:6D:E9:83:...:3F:CF:44:E5"]
}
}]_headers (Netlify)
/.well-known/apple-app-site-association
Content-Type: application/json
/.well-known/assetlinks.json
Content-Type: application/jsonSetting up links.yourbrand.com
Netlify as the example. Other hosts follow the same steps with their own record values.
- 01
Deploy the folder
Domain
links.yourbrand.com
The .well-known folder with both files, plus _headers. Then add links.yourbrand.com to the site in Netlify.
- 02
Add one CNAME record
- Type
- CNAME
- Name
- links
- Value
- your-site.netlify.app
Wherever your DNS lives, maybe in your builder’s domain settings. The website’s records stay. Propagation can take a day.
- 03
HTTPS, then check
- Waiting for DNS
- Certificate issued
- Both files load
https://links.yourbrand.com/.well-known/assetlinks.json
Netlify issues and renews a Let’s Encrypt certificate for the subdomain. Then run it through the validator.
Or skip the file entirely
A Universal Link isn’t the only way into your app. An Appy link on Pro ($9.99/month) carries your app’s URL scheme deep link, such as yourapp://product/42, next to your store addresses. In Safari and Chrome it tries the app, then the store. In in-app browsers like Instagram’s it shows a page with an Open the app button, a store button and the steps to open Safari or Chrome. Computers get your website. Nothing goes on your site.
It isn’t a Universal Link on your domain, though. The link lives on appy.to, and yourbrand.com/product/42 still opens the website. Apple strongly recommends Universal Links over schemes, partly because nothing stops another app from registering yours. On Business, a custom domain like go.yourbrand.com carries your links but only redirects; Universal Links and App Links on your own domain through Appy are Enterprise. With the subdomain above, a Pro link can use https://links.yourbrand.com/product/42 as its deep link, and phones without the app still reach the store.
Check it before you share a link
Generate both files
The generator at /tools/aasa-assetlinks-generator builds both from your Team ID, bundle ID, package name and fingerprint.
Validate the host
The validator at /tools/universal-link-validator fetches the AASA file from your server and the copy in Apple’s CDN, and checks assetlinks.json for your package name and fingerprint.
Give Apple’s CDN time
iPhones read the file from Apple’s CDN, which fetches it within 24 hours. Phones check about once a week; reinstalling the app pulls a fresh copy.
Tap a real link
Send it to yourself in Notes or Messages and tap it on a phone with the app. On Android, adb shell pm get-app-links with your package name should list the host as verified.
Read next
Universal Links on site builders: questions
Can I upload apple-app-site-association to Shopify?
Not as a file. Shopify generates it on your custom domain once your app is registered, and it sends every store URL to the app. It doesn’t work on myshopify.com.
How do I add a .well-known file in Webflow?
Create a folder named well-known in the Assets panel, upload the file and publish. Name the iOS file apple-app-site-association.noext.txt so it’s served without an extension. New files need a Premium Site plan or higher.
Do Wix and Squarespace support Universal Links?
Neither documents a way to serve files at /.well-known/ (checked October 2026). Host the files on a subdomain with a static host, or use a link that opens the app with a URL scheme.
Can a redirect point /.well-known/ to a file somewhere else?
No. Apple requires the file with no redirects, and Android’s file must load without a 301 or 302.
Do Universal Links work without a website?
They need a domain that serves the file, not your main website, so a subdomain on a static host is enough. A scheme deep link through a smart link opens the app with no file at all, but it isn’t a Universal Link.
I fixed the file. Why does the link still open the website?
iPhones read the file from Apple’s CDN, which fetches it within 24 hours, and installed apps check about once a week. Reinstall the app to test the new file.
Continue exploring
Universal Link and App Link Error Codes, Explained
SWCERR00101, SWCERR00301, legacy_failure, 1026: what each Universal Link and Android App Link error means, where you see it and the fix that makes the app open again.
How In-App Browsers Handle Deep Links: Instagram, TikTok, Facebook, Gmail, Telegram and More
Why a link that opens your app from Safari dies inside Instagram: the three kinds of in-app browser, the iOS and Android rules, and what each app documents, from Facebook to Telegram.
Custom Domain Short Links for Apps: A Practical Guide
Why a link on your own domain is worth it, how to choose the hostname, the setup in three steps, and what happens to the links and QR codes you have already shared.
Looking for something else? Browse all topics on the blog.
Check your domain in a minute
Run your website or subdomain through the free validator: the AASA file on your server, Apple’s CDN copy and assetlinks.json in one check. If your builder can’t host the files, an Appy deep link opens the app without them.