# Messages

With the parcelLab App, you can create highly personalized and branded messages via email, SMS, and webhook. Using the flexible setup and dynamic content options, you can keep customers informed, reduce support inquiries, and deliver a seamless experience from checkout to delivery.

## Best Practices

When configuring messages, it’s important to consider the following:

* Design and apply consistent email templates, ensuring you create templates for specific languages as needed or make them available for multiple languages
* Build reusable snippets for common content (for example: headers, footers, and custom elements) that you can add to both templates and individual messages for a more efficient process
* Create messages by checkpoint, defining message types for key delivery milestones (for example: order confirmation, shipped, and out for delivery) and linking them to the relevant shop, template, and language
* Include personalization and dynamic content by using placeholders and add conditional logic to tailor content based on carrier, delay or region
* Preview and test content via the preview pane to visualize how messages render, send test emails with real tracking data, and publish only after content is verified
* Optimize messages with A/B tests to measure which subject lines, CTAs, and layout changes perform the best and use winning variants based on open or click rates

## Use Cases

Discover practical uses cases to highlight how proactive messages can turn operational touchpoints into opportunities for engagement and growth.

{% hint style="success" %}
Save time by using the Copilot to generate your messages automatically. Just enter a short description of the message you want to create and the Copilot will build a draft using the parcelLab best practices and the tone of voice from your communications that you can customize.
{% endhint %}

<details>

<summary>Real-Time Updates</summary>

**Use case:** Send consistent, branded status updates at key delivery milestones using placeholders to empower customers to track their order at any time.

**Steps:**

1. Create a message type for each tracking event (for example: Shipped and OutForDelivery).
2. Include a tracking button so customers can find the latest status of their delivery on your order status page.
3. Add an estimated delivery window using placeholders (for example: `{{announced_delivery_date}}`).
4. Set the relevant layout and language settings for each message.
5. Preview and test the message content to ensure it meets your requirements.
6. Publish each message to make it live.
7. Set up A/B tests for the configured messages to optimize the content using data-driven insights.

**Goal:** Increase customer satisfaction with full journey visibility and reduce contact to support.

</details>

<details>

<summary>Proactive Delay Notifications</summary>

**Use case:** Automatically notify customers when a delivery is delayed via a tailored message with rerouting or support options.

**Steps:**

1. Create a message type (for example: DelayedShipment).
2. Add logic to trigger when the delivery date is later than expected.
3. Insert a placeholder in the message to offer reroute options.
4. Set the relevant layout and language settings for each message.
5. Preview and test the message content to ensure it meets your requirements.
6. Publish each message to make it live.
7. Set up A/B tests for the configured messages to optimize the content using data-driven insights.

**Goal:** Reduce customer service inquiries and maintain transparency.

</details>

<details>

<summary>Split Shipments</summary>

**Use case:** Keep customers updated on orders shipped in multiple packages.

**Steps:**

1. Create a message type (for example: Shipped).
2. Set up logic to trigger messages per package.
3. Insert placeholders to show the number of items in an order and specific content when there are multiple parcels in an order (for example: expected delivery date).
4. Include clear CTAs and tracking links for each package.
5. Set the relevant layout and language settings for each message.
6. Preview and test the message content to ensure it meets your requirements.
7. Publish each message to make it live.
8. Set up A/B tests for the configured messages to optimize the content using data-driven insights.

**Goal:** Increase customer satisfaction by providing clear status updates and improve operational visibility.

</details>

<details>

<summary>Pre-Dispatch Notifications</summary>

**Use case:** Inform customers if there is a delay between placing an order and the shipment leaving the warehouse (for example: production steps and warehouse handling scans).

**Steps:**

1. Create a message type (for example: PreDispatch).
2. Trigger the message once the order is packed and queued for shipping.
3. Insert a placeholder in the message to offer reroute or cancellation options.
4. Set the relevant layout and language settings for each message.
5. Preview and test the message content to ensure it meets your requirements.
6. Publish each message to make it live.
7. Set up A/B tests for the configured messages to optimize the content using data-driven insights.

**Goal:** Improve customer satisfaction with proactive updates to help set expectations and reduce uncertainty.

</details>

<details>

<summary>Personalized Recommendations</summary>

**Use case:** Include dynamic product recommendations to personalize suggestions and link them with UTM tracking for performance insights.

**Steps:**

1. Create a message type to include recommended items (for example: Delivered).
2. Insert a placeholder in the message content to display product recommendations.\
   **Note:** Alternatively, you can add product recommendations to an email campaign in the Campaigns section of the Experience Design Automation module.
3. Set the relevant layout and language settings for each message.
4. Preview and test the message content to ensure it meets your requirements.
5. Publish each message to make it live.
6. Set up A/B tests for the configured messages to optimize the content using data-driven insights.

**Goal:** Increase engagement and opportunity for further purchases with personalized recommendations.

</details>

<details>

<summary>Return Feedback Survey</summary>

**Use case:** Send a follow-up message after a return is completed to gather feedback on why the customer returned the item.

**Steps:**

1. Create a survey to collect feedback on customer returns in the Surveys section of the Experience Design Automation module.
2. Create a message type to include return surveys (for example: ReturnSurvey).
3. Insert a placeholder in the message content to display the survey.\
   **Note:** Alternatively, you can add surveys to an email campaign in the Campaigns section of the Experience Design Automation module.
4. Set the relevant layout and language settings for each message.
5. Preview and test the message content to ensure it meets your requirements.
6. Publish each message to make it live.
7. Set up A/B tests for the configured messages to optimize the content using data-driven insights.

**Goal:** Get key customer insights to improve product and operational processes.

</details>

***

{% hint style="info" %}

#### Check out the parcelLab guides

For further information on setting up messages, see our user guide documentation:

* [Set up templates for your emails](https://how.parcellab.works/guides/experience-design/setup/email-templates)
* [Create message types for different tracking events](https://how.parcellab.works/guides/experience-design/setup/messages#configure-messages)
* [Add engaging content to your messages](https://how.parcellab.works/guides/experience-design/setup/messages/add-content-to-emails)
* [Preview and send test messages before publishing](https://how.parcellab.works/guides/experience-design/setup/messages/preview-and-publish-emails)
* [Generate and customize messages with AI](https://how.parcellab.works/guides/experience-design/setup/messages/generate-emails-with-ai)
  {% endhint %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.parcellab.com/docs/resources/best-practices/messages.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
