diff --git a/_docs/_hidden/redirects/okta.md b/_docs/_hidden/redirects/okta.md index 78f4949b313..eed41b53f67 100644 --- a/_docs/_hidden/redirects/okta.md +++ b/_docs/_hidden/redirects/okta.md @@ -2,5 +2,5 @@ nav_title: Okta Single Sign-On permalink: /okta_single_sign_on/ layout: redirect -redirect_to: /docs/user_guide/administrative/logging_in_and_security/single_sign_on/okta_single_sign_on/#okta-single-sign-on +redirect_to: /docs/user_guide/administrative/access_braze/single_sign_on/okta/ --- diff --git a/_docs/_partners/message_personalization.md b/_docs/_partners/message_personalization.md index b380226f5ce..6af2f5cb569 100644 --- a/_docs/_partners/message_personalization.md +++ b/_docs/_partners/message_personalization.md @@ -74,5 +74,7 @@ valid_partner_list: url: /docs/partners/message_personalization/location/tangerine/ - name: Stylitics url: /docs/partners/message_personalization/dynamic_content/stylitics/ +- name: NiftyImages + url: /docs/partners/message_personalization/dynamic_content/niftyimages/ --- diff --git a/_docs/_user_guide/data_and_analytics/custom_data/custom_events/nested_objects.md b/_docs/_user_guide/data_and_analytics/custom_data/custom_events/nested_objects.md index 20e114833f7..dcd4b6b24e5 100644 --- a/_docs/_user_guide/data_and_analytics/custom_data/custom_events/nested_objects.md +++ b/_docs/_user_guide/data_and_analytics/custom_data/custom_events/nested_objects.md @@ -39,12 +39,11 @@ To access the nested data in your custom event, generate a schema for each event After generating a schema, you can reference the nested data during segmentation and personalization. Refer to the following sections for usage examples: -- API request body -- Liquid templating -- Message triggering -- Segmentation -- Personalization -- Event property segmentation +- [API request body](#api-request-body) +- [Liquid templating](#liquid-templating) +- [Message triggering](#message-triggering) +- [Segmentation](#segmentation) +- [Personalization](#personalization) ### API request body diff --git a/_docs/_user_guide/data_and_analytics/data_transformation/creating_a_transformation.md b/_docs/_user_guide/data_and_analytics/data_transformation/creating_a_transformation.md index 2a3468130dd..cabc52b58d9 100644 --- a/_docs/_user_guide/data_and_analytics/data_transformation/creating_a_transformation.md +++ b/_docs/_user_guide/data_and_analytics/data_transformation/creating_a_transformation.md @@ -49,7 +49,7 @@ Braze Data Transformation may not yet support external platforms that require sp ## Step 4: Write transformation code -If you have little to no experience with JavaScript code or prefer more detailed instructions, follow the **Beginner - POST: Track users** or **Beginner - PUT: Update catalog item** tab for writing your transformation code. +If you have little to no experience with JavaScript code or prefer more detailed instructions, follow the **Beginner - POST: Track users** or **Beginner - PUT: Update multiple catalog items** tab for writing your transformation code. If you're a developer or have significant experience with JavaScript code, follow the **Advanced - POST: Track users** tab for high-level instructions on writing your transformation code. @@ -120,7 +120,7 @@ Here, you will write transformation code to define how you’d like to map vario Your webhook integration is now complete! {% endtab %} -{% tab Beginner - PUT: Update catalog item %} +{% tab Beginner - PUT: Update multiple catalog items %} Here, you will write transformation code to define how you’d like to map various webhook values to Braze catalog item updates. @@ -130,19 +130,42 @@ Here, you will write transformation code to define how you’d like to map vario // Feel free to delete this entirely to start from scratch, or to edit specific components - // First, this code defines a variable, "brazecall", to build a PUT /catalogs/{catlalog_name}/items/{item_id} request + // First, this code defines a variable, "brazecall", to build a PUT /catalogs/{catalog_name}/items request // Everything from the incoming webhook is accessible via the special variable "payload" // As such, you can template in desired values in your request with JS dot notation, such as payload.x.y.z let brazecall = { - // For Braze Data Transformations to update Catalog items, the special variables "catalog_name" and "item_id" are required - // These variables are used to specify the catalog name and item ID which would otherwise go in the request URL + // For Braze Data Transformation to update Catalog items, the special variable "catalog_name" is required + // This variable is used to specify the catalog name which would otherwise go in the request URL "catalog_name": "catalog_name", - "item_id": payload.item_id, - // After the special variables, construct the Catalogs update request as usual below + // After defining "catalog name", construct the Update Multiple Catalog Items request as usual below + // Documentation for the destination endpoint: https://www.braze.com/docs/api/endpoints/catalogs/catalog_items/asynchronous/put_update_catalog_items/ "items": [ { + "id": payload.item_id_1, + "catalog_column1": "string", + "catalog_column2": 1, + "catalog_column3": true, + "catalog_column4": "2021-09-03T09:03:19.967+00:00", + "catalog_column5": { + "Latitude": 33.6112, + "Longitude": -117.8711 + } + }, + { + "id": payload.item_id_2, + "catalog_column1": "string", + "catalog_column2": 1, + "catalog_column3": true, + "catalog_column4": "2021-09-03T09:03:19.967+00:00", + "catalog_column5": { + "Latitude": 33.6112, + "Longitude": -117.8711 + } + }, + { + "id": payload.item_id_3, "catalog_column1": "string", "catalog_column2": 1, "catalog_column3": true, @@ -159,9 +182,9 @@ Here, you will write transformation code to define how you’d like to map vario return brazecall; ``` -2. Transformations for `/catalogs` destinations require a `catalog_name` and `item_id` to define the specific catalog and item that you’d like to update. You can hard code these values, or template in the value with a webhook value via a payload line. Use dot notation to access payload object properties.

