Overview

You can include URLs and deep links in Push, Email, In-App Messages, and SMS. This guide explains how to set up these links correctly, how link tracking works, and when to use deep links.

For more advanced linking like custom schemes or app routing, see our Deep Linking guide.

Platform linking options

Launch URL

Use the Launch URL to open a link when the notification is clicked. This typically opens in the default browser and should start with https://.

To use http:// URLs with Apple devices, you must setup the NSAppTransportSecurity property in your app’s Info.plist file.

If you’re using a mobile deep link like your-custom-scheme://, results may vary. See Deep Linking.

Targeting multiple platforms

If you send a single message to both web and mobile users, use:

  • url — for general targeting across all platforms.
  • web_url — for web push Subscriptions.
  • app_url — for mobile Subscriptions.

OneSignal Dashboard – Launch URL Field


Additional data

Instead of Launch URL, you can use the Additional Data field (data in the API) to send custom data with your push and handle this data in your app using the SDK’s Notification Click Listener via the additionalData property. This might be a better option than Launch URL to provide more flexibility.

Send a URL to read within your app via the Additional Data field.



Dynamic URLs

You can create custom, user-specific URLs with Liquid Syntax and data from:

  • User Properties (e.g., external_id, email)
  • Tags stored in OneSignal
  • custom_data sent via the API

This enables personalized links in your messages that lead users to content tailored just for them.

Inject values like external_id or email directly into URLs.

Example:

  https://yourdomain.com/profile/user={{subscription.external_id}} 

If the user’s external_id is 12345, the final URL will be:

https://yourdomain.com/profile/user=12345

Similarly:

https://yourdomain.com/profile/email={{subscription.email}}

If the user has an email address of john@example.com, the final URL will be:

https://yourdomain.com/profile/email=john@example.com

Best practices:

  • Only set data tags or custom_data for parts of the URL. Don’t include the protocol (https:// or your-app-scheme://) and domain in the URL.
  • Use the default filter to set a default value if the tag is not set.

UTM Parameters

UTM parameters help track the performance of message campaigns by appending source, medium, and campaign details to URLs. Simply add your UTM parameters directly into the URLs of your messages.

You can have OneSignal automatically add UTMs to push notification Launch URLs sent from the Dashboard.


FAQ

You can enter the store link as the launch URL. Examples:

Android - https://developer.android.com/distribute/marketing-tools/linking-to-google-play.html iOS - get the link to the app store page, but replace https:// with itms-apps://.

For push and in-app messages, in most cases, you can setup a URL Scheme and deep link using the protocol x://. For example, deep linking into Whatsapp, you can use: whatsapp://wa.me/15551234567

For email and sms, you will need to use the https:// app store link.

Can I prevent linking to my app or site?

Currently on mobile apps, anytime the user clicks the push it will open the app.

Web Push: If you do not want to link to any page or url, you can add ?_osp=do_not_open to the end of a URL like this https://yoursite.com/page?_osp=do_not_open as the launch url, this will prevent the push from going to any url upon click and will just dismiss the push.