Why You Should Test Your Deep Links Before Sharing Them (And How to Get a Perfect Score)
Broken deep links silently kill conversions. And honestly, it happens way more often than you'd think. Here's how to catch those misconfigurations before they tank your ad spend.
Deep links power the "Open in App" moments we all rely on. You share a link on Instagram or drop a QR code on a flyer, and the user lands exactly where they need to—a checkout flow or a specific product page.
But when they break? Users hit a dead end, a generic homepage, or just a weird browser error.
Here's the uncomfortable reality. Most deep links are totally broken, and the teams pushing them out have no idea.
A CleverTap Study showed up to 66% of app install campaigns suffer from busted deep links. That's a ton of wasted money.
On the flip side, Appsflyer Reports that properly built deep links push conversion rates 2–3x higher than just sending people to your mobile website.
The fix is easy. Test your links before you ship them. Every single time.
What Actually Goes Into a Deep Link?
A deep link isn't just a simple URL. It's a fragile chain of configurations. Break one link, and the whole journey falls apart.
When you test a deep link, here's what you're really checking:
Domain Health: Your domain is step one. Does it resolve? Is your SSL certificate valid? This is non-negotiable for Universal Links and App Links. You also need to check for weird redirect chains. Apple specifically demands that AASA files are served straight up, without redirects.
iOS Universal Links: Apple uses the apple-app-site-association (AASA) file to decide if a URL opens your app. We look for a valid JSON format, the right App ID, and exact URL pattern matching. Oh, and the Content-Type header has to be application/json.
Android App Links: Android does something similar with assetlinks.json. The file needs to be sitting at /.well-known/assetlinks.json with the correct package name and SHA-256 fingerprint. You also have to enable autoVerify.
Web Fallback: What if they don't have the app? A solid link redirects to the right app store or shows a relevant web page instead of throwing a 404. It should also carry that context through the install process (deferred deep linking) so they land where you promised after downloading.
Social Previews: If you drop a link in a WhatsApp group or a Facebook post, you absolutely need those Open Graph tags pulling the right title and image.
Think about it. A WhatsApp link preview is often the very first thing your user sees.
A strong image and a punchy title get the click.
A boring gray square with a busted URL does not.
The same exact rule applies to a Facebook link preview, an iMessage drop, or an X (Twitter) card.
You have to nail the metadata.
Why Bother Testing?
Look, you really only get one shot. Someone taps your link from a push notification. They expect it to work. If it drops them on your homepage instead of the sweater they wanted to buy—they're gone.
And the worst part? Broken deep links are totally silent. They don't throw 500 errors in your logs. You just quietly lose the user.
If you're dropping cash on paid social or influencer campaigns, misconfigured links are just setting that budget on fire. Especially with deferred deep linking. If that link context drops during the install, new users open your app with zero idea what to do next.
Fix It For Free
Don't manually check these JSON files. Just use ChottuLink's Free Deep Link Tester.
Paste your link and get a 0–100 health score immediately.
We check your DNS, SSL, and AASA files. We validate your Android package names and Open Graph tags. You can even see a live preview of what happens on iOS, Android, and desktop.
We'll also flag if you're using a vendor like Firebase Dynamic Links and suggest a cleaner setup.
It's free. No signup. Just paste the link and see what's broken.
Your Deep Links Need a Custom Domain
Stop using default vendor domains like yourapp.onelink.me or yourapp.page.link. Seriously. It undercuts your brand.
Generic domains look suspicious right away. A custom domain like link.yourapp.com builds instant trust, which drives up your click-through rates. Plus, sharing your own domain reinforces your brand, right down to the URL.
But the biggest reason? Vendor lock-in.
When Google killed Firebase Dynamic Links, everyone relying on *.page.link panicked. They had to scramble to migrate or accept that their links were going to die. But apps running on custom domains barely noticed. They just swapped out the backend and kept moving.
When Higher, a K-pop voting app, migrated millions of fans from Firebase to ChottuLink, keeping their custom domain meant zero downtime. Links just kept working.
Custom domains are insurance. If your provider shuts down or spikes their pricing, you can walk away. Your users won't feel a thing. ChottuLink gives you custom branded domains on every paid plan.
Don't Use Your Root Domain for This
Let's clear up one major mistake. Do not use your root domain (yourapp.com) or www for app deep links.
It creates a nasty trap in Safari. Apple assumes that if a user is clicking around your website, they want to stay in the browser. So if they click a root domain link while already on your site, iOS ignores the app completely and just loads the webpage.
Switching to link.yourapp.com explicitly tells iOS, "Hey, this is a different context—open the app."
Mixing AASA files with your main website is also a huge headache. Your CDN, redirect rules, and server-side rendering all start fighting with Apple's strict lack-of-redirect rules. Keep it separated. A subdomain fixes analytics pollution too, keeping app-intent clicks out of your web traffic metrics.
Just use link., app., or go.. It'll save you days of debugging.
The Pre-Launch Checklist
Before you hit publish on any campaign, run through this:
- Score your link on ChottuLink's Deep Link Tester. Aim for 100.
- Click it on a physical iPhone and an actual Android device. Simulators are notoriously bad at this.
- See what happens on a desktop browser.
- Paste it in Slack and check the preview image using ChottuLink's Social Preview Tool.
- Delete the app, click the link, install the app, and make sure the context carried over.
- Double-check that your branded subdomain resolves.
Deep links hold your marketing campaigns together. Don't let a missing JSON file ruin a product launch. You can literally test your setup in a few seconds.
Test the link, fix the weird edge cases, and start sharing.
Test Your Links Free Right Here →
Looking for more technical details? Check Apple's Universal Links Docs or Android's App Links Guide.