A 24-hour sale that opens on the sale.
One link per channel, all pointing at the sale. New users install and land on the deal with the clock still running, and every purchase is credited to the email, post or ad that sent them.
- Who runs it
- Marketers, product
- Time to set up
- Minutes, after the SDK
- Plan
- Free, Growth for ad spend
One link per channel, all pointing at the sale.
Make a link per creative or channel, each opening the sale collection and carrying the sale's end time in its data, so the app can show the time left on first open.
- The channel tag on each link is what splits sales by email, post and ad later.
- The sale code can travel in the link's data, so nobody has to type it.
- After the sale, the same link can open a page saying it has ended.
The deal and the clock, before anything else.
A new user arriving mid-sale has no idea what your app is. The first screen answers what's on offer and how long is left before it asks for anything, whether they had the app already or installed it a minute ago.
- Works on iPhone and Android, including after a fresh install.
- The countdown reads the end time from the link, so it's right for every channel.
- Your developer adds LinkTrail once; every sale after that is just new links.
Sales per channel, inside the sale window.
Your app sends the purchase as an event with its value, and LinkTrail credits it to the link that brought the buyer. Compare the purchase rate of people who landed on the sale with people who landed anywhere else.
- Sales and revenue per channel and per creative.
- New buyers and returning ones, side by side.
- With ad spend imported on Growth, cost per sale for each ad campaign.
One-time setup, then it's all yours.
Your developer adds the LinkTrail SDK once and reads the sale details when the app opens. After that, every sale you run is just new links, with no app release.
LinkTrail.onLink(link => {
// link.customData = { endsAt: "2026-06-27T00:00Z", ch: "newsletter" }
openSale(link.path, link.customData.endsAt);
});The full walkthrough: Flash sale: an e-commerce offer that survives the install gap
A flash sale compresses a month of urgency into a day. That's exactly the window where the install gap does the most damage — every new user who lands on your homepage instead of the deal is a clock running out on a conversion you paid to start.
What problem does this solve?
24 hours, a hero collection, paid social plus email plus a homepage banner. A chunk of demand will come from people who don't have the app yet. They need to install and land on the sale, with the urgency intact.
How do you set the links up?
One smart link per creative, all pointing at the sale collection, each carrying the channel and the countdown context so the app can render time-remaining on first open.
{
"deepLinkPath": "/sale/flash-24",
"customData": { "endsAt": "2026-06-27T00:00:00Z", "ch": "meta-stories" }
}Why do flash sales lose more to the install gap than normal campaigns?
Because the deadline removes your second chance. On a normal campaign, a new user who lands on the homepage instead of the product might wander back tomorrow — the offer is still there. In a 24-hour sale, the user who has to go hunting for the deal is the user who doesn't buy, and there is no tomorrow to recover them in.
The urgency also concentrates the damage. Flash sales pull a disproportionate share of first-time buyers, which means a disproportionate share of your traffic is going through the install path where context is lost. The one campaign type where deep linking matters most is the one where it's most often skipped, because the sale is built in a hurry.
What should the first screen show?
The deal and the clock, in that order, above anything else. A new user arriving mid-sale has no idea what your app is, so the screen has to answer what's on offer and how long is left before it asks for anything.
- Land on the sale collection, never the homepage, and never a generic 'welcome' interstitial.
- Render the countdown from the payload's endsAt so the urgency is real and visible on first open.
- Apply any sale code automatically — a new user will not type one, and the code was your promise.
- Defer account creation until checkout. Every step before the cart is a step to lose them at.
- Handle the expired case honestly: if endsAt has passed, say so and show what's still discounted rather than silently landing on a full-price page.
That last one is the case teams forget, and it's the one that generates support tickets. Links outlive sales — someone will tap yours a week later, and the app should tell them the sale ended rather than pretending the link was broken.
Which metric should you watch?
Purchase rate from linked installs within the sale window, split against installs that landed on home. This is the cleanest before/after you'll ever run, because the deadline forces the behavior into a tight window.
What does success look like?
- New installs open directly on the sale with the countdown visible.
- Every channel's contribution is visible by match type, not blended.
- Post-sale, you can answer which creative drove purchases, not just installs.
Which teams own an e-commerce flash sale?
- Growth marketers
- Mobile product teams
Which LinkTrail features does an e-commerce flash sale need?
- Deferred deep linking
- Smart routing
- Per-link campaign and creative tagging
- Post-install events (purchase value)
Flash sale questions.
Does the countdown work for people who install first?
Yes. The sale's end time travels in the link's data, through the store and the install, so the app can show the time left on first open.
What happens when someone taps the link after the sale?
The link still opens the app. Your app reads the end time and can say the sale has ended, rather than looking broken.
Can I see which channel sold the most?
Yes. Give each channel or creative its own link. Your app sends purchases as events with their value, and each one is credited to the link that brought the buyer.
If you're doing this, you'll probably want these.
Cart recovery
Win-back emails and texts that open the saved basket, ready to pay.
Email links
Opens the app if it's installed, the store if not. No more newsletter links opening in Safari on phones that have the app.
Onboarding that matches the ad
If the ad promised 20% off, the first screen shows 20% off. Nobody has to find the code again.
Make your first sale link.
Free for your first 5,000 users. No card, no sales call.