-3. Define how to update the `item_id` (from Step 2 of this section) by modifying the items array. Again, you can hard code these values or template in a webhook value via a payload line.

If you're looking at the Braze catalog as a table, the `item_id` is a row in your catalog, and item objects (starting with “catalog_column1”) are column values for that row. Note that “catalog_column1” is a placeholder, so your catalog may not have this field. The item objects should only contain fields that exist in the catalog.

-4. Click Validate to return a preview of your code’s output and to check if it is an acceptable request for the Update catalog item endpoint.

+2. Transformations for `/catalogs` destinations require a `catalog_name` to define the specific catalog that you’d like to update. You can hard code this field, or template the field with a webhook field via a payload line. Use dot notation to access payload object properties.

+3. Define which items you’d like to update in the catalog with the `id` field(s) in the items array. You can hard code these fields, or template in a webhook field via a payload line.

Keep in mind, “catalog_column” is a placeholder value. Be sure item objects only contain fields that exist in the catalog.

+4. Click Validate to return a preview of your code’s output and to check if it is an acceptable request for the Update multiple catalog items endpoint.

5. Activate your transformation. For additional help with your code before activating it, contact your Braze account manager.

6. Make sure to check if your source platform has a setting to start sending webhooks. Your transformation code will run for each incoming webhook, and the catalog items will begin updating. diff --git a/_docs/_user_guide/data_and_analytics/query_builder.md b/_docs/_user_guide/data_and_analytics/query_builder.md index ae8cbf792d7..5152bf4adfc 100644 --- a/_docs/_user_guide/data_and_analytics/query_builder.md +++ b/_docs/_user_guide/data_and_analytics/query_builder.md @@ -9,7 +9,7 @@ tool: Reports # Query Builder -> With the Query Builder, you can generate reports using Braze data in Snowflake. The Query Builder comes with pre-built SQL [query templates](#query-templates) to get you started, or you can write your own custom SQL queries to unlock even more insights. +> With the Query Builder, you can generate reports using Braze data in Snowflake. The Query Builder comes with pre-built SQL [query templates]({{site.baseurl}}/user_guide/data_and_analytics/query_builder/query_templates/) to get you started, or you can write your own custom SQL queries to unlock even more insights. ## Who has access @@ -73,34 +73,7 @@ If a report times out or runs into errors even after retrying, please contact su All templates surface data from the last 60 days. You can access query templates by selecting **Create SQL Query** > **Query Template** when first creating a report. - - -| Query name | Description | Metrics | Preview | -| --- | --- | --- | --- | -| Channel engagement and revenue | For each channel, you'll see all engagement metrics for that channel (opens, clicks, etc), revenue, number of transactions, and average price. | {::nomarkdown} {:/} | ![]({% image_buster /assets/img_archive/query_builder_q1.png %}) | -| Email bounces per domain | Number of bounces per email domain | | ![]({% image_buster /assets/img_archive/query_builder_q4.png %}) | -| Email performance by country | For each country, you'll see the following metrics: sends, indirect open rate, and direct open rate. Country is the country of the user at the time of push send. | | ![]({% image_buster /assets/img_archive/query_builder_q3.png %}) | -| Email subscription group opt-ins and opt-outs | For each week, you'll see the number of unique user opt-ins and opt-outs of any email subscription groups. | | ![]({% image_buster /assets/img_archive/query_builder_q2.png %}) | -| Email URLs clicked | This report shows the number of clicks each link in an email had. To run this report, you'll need to specify the API identifier for a campaign or Canvas. You can find a campaign's API identifier at the bottom of that campaign's details page, and you can find the Canvas API identifier under **Analyze Variants**.

