Skip to content
Tolinku
Tolinku
Sign In Start Free
Use Cases · · 6 min read

E-Commerce Email Deep Links That Convert

By Tolinku Staff
|
Tolinku e commerce deep linking dashboard screenshot for use cases blog posts

Email is the highest-ROI marketing channel for e-commerce. But the default email experience is poor: user taps a link, browser opens, website loads, user has to navigate to the mobile version, maybe log in, then find the product. Deep links fix this: user taps a link in the email, app opens directly to the product or cart.

For general email deep linking, see Universal Links in Email Campaigns. For the broader e-commerce strategy, see Deep Linking for E-Commerce Apps.

The Email-to-App Gap

Here's what happens without deep links:

  1. User opens email on their phone
  2. Taps a product link
  3. Mobile browser opens (or in-app browser in the email client)
  4. Website loads (mobile web version)
  5. User may need to log in
  6. User browses, adds to cart, checks out on the web

Here's what happens with deep links:

  1. User opens email on their phone
  2. Taps a product link
  3. App opens directly to the product
  4. User is already logged in (the app maintains their session)
  5. User taps "Buy Now"

Fewer steps, no login friction, and the app provides a better shopping experience than mobile web. The conversion rate difference is typically 2-3x.

Product Recommendation Emails

The most common e-commerce email. Each product links to its deep link:

<table>
  <tr>
    <td>
      <a href="https://go.yourapp.com/product/SKU-001?utm_source=email&utm_campaign=weekly-picks">
        <img src="product-image.jpg" alt="Running Shoes V2" />
      </a>
      <p>Running Shoes V2 - $89.99</p>
      <a href="https://go.yourapp.com/product/SKU-001?utm_source=email&utm_campaign=weekly-picks">
        Shop Now →
      </a>
    </td>
  </tr>
</table>

Both the product image and the CTA button link to the same deep link.

Order Confirmation Emails

Link to the order tracking screen:

<a href="https://go.yourapp.com/orders/ORD-12345?utm_source=email&utm_medium=transactional">
  Track Your Order →
</a>

Shipping Notification Emails

Link to the shipment tracking detail:

<a href="https://go.yourapp.com/orders/ORD-12345/tracking?utm_source=email&utm_medium=transactional">
  Track Your Shipment →
</a>

Sale/Promotional Emails

Link to the sale landing page with auto-applied promo:

<a href="https://go.yourapp.com/sale/summer-2026?promo=SUMMER30&utm_source=email&utm_campaign=summer-sale">
  Shop the Sale →
</a>

Back-in-Stock Notifications

Link directly to the product that's back:

<a href="https://go.yourapp.com/product/SKU-789?back_in_stock=true&utm_source=email&utm_campaign=restock">
  It's Back! Shop Now →
</a>

Abandoned Cart Emails

Link to the cart with items restored:

<a href="https://go.yourapp.com/cart?recover=true&promo=COMEBACK10&utm_source=email&utm_campaign=cart-recovery">
  Complete Your Order (10% Off) →
</a>

For abandoned cart strategies, see Abandoned Cart Recovery with Deep Links.

The biggest technical challenge with email deep links: email service providers (ESPs) wrap your links for click tracking.

When you put https://go.yourapp.com/product/123 in an email through Mailchimp, SendGrid, or any ESP, the actual link in the HTML becomes something like:

https://click.mailchimp.com/track/click/12345?url=https%3A%2F%2Fgo.yourapp.com%2Fproduct%2F123

The OS sees click.mailchimp.com, not go.yourapp.com. Since your app doesn't handle click.mailchimp.com, the link opens in the browser instead of the app.

Solutions

Option 1: Use your deep linking platform's email compatibility

Most deep linking platforms handle this automatically. When the wrapped link hits the deep linking server, it detects the device and either:

  • Opens the app via a redirect through a page with a Universal Link
  • Falls back to the web destination

Option 2: Custom link redirect

