CRM 마케팅에서 개인화는 고객의 요구와 선호에 맞춘 맞춤형 커뮤니케이션을 제공하여 고객과의 관계를 강화하는 핵심 요소입니다. 개인화된 CRM 메시지는 고객들이 보다 개인적이고 의미 있는 경험을 느끼게 하여 브랜드 충성도를 높이고 제품 사용에 긍정적인 영향을 미칩니다.
브레이즈(Braze)에서는 커스텀 어트리뷰트(Custom Attribute) 및 커스텀 이벤트(Custom Event)로 수집하는 데이터를 사용해 유저에게 개인화된 CRM 메시지를 발송할 수 있습니다. 보다 더 고도화된 개인화 CRM 캠페인 운영을 희망한다면, 실시간 데이터 혹은 브레이즈로 수집하지 않는 외부의 데이터를 개인화 메시지에 활용할 수 있도록 하는 ‘커넥티드 콘텐츠(Connected Content)’ 기능을 사용할 수도 있습니다.
이번 포스트는 브레이즈에서 초개인화된 CRM 마케팅 운영을 가능하게 하는 커넥티드 콘텐츠에 대해 다룰 예정입니다. 순서대로 커넥티드 콘텐츠 기능 설명, 사용 방법 및 예시, 단계별 설정 방법 및 고려해야 하는 사항을 소개하겠습니다.
커넥티드 콘텐츠란, 브레이즈에 저장되지 않은 외부의 데이터를 브레이즈로 불러오는 기능입니다. 커넥티드 콘텐츠를 사용하면 메시지를 보내는 순간에 고객사에서 세팅한 API를 호출(Request)하고, 응답받은 결과(Response)를 메시지에 활용할 수 있습니다.
또한 커넥티드 콘텐츠로 받아온 결과는 Liquid라는 템플릿 언어를 사용하여 메시지 안에서 가공하거나, 브레이즈의 유저 어트리뷰트, 커스텀 어트리뷰트, 이벤트 프로퍼티 등과 조합하여 사용할 수 있습니다.
다음 4가지 목적으로 사용할 수 있습니다.
1) 유저 별로 극대화된 개인화 메시지를 전송하고 싶을 때 사용합니다.
2) 민감한 정보를 브레이즈에 저장하지 않고 메시지를 전송하고 싶을 때 사용합니다.
3) 실시간성이 중요한 정보를 메시지에 반영하고 싶을 때 사용합니다.
4) 벤더사로 Webhook을 발송하기 위해 필요한 값을 받아야 할 때 사용합니다.
1) 메시지 발송 직전에 API를 호출하기 때문에, 가장 최신의 정보를 얻을 수 있습니다.
2) 불러온 정보는 저장하지 않기 때문에 별도로 Data point가 차감되지 않습니다.
1) 커넥티드 콘텐츠를 사용하려면 반드시 활용 가능한 API가 필요합니다. 만약 활용 가능한 API가 없다면 내부 개발팀에 개발 요청이 필요합니다.
2) 브레이즈가 메시지를 빠르게 전송하기 위해서는 API가 단기간에 많은 양의 트래픽을 소화할 수 있어야 합니다. 다만 분당 호출 횟수를 조절할 수 있습니다. 조절 방법은 이 글의 ‘2) 캠페인 제반 설정 및 개발 단계’을 참고해주세요.
3) 커넥티드 콘텐츠로 불러온 정보로 세그먼트 생성 등은 불가능합니다. 커넥티드 콘텐츠로 불러온 데이터는 메시지에 활용될 뿐, 저장되지 않기 때문입니다.
4) 커넥티드 콘텐츠는 정보를 받아오는 기능만 수행합니다. 가져온 정보를 바탕으로 조건문(If문, Case문 등)을 사용하는 등의 추가 작업이 필요하다면 Liquid 템플릿 언어를 함께 사용해야 합니다.
5) Liquid로 조건문을 사용하여 유저에게 다른 메시지를 전송하는 경우, 메시지별 성과 분석은 어렵습니다. 따라서 A/B 테스트 용도로는 적합하지 않습니다.
커넥티드 콘텐츠의 3가지 필수 구성요소는 다음과 같습니다.
샘플 API를 사용해 커넥티드 콘텐츠로 데이터를 불러오는 방법을 알아보겠습니다.
사용할 샘플 API : https://run.mocky.io/v3/cfd6a7ee-260c-4f3e-84ba-bb8674f91eed
참고사항
Mock API로 JSON 형태의 Response만 정의하면 빠르게 샘플 API를 만들어 커넥티드 콘텐츠를 테스트할 수 있습니다. 제가 사용한 Mock API 제작 서비스는 Mocky입니다.
Request 예시
{% connected_content https://run.mocky.io/v3/cfd6a7ee-260c-4f3e-84ba-bb8674f91eed :save info %} → URL 정보를 불러와 info 라는 변수에 저장합니다.
{{info}} → 저장한 info 를 메시지에 불러옵니다.
Response 예시
{"user_id"=>"AB180-01", "recommended_item"=>[{"item_id"=>"1028017781",
"item_name"=>"막스스튜디오 프렌치린넨블렌드 카라니트 3종", "item_category"=>"패션의류",
"item_image_url"=>"https://asset.m-gs.kr/prod/1028017781/1/550",
"item_landing_url"=>"https://www.gsshop.com/prd/prd.gs?prdid=1028017781&lsectid=1378781&
rank=4&lseq=403259"}], "__http_status_code__"=>200}
아래 연산자를 사용하여 Response에서 필요한 값만 선택할 수 있습니다.
예를 들어, Response에서 첫번째 상품의 item_name만 가져오고 싶다면 아래와 같이 작성할 수 있습니다.
{{info.recommended_item[0].item_name}}
→ info의 recommened_item의 첫번째 값에서 item_name을 선택합니다.
앞서 불러온 메시지는 Liquid 템플릿 언어를 활용해 조건문을 작성하여 유저마다 다른 메시지를 전송하거나, 조건에 부합하지 않은 유저에게는 {% abort_message %} 태그를 사용해 메시지를 전송하지 않을 수도 있습니다. 또한 {% abort_message %} 에 String 문구를 추가하면 메시지가 전송되지 않은 이유를 Settings > Message Activity Log 에 남길 수도 있습니다.
기타 Liquid 를 활용한 다양한 조건문 예시는 브레이즈의 Liquid Use Case Library를 참고해주세요.
커넥티드 콘텐츠를 처음 사용하는 분들은 설정 과정에서 가장 어려움을 많이 겪습니다. AB180은 다양한 고객사들을 지원드리면서 커넥티드 콘텐츠를 성공적으로 구축하는 경험을 쌓았습니다. 이를 바탕으로 커넥티드 콘텐츠를 설정할 때 필요한 단계별 준비 방법을 소개합니다.
크게 ‘캠페인 기획 → 캠페인 제반 설정 및 개발 → 캠페인 운영 → 캠페인 관리’ 단계로 이루어져 있습니다.
마케터가 캠페인을 기획할 때 커넥티드 콘텐츠 기능의 필요성을 인지하고, 캠페인에 필요한 정보를 구체화합니다.
(1) 캠페인을 기획하고, 캠페인 운영에 커넥티드 콘텐츠가 필요한지 판단합니다.
캠페인에 커넥티드 콘텐츠를 사용해야 하는지 판단할 수 있는 일반적인 기준 몇가지를 소개합니다:
참고사항
브레이즈는 커넥티드 콘텐츠로 불러온 데이터를 저장하지는 않으나, 처리합니다. 따라서 커넥티드 콘텐츠를 통해 브레이즈로 불러오는 정보가 개인정보인 경우, 사내 법무팀과 개인정보 활용 가능 여부를 검토하시길 권장드립니다.
(2) 캠페인 운영에 필요한 사항들을 정리합니다.
⓵ 메시지에 필요한 정보 구체화
메시지에 필요한 모든 정보를 API에서 제공하는지 확인하기 위한 사전 작업입니다.
예를 들어, 포인트 정보를 캠페인에 활용하고 싶다면 ‘포인트(예시 값: 500)’ 으로 정리합니다.
필요한 정보를 구체화하는 팁
임시 메시지를 작성해보면서 필요한 정보를 정리하시길 추천드립니다. 동일한 목적의 캠페인을 기획하더라도 메시지별로 활용하려는 정보는 다를 수 있습니다. Compose Messages 단계에서 메시지 문구를 정리하면 필요한 정보를 정의하는 데 도움이 됩니다.
커넥티드 콘텐츠는 파란색 ‘+’ 버튼이 있는 Title, Message, Button, Image, Web URL, Deeplink 영역 등에 모두 활용 가능합니다.
② 예상 API 호출량(Request 수)을 산정합니다.
API를 안정적으로 사용하려면 API가 호출될 예상 호출량을 산정해야 합니다. 커넥티드 콘텐츠는 기본적으로 타겟 유저 당 한 번의 리퀘스트를 전송합니다. 하지만 Validation/Retry 로직 등으로 동일한 유저 대상으로 여러 번의 리퀘스트가 전송될 수 있습니다. (브레이즈 가이드 Performance 영역)
따라서 Target Audiences의 ‘Reachable Users’를 사용해서 호출량을 예측하되, 캠페인 목표 유저 수보다 여유있게 산정하시는 것을 권장드립니다.
위 2가지 정보를 파악했다면, 캠페인 운영에 필요한 정보를 제공하는 API가 있는지 개발자와 함께 확인합니다.
커넥티드 콘텐츠를 활용하기 위해 사전에 제반 사항을 논의하고 설정하는 단계입니다. 개발자가 마케터의 요청을 확인하고 내부에 활용 가능한 API가 존재하는지 확인합니다. 적합한 API가 없을 경우 개발이 필요합니다.
(1) API가 사용 가능한지 검토합니다. 아래 검토 사항은 브레이즈 공식 가이드인 Making an API call 과, Local Connected Content variables 가이드에 기반하고 있습니다.
⓵ Request 검토 사항
② Response 검토 사항
(2) 예상 호출량을 정합니다.
API의 처리량을 고려하여 마케터가 요청한 호출량을 받아들일 수 있는지 확인해주세요. 브레이즈는 타겟 유저 당 여러 건의 리퀘스트를 호출할 수 있으므로 예상 호출량을 여유있게 계산할 것을 권장합니다. 브레이즈는 분당 Rate Limit 과 데이터 캐싱 방식으로 호출량을 조절하는 옵션을 제공합니다. 필요에 따라 마케터와 아래 옵션을 사용하는 방안에 대해 논의할 수 있습니다.
⓵ 옵션1: 분당 Rate Limit
② 옵션2: 데이터 캐싱 방식 (cache_max_age)
동일한(Identical) 리퀘스트 발생 시, 브레이즈가 API를 추가로 호출하지 않고 캐싱해둔 데이터를 재사용하는 최대 시간을 의미합니다.
커넥티드 콘텐츠를 사용한 개인화 캠페인을 운영할 준비를 완료한 후, 운영할 캠페인을 설정하는 단계입니다.
(1) 발송 시점, 발송 타겟, 목표 전환(Conversion) 등 캠페인 운영을 위한 다른 단계들을 설정해주세요.
(2) 커넥티드 콘텐츠가 적용된 Liquid 코드를 메시지에 입력한 다음, 개인화된 정보나 조건문의 조건이 메시지에 의도대로 반영되는지 점검해주세요.
(1) 개발한 API를 가지고 Compose Messages에서 커넥티드 콘텐츠 코드를 작성해주세요.
(2) 메시지에서 조건문 등을 활용할 경우 Liquid 구문을 함께 작성해주세요.
(1) 커넥티드 콘텐츠 코드 작성 팁
(2) 메시지 예외 처리 방법
(3) 테스트 및 디버깅 방법
(1) 동일한 API를 다른 캠페인에서 사용할 경우 호출량이 증가하므로, 사전에 개발팀에 예상 증가량을 공유해주세요.
(1) 초반에는 일별 및 주별로 호출량을 모니터링하면서 호출량을 최적화할 것을 권장드립니다.
(2) API Key 변경 등 API 스펙이 바뀌는 경우, 브레이즈가 Response를 가져오지 못할 수 있습니다. 스펙이 바뀐다면 브레이즈 커넥티드 콘텐츠 코드도 수정해주시길 바랍니다.
(3) ‘Content Block’ 기능을 사용하면 코드 관리가 용이합니다. 브레이즈에서는 자주 사용하는 HTML 및 TEXT 데이터를 하나의 블록으로 만들어서 저장하는 Content Block 기능을 제공합니다. 이에 자주 사용하는 커넥티드 콘텐츠와 Liquid 문을 Block으로 저장하고, 한번에 관리하시는 것을 권장드립니다. (Content Blocks 가이드)
지금까지 커넥티드 콘텐츠 기능, 사용 방법 및 실제 캠페인에 반영되기까지의 절차에 대해 알아보았습니다. 여기까지 읽으신 여러분들은 이제 커넥티드 콘텐츠를 사용한 개인화된 캠페인을 운영할 준비가 모두 완료되었습니다! 커넥티드 콘텐츠를 사용해, 맞춤화된 개인화 정보를 활용하여 유저의 메시지 반응률을 향상시키는데 성공하기를 바랍니다. :)
AB180 블로그의 ‘Braze, Connected Content 활용하여 버려진 장바구니 캠페인 만들기(심화편)’ 글에서 구체적인 구현 실습과 함께 커넥티드 콘텐츠를 실제로 어떻게 활용할 수 있는지 알아볼 수 있습니다. 타사의 커넥티드 콘텐츠 활용 사례가 궁금하시다면 Success Case에 수록된 아래 인터뷰를 참고해보시길 추천드립니다.
→ 카카오스타일, CRM 개인화 캠페인으로 2배 이상의 성과를 거두고 있습니다.
→ 크몽, 휴먼 클라우드를 만들기 위한 빠른 액션과 분석을 브레이즈와 앰플리튜드에서 구현하고 있습니다.
→ 원티드랩, “데이터가 흐르는 원티드, 누구나 직접 데이터를 확인하고 분석하며 일해요”
브레이즈를 사용하고 계시다면 커넥티드 콘텐츠와 관련된 추가 문의사항은 담당 CSM에게 문의주시길 바라며, 커넥티드 콘텐츠를 비롯한 브레이즈의 개인화 기능에 관심 있으시다면, 아래 도입 문의하기를 클릭하여 AB180에 연락주세요!