For each de-personalized link, you'll see a count of clicks. Your CSV download will include the user IDs of all users that clicked, the link they clicked on, and a timestamp of when they clicked. | **De-personalized URLs:** URLs that are stripped of any Liquid tags | ![]({% image_buster /assets/img_archive/query_builder_q5.png %}) | -| Revenue by country | This report provides revenue per country for a specific campaign/Canvas. To run this report, you'll need to specify the API identifier for a campaign or Canvas. You can find a campaign's API identifier at the bottom of that campaign's details page, and you can find the Canvas API identifier under **Analyze Variants**.

For each country, you'll see the amount of revenue generated, number of orders, number of returns, net revenue, and gross revenue. | {::nomarkdown} {:/} | ![]({% image_buster /assets/img_archive/query_builder_q6.png %}) | -| Push performance by country | For each country, you'll see the following metrics: deliveries, open rate, and click rate. Country is the country of the user at the time of email send. | | ![]({% image_buster /assets/img_archive/query_builder_q7.png %}) | -{: .reset-td-br-1 .reset-td-br-2 .reset-td-br-3 .reset-td-br-4} +See [Query templates]({{site.baseurl}}/user_guide/data_and_analytics/query_builder/query_templates/) for a list of available templates. ## Custom SQL diff --git a/_docs/_user_guide/data_and_analytics/query_builder/query_templates.md b/_docs/_user_guide/data_and_analytics/query_builder/query_templates.md new file mode 100644 index 00000000000..aebbb5bddea --- /dev/null +++ b/_docs/_user_guide/data_and_analytics/query_builder/query_templates.md @@ -0,0 +1,83 @@ +--- +nav_title: Query Templates +article_title: Query Builder Templates +page_order: 0 +page_type: reference +toc_headers: h2 +description: "This reference article lists the types of reports you can create using Braze data from Snowflake in the Query Builder." +tool: Reports +--- + +# Query Builder templates + +> Access [Query Builder]({{site.baseurl}}/user_guide/data_and_analytics/query_builder/) templates by selecting **Query Template** when creating a report. All templates surface data from up to the last 60 days, but you can directly edit that and other values in the editor. + +## Channel templates + + + +| Query name | Description | +| --- | --- | +| Channel engagement and revenue | For each channel, you'll see all engagement metrics for that channel (for example, opens and clicks), revenue, number of transactions, and average price. {::nomarkdown} {:/} ![]({% image_buster /assets/img_archive/channel_engagement_revenue.png %}) | +| Purchases and revenue by segment | This report provides metrics for the messages sent for a specific segment.

Purchase metrics are unique throughout the reporting period. One user can generate at most one purchase. Revenue takes into account every purchase from the reporting period. | +| Purchases and revenue for variants or steps, by segment | This report provides metrics for the variants or Canvas steps of the messages sent to each segment.

Purchase metrics are unique throughout the reporting period. One user can generate at most one purchase. Revenue takes into account every purchase from the reporting period. | +| Top/bottom messaging for purchases | This report shows purchase metrics for the top or bottom campaigns, Canvases, or Canvas steps. Each row is a campaign, Canvas, or Canvas step. You must specify whether to display the top or bottom performers, and the specific metric to run this analysis for (such as *Unique purchases upon receipt*, *Revenue upon receipt*, *Unique recipients*).

The rows in top performer reports will be ordered from best to worst, while the rows in bottom performer reports will be ordered from worst to best. | +{: .reset-td-br-1 .reset-td-br-2 } + +## Campaign templates + +| Query name | Description | +| --- | --- | +| Campaign revenue by country | This report provides revenue per country for a specific campaign. To run this report, you must specify the API identifier for a campaign. You can find a campaign's API identifier at the bottom of that campaign's details page.

For each country, you'll see the amount of revenue generated, number of orders, number of returns, net revenue, and gross revenue.

{::nomarkdown} {:/} ![]({% image_buster /assets/img_archive/campaign_revenue_country.png %}){: style="max-width:70%;"} | +{: .reset-td-br-1 .reset-td-br-2 } + +## Canvas templates + +| Query name | Description | +| --- | --- | +| Canvas revenue by country | This report provides revenue per country for a specific Canvas. To run this report, you must specify the API identifier for a Canvas. You can find the Canvas API identifier under **Analyze Variants**.

For each country, you'll see the amount of revenue generated, number of orders, number of returns, net revenue, and gross revenue.

{::nomarkdown} {:/} ![]({% image_buster /assets/img_archive/canvas_revenue_country.png %}){: style="max-width:70%;"} | +{: .reset-td-br-1 .reset-td-br-2 } + +## Email templates + +| Query name | Description | +| --- | --- | +| Email bounces per domain | The number of bounces per email domain, broken down into total bounces, hard bounces, and soft bounces.
![]({% image_buster /assets/img_archive/query_builder_q4.png %}){: style="max-width:60%;"} | +| Email delivery metrics by day | This report provides metrics for the messages sent on each day, such as how many emails were sent, delivered, soft bounced, and hard bounced.