Some ESPs allow you to set a custom click tracking domain. If you set click.yourapp.com as the tracking domain, you can configure it to redirect through your deep link domain:

click.yourapp.com → go.yourapp.com/product/123 → App opens

Option 3: Bypass wrapping for specific links

Some ESPs allow you to mark specific links as "no-track" or raw. The trade-off: you lose click tracking for those links.

Option 4: Smart banner as fallback

If the link opens in the browser instead of the app, display a smart banner on the web page that deep links to the app:

Web page: "Open in app for a better experience"
[Open in App] → https://go.yourapp.com/product/123

This adds one extra tap but recovers the app experience.

Testing with Your ESP

Before launching an email campaign with deep links, send test emails through your actual ESP (not just a test email tool) and verify:

  1. The link in the delivered email opens the app (not the browser)
  2. The link works in Apple Mail, Gmail app, Outlook, and the ESP's email client
  3. Click tracking still records (if using a compatible solution)

Test on both iOS and Android. Different email clients handle links differently.

Email Client Behavior

Different email clients handle links differently:

Email Client Universal Links Support Behavior
Apple Mail Yes Tapping a link opens the app if configured
Gmail (iOS) Partial Opens in Gmail's in-app browser first
Gmail (Android) Yes Opens the app via App Links
Outlook (iOS) Partial May open in in-app browser
Outlook (Android) Yes Opens the app via App Links

For clients that open an in-app browser first, the web page should display a smart banner that deep links to the app.

Building the Email Template

Structure

<!-- Header with logo linking to app home -->
<a href="https://go.yourapp.com/?utm_source=email">
  <img src="logo.png" alt="Your App" />
</a>

<!-- Hero banner linking to sale page -->
<a href="https://go.yourapp.com/sale/summer?promo=SUMMER30&utm_source=email">
  <img src="sale-banner.jpg" alt="Summer Sale: 30% Off" />
</a>

<!-- Product grid - each product links to its page -->
<table>
  <tr>
    <td>
      <a href="https://go.yourapp.com/product/SKU-001?utm_source=email">
        <img src="product-1.jpg" alt="Product 1" />
      </a>
    </td>
    <td>
      <a href="https://go.yourapp.com/product/SKU-002?utm_source=email">
        <img src="product-2.jpg" alt="Product 2" />
      </a>
    </td>
  </tr>
</table>

<!-- CTA button -->
<a href="https://go.yourapp.com/sale/summer?promo=SUMMER30&utm_source=email"
   style="background: #000; color: #fff; padding: 12px 24px; text-decoration: none;">
  Shop the Sale →
</a>

UTM Parameters

Every link should include UTM parameters for attribution:

  • utm_source=email
  • utm_medium=marketing (or transactional)
  • utm_campaign=campaign-name
  • utm_content=cta-button (or product-1, hero-banner)

These parameters pass through to your analytics when the app opens.

Key Metrics

Metric Formula Benchmark
Email open rate Opens / Delivered 20-30%
Click-through rate Clicks / Opens 3-5%
App open rate App opens / Clicks 40-70%
Conversion rate Purchases / App opens 5-15%
Revenue per email Total revenue / Emails sent Varies

A/B Testing

Test deep linked emails against web-linked emails:

  • Group A: Links deep link to the app
  • Group B: Links go to the mobile website

Compare conversion rates, average order value, and revenue per email.

Segmentation

Segment your email list by app install status:

  • App installed: Use deep links (user goes directly to app)
  • App not installed: Use web links with smart banner (user sees web page + app install prompt)

If you know which users have the app installed (via your analytics), you can send different email versions to each segment.

For deep linking features, see Tolinku deep linking. For e-commerce use cases, see the e-commerce documentation.

Get deep linking tips in your inbox

One email per week. No spam.

Ready to add deep linking to your app?

Set up Universal Links, App Links, deferred deep linking, and analytics in minutes. Free to start.