An SMS message can have only 160 characters, and a single link (even without UTM parameters) can use up most of them. Iterable's SMS link shortening feature makes it easy to incorporate links into your SMS campaigns, and still have room for a compelling, personalized message.
And, since Iterable provides click tracking for these shortlinks, you can better understand how your contacts are engaging with your SMS campaigns and personalize your messages more deeply.
Table of contents
SMS link shortening
SMS campaigns can use your project's tracking domains to shorten links. To learn how to create a new tracking domain, read create a tracking domain for SMS link shortening.)
Iterable uses your selected tracking domain to shorten the SMS campaign's links, regardless of where they come from (manual entry in the message's content, a Handlebars expression, or a snippet).
IMPORTANT
If you're using Handlebars to insert a link into an SMS message, use triple curly bracesfavoriteItemURL
profile field that you'd like to use as a link
in your message, enter {{{favoriteItemURL}}}
, not {{favoriteItemURL}}
.
For example, here's an example SMS template that includes a link to https://www.example.com
:
This template uses itbldocs.site
for link shortening, which means that the campaign's
recipients receive links that look something like https://itbldocs.site/2NMwZ
(the selected domain, plus five characters).
NOTES
- The example shortlink displayed on the template editing page is not an actual link.
- The character count on this page doesn't take link shortening into account. For a better sense of the actual character account, use preview with data.
Default link shortening (tracking) domain: itbl.co
If you don't have a custom tracking domain you'd like to use for SMS link shortening,
you can use Iterable's default link shortening (tracking) domain, itbl.co
:
Because itbl.co
is shared across all Iterable projects, shortlinks that use
this domain include a few extra characters to map them back to the sending
project. For example, in https://itbl.co/KT~2NMwz
(shown above), the KT~
prefix associates the link with the template's Iterable project. However, the
template editing page doesn't show the actual, project-specific extra characters
that appear in your messages (only an example).
For link shortening, it's best to use a branded link tracking domain,
instead of itbl.co
. Contacts perceive links associated with your
organization to be more trustworthy.
Iterable stores shortlinks for a minimum of 30 days. If one of your contacts happens to click on an expired link, they will see a friendly 404 page.
itbl.co
cannot be used to send deep links.
IMPORTANT
When using link shortening to link to sensitive information or PII, always require a login. When a shortened link expires, its random characters can be reused for a new link (only by the same Iterable project). Authentication prevents a previous recipient from accessing sensitive content found at a reused link's new destination, should they happen to click an old link.
Creating a tracking domain for SMS link shortening
To create a new link tracking domain specifically for SMS link shortening:
Register the domain.
It's a best practice to enable HTTPS for all tracking domains. To do this, use a service such as Amazon CloudFront or Cloudflare.
In the domain's DNS, set up a CNAME record, aliasing it to
links.iterable.com
(for a US-based project) orlinks.eu.iterable.com
(for an EU-based project)In Iterable, navigate to Settings > Domains and add this new domain as a link tracking domain, making sure to enable HTTPS. For more informtion, read Email Setup
Once Iterable has verified the domain, you can use it for SMS link shortening.
IMPORTANT
Before using a new tracking domain in a live campaign, send an internal test campaign to make sure that it works as expected.
Previewing with data
To view how an SMS message appears to your contacts (including shortlinks and personalized data), and to get a more accurate understanding of the message's actual character count:
When you're done editing your SMS template, save it .
-
Click the Preview with Data button below the template editor. This brings up the Preview with Data page:
-
To view the message as particular contact (using their data, and placeholder shortlinks), enter their email address in the input and click Load User Data.
WARNING
The character count on the Preview with Data page does not account for the
/a
characters added to deep links you send in your SMS campaigns.
Click tracking
Whenever one of your contacts clicks a shortlink in an SMS message, Iterable saves
an smsClick
event to their profile. You can use these events to:
- Segment a list
- Trigger a journey
- Filter users in a journey
- Trigger a system webhook
For example, you might create a dynamic list that includes only those contacts who have (or have not) clicked on a particular SMS message. Or, you might use them to split contacts into different journey paths.
Additionally, Iterable surfaces various SMS click tracking metrics:
- Total SMS clicks
- Unique SMS clicks (
smsClick
by email) - SMS click rate (unique SMS clicks / total SMS delivered)
You can find these metrics in all the places you analyze campaign metrics: messaging insights, reports, dashboards, experiments, etc.
NOTE
smsClick
events have a clickedUrl
field, which contains the original URL used
in the campaign template (not the shortened version). You can use this field for
personalization, through segmentation and journey filters.
Adding UTM parameters (and other customer parameters) to SMS shortlinks
SMS campaigns in Iterable can automatically attach specific UTM parameters (and/or or other URL parameters) to each link in their message content.
When you enable UTM parameters for an SMS campaign, Iterable adds the following parameters:
?utm_source=Iterable&utm_medium=sms&utm_campaign=campaign_{{campaignId}}
(Where {{campaignId}}
gets replaced with the ID of your campaign.)
These parameters are added before the link is shortened. They won't appear directly in the message, but they are available after the shortlink is resolved to its intended destination (in your app, or in the browser).
To learn how to add UTM parameters and other custom URL parameters to your SMS campaigns, read Creating SMS Templates.
IMPORTANT
In SMS campaigns, Iterable only attaches UTM parameters (and other custom URL parameters) to shortened links. Standard links with UTM parameters can get quite long, which is a problem for a character-constrained medium like SMS. If you don't enable link shortening and tracking for an SMS campaign, URL parameters you configure for it won't be added to the sent message.
Adding deep links to SMS campaigns
After creating a link shortening (tracking) domain, you can use it to include deep links in your SMS campaigns. When a user clicks a deep link, it opens in your mobile app (if it's installed on the user's device), or in a web browser.
TIP
You can recognize a deep link sent with Iterable by the /a
in its URL. For
example, an SMS campaign using itbldocs.site
as a link shortening (tracking)
domain creates deep links that look like this: https://itbldocs.site/a/KT~2NMwZ
.
Configuring a link shortening (tracking) domain to support deep links
To have your tracking domain support deep links:
- On the Settings > Domains page, add some destination domains to your tracking domain.
- For each destination domain, create an
apple-app-site-association
file. These files specify the specific paths for which your app can handle deep links. - Create an
assetlinks.json
file, so that Android devices know that your app can be trusted to open links for your destination domains.
TIP
To learn more about these steps, read Sending Domains, Tracking Domains, and Deep Links.
Sending a deep link in an SMS campaign
To send a deep link in an SMS campaign:
When setting up the SMS campaign, enable the Shorten and track links toggle as you're setting up the campaign content (template). To learn more, read Creating SMS Templates.
Select a tracking domain that's set up for deep linking (as described above).
Add a link to your message content, making sure that it matches a destination domain and path associated with the specific tracking domain you've selected for the campaign.
To test that deep links are working as expected, send a proof of the campaign to yourself, inspect the link, and try clicking on it to make sure that it opens in your app..
Considerations for deep links in SMS campaigns
Some things to remember when sending deep links in your SMS campaigns:
The default SMS link shortening (tracking) domain,
itbl.co
, cannot be used to generate and send deep links (since you can't create anapple-app-site-association
file for this domain).If your mobile apps (iOS, Android, React Native) have been set up to handle deep links from emails and push notifications, you don't need to write any extra code to support deep links from SMS messages.
The character count on the Preview with Data page does not account for the two characters added by the
/a
in the deep link's URL.If the links you add to your SMS message don't match the destination domains you've defined for the tracking domain you've selected for the campaign (or the paths defined in their associated
apple-app-site-association
files), Iterable does not rewrite those links as deep links.To make sure that deep links are working as expected, always send yourself a proof of an SMS campaign before activating or sending the campaign.
Deep links can include UTM and other custom parameters. These URL parameters are added to your links before they're shortened and converted to deep links.
Comments
0 comments
Article is closed for comments.