All metrics are unique throughout the reporting period. For example, if a welcome email soft bounced one time on November 21, two times on November 22, and was never delivered: {::nomarkdown} {:/} ![]({% image_buster /assets/img_archive/email_delivery_day.png %})| +| Email engagement metrics by segment | This report provides metrics for the messages sent to each segment, such as how many emails were sent, delivered, soft bounced, and hard bounced.

All metrics are unique throughout the reporting period. For example, if a welcome email soft bounced one time on November 21, two times on November 22, and was never delivered: {::nomarkdown} {:/} ![]({% image_buster /assets/img_archive/email_engagement_segment.png %}) | +| Email engagement metrics for variants or steps, by segment | This report provides metrics for the variants or Canvas steps of the messages sent to each segment. These metrics include how many emails were sent, delivered, soft bounced, and hard bounced.

All metrics are unique throughout the reporting period. For example, if a welcome email soft bounced one time on November 21, two times on November 22, and was never delivered: {::nomarkdown} {:/} | +| Email performance by country | For each country, you'll see the following metrics: sends, indirect open rate, and direct open rate. Country is the country of the user at the time of push send.

![]({% image_buster /assets/img_archive/query_builder_q3.png %}) | +| Email Subscription Change Logs | For each user, you'll see the metrics that were logged about their subscription change, such as their email address, subscription status, the time their status was changed, and the associated Canvas or campaign. | +| Email subscription group opt-ins and opt-outs | For each week, you'll see the number of unique user opt-ins and opt-outs of any email subscription group.

![]({% image_buster /assets/img_archive/query_builder_q2.png %}){: style="max-width:70%;"} | +| Email URLs clicked | This report shows the number of clicks each link in an email had. To run this report, you'll need to specify the API identifier for a campaign or Canvas. You can find a campaign's API identifier at the bottom of that campaign's details page and the Canvas API identifier under **Analyze Variants**.

For each de-personalized link, you'll see a count of clicks. Your CSV download will include the user IDs of all users that clicked, the link they clicked on, and a timestamp of when they clicked.

*De-personalized URLs:* URLs that are stripped of Liquid tags.

![]({% image_buster /assets/img_archive/query_builder_q5.png %}){: style="max-width:70%;"} | +| Top/bottom messaging for email engagement | This report shows email engagement metrics for the top or bottom campaigns, Canvases, or Canvas steps. You must specify whether to display the top or bottom performers, and the specific metric to run this analysis for (such as *Sent*, *Soft Bounces*, and *Unique Opens*).

The rows in top performer reports will be ordered from best to worst, while the rows in bottom performer reports will be ordered from worst to best.

![]({% image_buster /assets/img_archive/top-bottom-email.png %}) | +{: .reset-td-br-1 .reset-td-br-2 } + +## Mobile templates + +| Query name | Description | +| --- | --- | +| Device carriers | The number of users per device carrier, such as Verizon and T-Mobile.

![]({% image_buster /assets/img_archive/device_carriers.png %}){: style="max-width:50%;"} | +| Device models | The number of users per device model, such as iPhone 15 Pro and Pixel 7.

![]({% image_buster /assets/img_archive/device_models.png %}){: style="max-width:50%;"} | +| Device operating systems | The number of users per operating system, such as 17.4 and Android 14.

![]({% image_buster /assets/img_archive/os_version.png %}){: style="max-width:50%;"} | +| Device screen resolutions | The number of users per device screen resolution, such as 1179x2556 and 750x1334.

![]({% image_buster /assets/img_archive/device_screen_resolutions.png %}){: style="max-width:40%;"} | +| SMS Error Codes | For each SMS error code, you'll see the error type and number of errors.

![]({% image_buster /assets/img_archive/sms_errors.png %}){: style="max-width:50%;"} | +| SMS Provide Errors by User | This report provides SMS error codes for a specific user. | +{: .reset-td-br-1 .reset-td-br-2 } + +## Push templates + +| Query name | Description | +| --- | --- | +| Push performance by country | For each country, you'll see the following metrics: deliveries, open rate, and click rate. Country is the country of the user at the time of email send.

