To get the most mileage from text message marketing, it’s critical that the copy you send to subscribers is well-honed to convert, charm, and captivate. In this guide, we’ve put together a set of best practices built by the pros at Attentive to help you achieve the results you’re after.
Note that when you first create a transactional journey, it automatically includes template message copy from Attentive. You can click the message and edit like any other message in a journey, but keep in mind that you’re responsible for ensuring that your transactional text messages don’t include marketing content. See What are transactional journeys? for more information.
Before you get started with this guide, be sure to check out the following:
General transactional message best practices
- Wait time: We recommend not including a wait time on transactional messages so you can update your customers about their order or subscription as soon as possible.
- Message copy: We recommend launching with the below message types and then layering on additional messages/dynamic values over time as we make them available.
Shopify transactional message copy suggestions
As with normal journeys, you can use personalizations to automatically insert details about the subscriber or what they’re trying to do. Shopify transactional personalizations include:
-
{{subscriber.firstName}}
: First name of the customer -
{{subscriber.fullName}}
: Full name of the customer -
{{subscriber.lastName}}
: Last name of the customer -
{{triggerEvent.order.number}}
: The Shopify order number of the transaction -
{{triggerEvent.order.statusLink}}
: A link to the Shopify order. For more, see About order status pages on Shopify’s help center.
Order confirmation messaging best practices
-
Option 1: Thank you for your purchase! Your order number is
{{triggerEvent.order.number}}
. View more information about your order here:{{triggerEvent.order.statusLink}}
-
Option 2: Hey,
{{subscriber.firstName}}
! Thanks for your purchase! View more information about your order{{triggerEvent.order.number}}
here:{{triggerEvent.order.statusLink}}
Shipping confirmation messaging best practices
-
Option 1: Great news,
{{subscriber.firstName}}
! Your order ({{triggerEvent.order.number}}
) has shipped and will be to you soon. Click here to view your order details:{{triggerEvent.order.statusLink}}
-
Option 2: Get excited! Your order (
{{triggerEvent.order.number}}
) has shipped and is on its way to you. Click here to view your order details:{{triggerEvent.order.statusLink}}
Order canceled messaging best practices
- Hey
{{subscriber.firstName}}
, order #{{triggerEvent.order.number}}
was successfully canceled. You can check the status of your order here{{triggerEvent.order.statusLink}}
Shipment canceled messaging best practices
- Hey
{{subscriber.firstName}}
, part of your order (#{{triggerEvent.order.number}}
) was successfully canceled. You can check the status of your order here:{{triggerEvent.order.statusLink}}
Order out for delivery messaging best practices
- Hey
{{subscriber.firstName}}
, order #{{triggerEvent.order.number}}
is out for delivery. Track your order here:{{triggerEvent.fulfillment.trackingLink}}
Order delivered messaging best practices
- Hey
{{subscriber.firstName}}
, order #{{triggerEvent.order.number}}
has been delivered! Track your order here:{{triggerEvent.fulfillment.trackingLink}}
Order refunded messaging best practices
- Hey
{{subscriber.firstName}}
, we've successfully refunded you{{triggerEvent.refund.totalRefund}}
for order #{{triggerEvent.order.number}}
. View the status of it here:{{triggerEvent.order.statusLink}}
Refund failed messaging best practices
- Hey
{{subscriber.firstName}}
, we were unable to process your{{triggerEvent.refund.totalRefund}}
refund for order #{{triggerEvent.order.number}}
. You can view the status of your order here{{triggerEvent.order.statusLink}}
ReCharge transactional message copy suggestions
As with normal journeys, you can use personalization macros to automatically insert details about the subscriber or what they’re trying to do. ReCharge transactional macros include:
-
{{subscriber.firstName}}
: First name of the customer -
{{subscriber.fullName}}
: Full name of the customer -
{{subscriber.lastName}}
: Last name of the customer -
{{product.name}}
: The name of the product purchased
Subscription started
-
Option 1: Great news! Your subscription for
{{triggerEvent.productSubscription.name}}
has begun. -
Option 2: Thanks for subscribing to
{{triggerEvent.productSubscription.name}}
!
Upcoming charge
-
Option 1: You’ll be charged for
{{triggerEvent.productSubscription.name}}
on{{triggerEvent.scheduledCharge.nextChargeDate}}
. -
Option 2: Your next payment for
{{triggerEvent.productSubscription.name}}
is scheduled on{{triggerEvent.scheduledCharge.nextChargeDate}}
.
Subscription skipped
-
Option 1: You've skipped the next subscription for
{{triggerEvent.productSubscription.name}}
. -
Option 2: Your next subscription for
{{triggerEvent.productSubscription.name}}
will be skipped.
Charge failed
-
Option 1: We were unable to complete your upcoming order for
{{triggerEvent.productSubscription.name}}
due to an issue with your card on file. Check out{{triggerEvent.billing.link}}
to update your payment information. -
Option 2: Hey
{{subscriber.firstName}}
! Just a heads up - we're having trouble processing your{{triggerEvent.productSubscription.name}}
order. Please update your payment method at{{triggerEvent.billing.link}}
Loop Returns transactional message copy suggestions
Return confirmation
- Thank you for your
{{returnOutcome}}
,{{subscriber.firstName}}
! Please package up any items that you're returning to us, attach the included label to the top of the package, and drop it off at any{{trackingCarrier}}
location. It's that easy!{{statusPageUrl}}
In transit notice
- We received notice that your return was shipped via
{{trackingCarrier}}
today. You can track your package at any time using the link below.{{trackingCarrier}}
tracking number:{{trackingNumber}}
Delivered notice
- We've received your returned items via
{{trackingCarrier}}
today. Please allow up to 5 business days for our team to review and process your return before your resolution is issued. You'll receive an SMS confirmation letting you know that the process is complete.{{trackingCarrier}}
tracking number:{{trackingNumber}}
Refund confirmation
- Hey
{{subscriber.firstName}}
, This is a confirmation that we've now processed your{{returnOutcome}}
. The funds will appear in your bank/credit card statement within the next few days. Thanks!
Return expiring notice - 21 days after a return request
- Remember to return your items. You submitted your return request 21 days ago, but we still haven’t received your package. If you’re still planning to send the return, please send your package back within the next 7 days, or your request will expire, and the return shipping label will no longer be valid. View your return here:
{{statusPageUrl}}
Return expired notice
- You submitted a return request, and we haven’t received your package. Your return request has now expired, and the return shipping label is no longer valid.
Instant exchange 7 day reminder
- Friendly reminder, please send back your return to avoid being charged! You have 7 days left to drop your return off at the specified carrier to avoid being charged for those items. View your return here:
{{statusPageUrl}}
Instant exchange 1 day reminder
- Friendly reminder, please send back your return to avoid being charged! You have 1 day left to drop your return off at the specified carrier to avoid being charged for those items. View your return here:
{{statusPageUrl}}