2022년 7월, 브레이즈(Braze)의 캔버스 플로우(Canvas Flow)가 새롭게 출시되었습니다. Canvas Flow는 기존 Canvas의 사용성과 복잡도를 개선한 새로운 UI/UX 버전인데요. 브레이즈 사용자는 Canvas Flow로 보다 더 쉽게 최적의 CRM 시나리오를 설계할 수 있게 되었습니다. 브레이즈는 기존 Canvas와 관련된 기능 제공을 곧 종료하고, 올 상반기 내로 Canvas Flow로 최종 이관할 예정이라고 공지했습니다. 따라서 기존 Canvas를 자주 활용하고 있었다면, 앞으로 사용해야 하는 Canvas Flow에는 어떤 기능들이 추가되었고 변경되었는지 인지하고 있어야 하는데요. 이번 포스트에서는 기존 Canvas와 Canvas Flow의 차이점에 대해 살펴보겠습니다.
본 포스트는 Braze의 아래 자료에 기반하여 작성되었습니다.
- What are the main differences between Canvas Flow and the original Canvas editor?
- Canvas entry properties and event properties
Canvas Flow로 변경되면서 가장 눈에 띄는 차이점은 기존 Canvas에서 디폴트로 제공되었던 Full Step이 사라졌다는 것인데요. Canvas Flow에서는 Full Step을 구성하고 있던 Delay, Audience, Messages 등의 기능들을 Delay, Audience Paths, Message 등 개별 Component들로 구현할 수 있습니다. 그리고 이러한 Component는 왼쪽 Canvas Component Toolbar에서 선택 후 Drop하거나, +버튼을 클릭하여 추가할 수 있습니다.
기존 Canvas에 존재하던 Full Step의 Delay에서는 immediately, after, on the next, in 옵션을 제공했다면, Canvas Flow의 Delay Component에서는 After a duration, Until a specific day, Until a specific day of the week 옵션이 존재합니다. 즉, Delay Component는 설정한 기간/일자가 지날 때까지 대기해야만 다음 Step으로 넘어갈 수 있습니다.
만약 Full Step의 Delay와 Delay Component를 아래와 같이 설정하여 유저가 각 Step에 4월 1일 2:01pm에 진입했다고 가정한다면 Canvas는 아래와 같이 진행됩니다.
기존 Canvas에서는 Full Step에 진입한 시간 내에서 지정된 특정 시간인 4월 2일 2pm에 메시지가 전송됩니다.
반면, Canvas Flow에서는 Delay Component의 ‘After a Duration’에서 ‘Calendar Days’, ‘Days’과 같은 옵션을 선택할 수 있습니다.
그중 ‘Calendar Days’는 유저가 Delay Component에 진입한 시점부터 자정까지, 즉 달력 기준으로 하루를 계산하며, ‘Days’는 Delay Component에 진입한 시점부터 24시간이 지났을 때 하루가 지났다고 계산합니다.
따라서 Delay Component에서 위와 같이 After a duration 및 1 Calendar Days 를 설정할 경우, 유저가 Delay Component에 4월 1일 2:01pm에 진입했다면 4월 2일 2pm에 다음 Step으로 넘어갑니다. 즉, 기존 Canvas의 Full Step과 동일하게 구현 가능합니다.
하지만, After a Duration 및 1 Days로 설정하는 경우에는 다르게 동작합니다. 동일하게 유저가 4월 1일 2:01pm에 Delay Component에 진입했다고 가정하면, 진입 시점에서 24시간이 지난 4월 2일 2:01pm가 하루 뒤가 됩니다. 따라서 4월 3일 2pm가 지정한 특정 시간이 되며, 4월 3일 2pm에 유저는 다음 Step으로 넘어갑니다.
기존 Canvas에서는 Full Step의 Delay에서 Intelligent Timing 기능을 설정할 수 있었던 반면, Canvas Flow에서는 Message Component의 Delivery Settings에서 설정할 수 있습니다.
기존 Canvas에서는 Full Step의 Delay에서 ‘Override Quiet Hours for this step’ 체크박스를 활용해 Quiet Hours 기능을 적용할지 선택할 수 있었습니다. Canvas Flow에서는 Message Component의 Delivery Settings 탭에서 Quiet Hours를 적용할지 토글을 On 또는 Off 하여 선택할 수 있습니다.
Delivery Validations는 Message Component에 진입한 유저에게 메시지를 보내는 시점에 유저가 여전히 Segment과 Additional Filter 조건을 충족하는지 한 번 더 확인하는 기능입니다. Delivery Validations에 설정한 조건을 충족하지 않는 유저는 다음 Step으로 넘어가지 않고 Canvas에서 바로 이탈합니다.
Canvas Flow는 Message Component에 진입한 모든 유저를 다음 Step으로 진행시킵니다. 즉, Full Step의 Advancement Behavior 설정에서 Immediately Advance Audience가 기본으로 적용됩니다.
Message Component에서 메시지를 받은 유저만 다음 Step으로 넘어가도록 Advance When Message Sent 설정을 Canvas Flow에서 구현하고 싶다면, Audience Paths를 Message Component 다음 Step으로 추가하여 이전 Step에서 메시지를 받은 유저만을 필터링해야 합니다.
기존 Canvas에서는 Full Step의 Delay에서 Action-based를 선택하여 트리거 시점과 메시지 전송 시점 사이에 딜레이가 있을 경우, Exception Event를 설정하여 특정 이벤트를 설정한 유저들에게는 메시지를 전송하지 않도록 설정할 수 있었습니다.
Canvas Flow에서는 이때의 Exception Event 기능을 Action Paths에 Message Component를 연결하여 구현할 수 있습니다. 즉, Action Paths의 특정 그룹에 Exception Event를 설정하여 특정 기간 동안 Exception Event를 수행하지 않은 그룹(Everyone Else)에게만 Message Component를 연결시켜 메시지를 전송하도록 세팅하여 구현합니다.
Full step의 Delay에서 Action-based를 선택하면 immediately, in, after, on the next 옵션을 제공했는데요. Canvas Flow의 Action Paths에서는 After a X time window만을 지원합니다.
Canvas Entry Properties란, Action-based Delivery 혹은 API-triggered Delivery 옵션으로 Canvas에 유입될 때 트리거 되는 Custom Event나 Purchase Event의 Properties 혹은 API-trigger request 문에 담긴 canvas_entry_properties를 의미합니다.
Canvas에 유입될 때의 정보인 Canvas Entry Properties는 메시지 내용에 개인화 태그(Personalized Tag)로 적용하여 유저별로 개인화된 메시지를 전송할 때 활용할 수 있는데요. 기존 Canvas에서는 첫번째 Full Step에서만 Canvas Entry Properties를 사용할 수 있었다면, Canvas Flow에서는 순서와 상관없이 모든 Message Component에서 사용할 수 있습니다.
Event Properties란, Step을 트리거하는 Custom Event나 Purchase Event의 Properties를 의미합니다. 기존 Canvas에서는 Full step에 Action-based를 설정한 경우에만 메시지 내용에 Event Properties를 개인화 태그로 적용하여 개인화된 메시지를 전송할 수 있었습니다. 하지만, Canvas Flow에서는 Action Paths에서 이어지는 첫번째 Message Component에서 Event Properties를 개인화 태그로 사용할 수 있습니다. 이때, Action Paths와 Message Component 사이에 Message Component가 아닌 다른 Step이 있어도 사용할 수 있습니다. 또한 Action Paths에서 Everyone Else가 아닌 Group으로 이어진 Message Component에서만 사용할 수 있습니다.