![]({% image_buster /assets/img_archive/query_builder_q7.png %}){: style="max-width:70%;"} | +{: .reset-td-br-1 .reset-td-br-2 } \ No newline at end of file diff --git a/_docs/_user_guide/data_and_analytics/reporting/viewing_and_understanding_segment_data.md b/_docs/_user_guide/data_and_analytics/reporting/viewing_and_understanding_segment_data.md index 60c5669e1e2..71267dcdcca 100644 --- a/_docs/_user_guide/data_and_analytics/reporting/viewing_and_understanding_segment_data.md +++ b/_docs/_user_guide/data_and_analytics/reporting/viewing_and_understanding_segment_data.md @@ -65,10 +65,6 @@ On this page, you can view a number of user-specific attributes, such as gender, Your results will show the top (or bottom) campaigns, Canvases, or Canvas steps that you selected. For example, if you selected the top 10 campaigns for click rate, your results will show the top 10 campaigns ordered from highest to lowest click rate. Your columns will display all of the email engagement metrics for each row (campaigns, Canvases, or message steps). -{% alert note %} -The ability to break down performance data by segment in Query Builder report templates is currently in early access. Contact your customer success manager if you're interested in participating in this early access. -{% endalert %} - ![The Segment breakdown page contains a SQL editor, a side panel with tabs for Variables, Available Data Tables, Query History, and the AI Query Builder, and a results section.]({% image_buster /assets/img_archive/segment_breakdown.png %}) You can use [Query Builder]({{site.baseurl}}/user_guide/data_and_analytics/query_builder/) report templates to break down performance metrics for campaigns, Canvas, variants, and steps by segments. [Analytics tracking]({{site.baseurl}}/user_guide/data_and_analytics/tracking/segment_analytics_tracking#segment-analytics-tracking) must be turned on for the segments you want to access metrics for. diff --git a/_docs/_user_guide/engagement_tools/campaigns/building_campaigns/delivery_types/reeligibility.md b/_docs/_user_guide/engagement_tools/campaigns/building_campaigns/delivery_types/reeligibility.md index d34f33d2ae5..1111f47806e 100644 --- a/_docs/_user_guide/engagement_tools/campaigns/building_campaigns/delivery_types/reeligibility.md +++ b/_docs/_user_guide/engagement_tools/campaigns/building_campaigns/delivery_types/reeligibility.md @@ -46,6 +46,16 @@ Re-eligibility for both campaigns and Canvases are calculated in seconds, not ca Similarly, a month counts as exactly 2,592,000 seconds, equal to approximately 30 days. +### Examples + +Consider the following example: +* A campaign is set to send monthly on the 15th with re-eligibility set to 30 days. +* There are less than 30 days between February 15 and March 15. + +This means users who received the campaign on February 15 will not be eligible for the campaign to be sent on March 15. + +If the campaign is set to send daily at 8 am with re-eligibility of 1 day and there's a latency in sending the message, users who received the campaign at 8:30 am, for instance, will not be re-eligible yet on the following day at 8 am. + ## Multivariate testing With regards to multivariate testing, Braze determines variant re-eligibility for all campaigns, triggered in-app messages, and Canvases using the following rules: diff --git a/_docs/_user_guide/engagement_tools/canvas.md b/_docs/_user_guide/engagement_tools/canvas.md index b4102201acc..36828890d5d 100644 --- a/_docs/_user_guide/engagement_tools/canvas.md +++ b/_docs/_user_guide/engagement_tools/canvas.md @@ -4,11 +4,11 @@ article_title: Canvas layout: dev_guide page_order: 3 guide_top_header: "Canvas" -guide_top_text: "Marketing is a science that needs an artist's touch and specialized tools. With Canvas, you can mix rigor and artistry to create meaningful, relevant, and personal experiences for each customer.

Canvas is a unified interface where marketers can set up campaigns with multiple messages and steps to form a cohesive journey and compare and optimize those experiences using comprehensive analytics for the full user experience.

The following articles will walk you through setting up a Canvas and up-level your strategies as you build customer experiences. You can also check out our Canvas Braze Learning course!

**Canvas is only available to customers on annual contracts. If you are not on contract, contact Braze to learn how to get Canvas.**" +guide_top_text: "Marketing is a science that needs an artist's touch and specialized tools. With Canvas, you can mix rigor and artistry to create meaningful, relevant, and engaging experiences for each customer.

Canvas is a unified interface where marketers craft campaigns with multiple messages. It's a bit like a visual programming tool, letting you build a cohesive user journey out of a series of steps.

The following articles will walk you through setting up a Canvas, empowering you to build outstanding customer experiences. You can also check out our Canvas Braze Learning course!

