AASA validator

Check your apple-app-site-association file the way iOS reads it. Enter a domain and we test the fetch, the headers, the JSON and the Apple CDN copy.

Enter a domain or paste a full URL. We read only the public file.

Results appear here.
Enter a domain above and press Enter or Check file. We run 11 checks and explain each one.

What this checks

Reachable over HTTPS
We request /.well-known/apple-app-site-association first, then the root path as a fallback.
HTTP status 200
Any other status means iOS finds no file.
No redirect
iOS does not follow redirects for this file, including http to https and apex to www.
Content type
The file should be served as application/json.
Size under 128 KB
Apple ignores files above this limit.
Valid JSON
A single trailing comma breaks the whole file.
applinks.details present
This is the list iOS matches your links against.
App ID format
Each ID is TEAMID.bundle.id, for example ABCDE12345.com.acme.app.
components or paths present
Without rules, no link opens your app.
webcredentials and appclips
Optional. We report them if they are there.
Apple CDN copy
We compare app-site-association.cdn-apple.com with your server.

What the apple-app-site-association file does

When someone taps a link to your domain, iOS looks for a file named apple-app-site-association to decide whether your app should open instead of Safari. If the file is missing, redirected, mistyped or served with the wrong headers, the link opens in the browser and nothing tells you why.

This validator fetches the file from your domain the way iOS does, then reads it for the mistakes we see most: a wrong App ID, an empty rules list, a redirect in front of the file, and a stale copy on Apple's content delivery network.

Frequently asked questions

Serve it over HTTPS at /.well-known/apple-app-site-association on every domain listed in your app's Associated Domains. The name has no file extension. The older root location, /apple-app-site-association, still works for some setups, so we check it as a fallback and tell you which one answered.

iOS does not follow redirects when it fetches this file. A rule that sends your apex domain to www, or http to https, can hide the file from iOS even though a browser shows it. Serve the file directly on the exact host in your Associated Domains entry.

Apple's CDN fetches your file on your behalf, and devices read that copy instead of your server. The CDN can lag behind your server after a change. If the two differ, we flag it so you know a fresh install may still see the old rules.

Apple's limit is 128 KB. Larger files are ignored. Most apps stay well below it. Use wildcard components instead of listing every path.

A valid file is necessary, not sufficient. The Associated Domains entitlement, a long press on the link, a link typed into the address bar, and a cached old copy on the device all cause the same symptom. Our debug checklist walks through each one.

We host this file for you

Register your app in WarpLink and we generate, serve and update your apple-app-site-association file. You never hand-edit JSON or redeploy a server to change a rule.

Start buildingFree to start. No sales call.