**Canvas is only available to customers on annual contracts. If you are not on contract, contact Braze to learn how to get Canvas.**" search_rank: 3 page_type: landing tool: Canvas -description: "This landing page is home to Canvas articles. Here, you can find resources on building Canvases, Canvas components, managing and testing Canvases, and ideas and strategies." +description: "This landing page is home to Canvas articles. Here, you'll find resources on building Canvases, using Canvas components, managing and testing Canvases, and applying various ideas and strategies." guide_featured_title: "Sections" guide_featured_list: diff --git a/_docs/_user_guide/engagement_tools/canvas/canvas_components.md b/_docs/_user_guide/engagement_tools/canvas/canvas_components.md index c6828ceb5cf..13e0cd325f8 100644 --- a/_docs/_user_guide/engagement_tools/canvas/canvas_components.md +++ b/_docs/_user_guide/engagement_tools/canvas/canvas_components.md @@ -52,6 +52,8 @@ As of February 28, 2023, you will no longer be able to create or duplicate Canva ### Customizing user journeys +![]({% image_buster /assets/img/canvas_intro/canvas_intro.gif %}){: style="float:right;max-width:55%;margin-left:15px;"} + Use [Action Paths][1] to split your user journey based on actions and engagement events such as making a purchase. If you want to filter through and target your audiences, [Audience Paths][2] help simplify your user targeting by sending your users down different Canvas paths based on audience criteria. [Decision Split][3] components use a simple "yes or no" logic to create two mutually exclusive paths for your user journeys that are based on an action or a user attribute. This can help identify and target your user groups. diff --git a/_docs/_user_guide/engagement_tools/canvas/create_a_canvas.md b/_docs/_user_guide/engagement_tools/canvas/create_a_canvas.md index 51ec61d1a80..cb912ac86d1 100644 --- a/_docs/_user_guide/engagement_tools/canvas/create_a_canvas.md +++ b/_docs/_user_guide/engagement_tools/canvas/create_a_canvas.md @@ -4,7 +4,7 @@ article_title: Building Canvases page_order: 1 layout: dev_guide guide_top_header: "Building Canvases" -guide_top_text: "The following articles will help you create and launch a multi-dimensional Canvas." +guide_top_text: "The articles in this section will guide you in creating and launching a multi-dimensional Canvas quickly from ideation to execution to your users. With its intuitive drag-and-drop interface and space for collaboration, you can leverage this visual programming environment to help drive the best results for your customer engagement goals." page_type: landing description: "This landing page is home to resources that will help you create and launch a multi-dimensional Canvas such as how to create a Canvas, exception events, exit criteria, Canvas entry properties, and more." diff --git a/_docs/_user_guide/engagement_tools/canvas/get_started.md b/_docs/_user_guide/engagement_tools/canvas/get_started.md index 0210f559a81..dcccc90ff6a 100644 --- a/_docs/_user_guide/engagement_tools/canvas/get_started.md +++ b/_docs/_user_guide/engagement_tools/canvas/get_started.md @@ -7,7 +7,7 @@ guide_top_header: "Getting Started with Canvas" guide_top_text: "Before you send a Canvas, use these articles to guide your planning for your Canvas and the journey you plan to take your users through." page_type: landing -description: "This landing page is home to articles that can guide your planning for your Canvas and the journey you plan to take your users through." +description: "Check out these articles to learn the fundamental basics of Canvas to begin customizing and orchestrating the journey you want to take your users through." tool: Canvas search_rank: 2 guide_featured_title: "Section articles" diff --git a/_docs/_user_guide/engagement_tools/canvas/get_started/canvas_outlines.md b/_docs/_user_guide/engagement_tools/canvas/get_started/canvas_outlines.md index 96fe367ca42..9b33c9a155a 100644 --- a/_docs/_user_guide/engagement_tools/canvas/get_started/canvas_outlines.md +++ b/_docs/_user_guide/engagement_tools/canvas/get_started/canvas_outlines.md @@ -12,7 +12,7 @@ tool: Canvas [![Braze Learning course]({% image_buster /assets/img/bl_icon3.png %})](https://learning.braze.com/page/courses){: style="float:right;width:120px;border:0;" class="noimgborder"} -> The following article lists several examples that demonstrate how you can use Canvas to accomplish targeted, personalized messaging using a combination of [Delay]({{site.baseurl}}/user_guide/engagement_tools/canvas/canvas_components/delay_step/) and [Message]({{site.baseurl}}/user_guide/engagement_tools/canvas/canvas_components/message_step/) steps. +> This article highlights several examples that demonstrate how you can use Canvas to accomplish targeted, personalized messaging using a combination of [Delay]({{site.baseurl}}/user_guide/engagement_tools/canvas/canvas_components/delay_step/) and [Message]({{site.baseurl}}/user_guide/engagement_tools/canvas/canvas_components/message_step/) steps. Braze Learning also offers several dedicated Canvas courses that go over common Canvas outlines. Check them out for valuable insights into technical terms and concepts explained through a mix of videos, lessons, and interactive exercises. - [Create Customer Journeys with Canvas Flow](https://learning.braze.com/create-customer-journeys-with-canvas-flow) diff --git a/_docs/_user_guide/engagement_tools/canvas/get_started/the_basics.md b/_docs/_user_guide/engagement_tools/canvas/get_started/the_basics.md index 8300b06464c..9c233a0f7e2 100644 --- a/_docs/_user_guide/engagement_tools/canvas/get_started/the_basics.md +++ b/_docs/_user_guide/engagement_tools/canvas/get_started/the_basics.md @@ -10,7 +10,7 @@ tool: Canvas # Canvas basics -> This reference article covers the basics of Canvas, covering various questions you should ask yourself as you set up your first Canvas. +> This reference article covers the basics of Canvas, covering various questions you should ask yourself as you set up your first Canvas. We'll also explain the five W's (what, when, who, why, and where) of visualization and how this can shape and define how you can build your Canvas. ## Understanding Canvas structure @@ -18,7 +18,9 @@ Before getting started with the finer details of [Canvas setup]({{site.baseurl}} {% tabs %} {% tab Canvas %} - A Canvas is a unified interface where marketers can set up campaigns with multiple messages and steps to form a cohesive journey. + Canvas is a unified interface where marketers craft campaigns with multiple messages. It's a bit like a visual programming tool, letting you build a cohesive user journey out of a series of steps. + + ![]({% image_buster /assets/img/canvas_intro/canvas_intro.gif %}) {% endtab %} @@ -28,33 +30,33 @@ Before getting started with the finer details of [Canvas setup]({{site.baseurl}} {% endtab %} - {% tab Entry Wizard %} - The Entry Wizard includes the first steps to take when creating your Canvas. This includes basics such as naming your Canvas and adding teams. Essentially, the Entry Wizard is the crucial setup required prior to beginning building your Canvas. Here, you can control the way your users begin and fulfill their customer journey with options to edit the [entry schedule]({{site.baseurl}}/user_guide/engagement_tools/canvas/create_a_canvas/create_a_canvas/#step-2b-set-your-canvas-entry-schedule), [target audience]({{site.baseurl}}/user_guide/engagement_tools/canvas/create_a_canvas/create_a_canvas/#step-2c-set-your-target-entry-audience), and [send settings]({{site.baseurl}}/user_guide/engagement_tools/canvas/create_a_canvas/create_a_canvas/#step-2d-select-your-send-settings).

![]({% image_buster /assets/img_archive/canvas_flow_entry_wizard.png %}){: style="max-width:90%;"} + {% tab Canvas Builder %} + The Canvas builder maps out the steps to take when creating your Canvas. This includes basics such as naming your Canvas and adding teams. Essentially, the Canvas builder is the crucial setup required prior to beginning building your Canvas. Here, you can control the way your users begin and fulfill their customer journey with options to edit the [entry schedule]({{site.baseurl}}/user_guide/engagement_tools/canvas/create_a_canvas/create_a_canvas/#step-2b-set-your-canvas-entry-schedule), [target audience]({{site.baseurl}}/user_guide/engagement_tools/canvas/create_a_canvas/create_a_canvas/#step-2c-set-your-target-entry-audience), and [send settings]({{site.baseurl}}/user_guide/engagement_tools/canvas/create_a_canvas/create_a_canvas/#step-2d-select-your-send-settings).

![]({% image_buster /assets/img_archive/canvas_flow_entry_wizard.png %}){: style="max-width:90%;"} {% endtab %} {% tab Variants %} - A variant is the path each customer follows on their journey. Canvas supports up to eight variants with a control group. You can name each variant and control the distribution of the target audience following each variant.

![]({% image_buster /assets/img_archive/canvas_flow_variants.png %}){: style="max-width:90%;"} + A variant is the path each customer follows on their journey. Canvas supports up to eight variants with a control group. You control which segment of your audience will follow each variant.

![]({% image_buster /assets/img/canvas_intro/add_canvas_variant.gif %}) {% endtab %} {% tab Steps %} - A step in Canvas is a marketing decision point that determines your user journey. You can leverage [Canvas components]({{site.baseurl}}/user_guide/engagement_tools/canvas/canvas_components/#about-canvas-components) to build the steps of your user journey.
Within a step, you can set triggers or schedule delivery, refine targeting by adding filters or marking [exception events]({{site.baseurl}}/user_guide/engagement_tools/canvas/create_a_canvas/exception_events/) and add channels from email to push to webhooks.

![]({% image_buster /assets/img_archive/canvas_flow_step.png %}){: style="max-width:90%;"} + A step in Canvas is a marketing decision point: "if this, then that." Leverage [Canvas components]({{site.baseurl}}/user_guide/engagement_tools/canvas/canvas_components/#about-canvas-components) to build the steps of a user journey.
Within a step, you set triggers or schedule delivery, refine targeting by adding filters or marking [exception events]({{site.baseurl}}/user_guide/engagement_tools/canvas/create_a_canvas/exception_events/), and specify different channels like push notifications or webhook events.

![]({% image_buster /assets/img/canvas_intro/add_canvas_step.gif %}) {% endtab %} {% endtabs %} ## Building the customer journey -By using the five W's of visualization, you can identify your customer engagement strategies for how to create a personalized message journey for each user. These five W's are: what, when, who, why, and where. +Using the five W's (what, when, who, why, and where) of visualization can help identify your customer engagement strategies for how to create a personalized message journey for each of your users. ### The "what": Name your Canvas > What are you trying to help the user do or understand? -Never underestimate the power of the name. Braze is built for collaboration, so this is a good time to get grounded in how you'll communicate goals with your team. +Never underestimate the power of the name. Braze is built for collaboration, so this is a good time to get grounded in how you'll communicate goals with your team. -You can add tags and name both steps and variants within the Canvas. For more on customer journeys, check out our Braze Learning course on [mapping user lifecycles](https://learning.braze.com/mapping-customer-lifecycles)! +You can add tags and name the steps and variants in a Canvas. For more on customer journeys, check out our Braze Learning course on [mapping user lifecycles](https://learning.braze.com/mapping-customer-lifecycles). ### The "why": Identify conversion events @@ -87,15 +89,14 @@ Scheduled delivery allows you to send a Canvas immediately to your target audien To define your "who", you can use pre-defined segments available in Canvas. You can also add more filters to further focus on connecting to your targeted audience. After building these segments, only the users who match the target audience criteria can enter the Canvas journey, leading to a more personalized experience. See this table for available filters and how they segment your users to fit your use case. -| Filter | Description | -|---|---| -| Custom Data | Segment users based on events and attributes you define. Can use features specific to your product. | -| User Activity | Segment customers based on their actions and purchases. | -| Retargeting | Segment customers who have been sent, received, or interacted with previous Canvases. | -| Marketing Activity | Segment customers based on universal behaviors such as the last engagement. | -| User Attributes | Segment customers by their constant attributes and characteristics. | -| Install Attribution | Segment customers by their first source, ad group, campaign, or ad. | -{: .reset-td-br-1 .reset-td-br-2} +| Filter | Description | +|---------------------|-----------------------------------------------------------------------------------------------------| +| Custom Data | Segment users based on events and attributes you define. Can use features specific to your product. | +| User Activity | Segment customers based on their actions and purchases. | +| Retargeting | Segment customers who have been sent, received, or interacted with previous Canvases. | +| Marketing Activity | Segment customers based on universal behaviors such as the last engagement. | +| User Attributes | Segment customers by their constant attributes and characteristics. | +| Install Attribution | Segment customers by their first source, ad group, campaign, or ad. | ### The "where": Find my audience @@ -115,7 +116,18 @@ This is where we determine which messaging channels make the most sense for your The "how" collectively summarizes how you'll create your Canvas and how you'll reach your users with your message. For example, in order for a message to be effective, you should optimize the timing of your messaging with regards to the time zones across your different users. -Answering "how" also determines the cadence for sending a Canvas to your audience (such as once a week, biweekly, etc.), and which messaging channels to leverage for each Canvas that you build as described with the "where". +Answering "how" also determines the cadence for sending a Canvas to your audience (such as once a week or biweekly), and which messaging channels to leverage for each Canvas that you build as described with the "where." + +## Example: Customer onboarding flow + +For example, let's say you're a marketer for MovieCanon, an online streaming services company, and you're in charge of creating an onboarding flow for new users of your app. By referencing the five W's, we could build out the Canvas in the following way. + +* **What**: Our Canvas name will be "New Onboarding Journey". +* **Why**: The goal of our Canvas is to welcome our users and have them continue engaging with the app. +* **When**: After a user first opens the app, we want to send them an email to welcome them. +* **Who**: We're targeting new users who are using our app for the first time. +* **Where**: We are confident we can reach new users through their email, which is how we've done all our past messaging. +* **How**: We want to set a one day delay as to not overwhelm our new users with notifications. After this delay, we'll send an email with a list of the most popular movies and TV shows to entice them to keep using the app. ## General tips diff --git a/_docs/_user_guide/engagement_tools/canvas/testing_canvases.md b/_docs/_user_guide/engagement_tools/canvas/testing_canvases.md index 58c76cf1ae7..f64b1d8f878 100644 --- a/_docs/_user_guide/engagement_tools/canvas/testing_canvases.md +++ b/_docs/_user_guide/engagement_tools/canvas/testing_canvases.md @@ -3,7 +3,7 @@ nav_title: Testing Canvases article_title: Testing Canvases layout: dev_guide guide_top_header: "Testing Canvases" -guide_top_text: "After you send your Canvas, you should always look at the results to ensure your Canvas went well and will affect your future messaging positively.

Here, you can find resources on Canvas analytics and other reports to help you measure the effectiveness of your messaging." +guide_top_text: "After you send your Canvas, you should always look at the results to ensure your Canvas went well and will affect your future messaging positively.

Here, you'll find resources on Canvas analytics and other reports to help you measure the effectiveness of your messaging for your users." page_order: 4 tool: