Braze 입문 1편 — Customer Engagement Platform · 5 핵심 개념

2026-05-17Braze 입문에서 운영까지

Braze 입문 1편. Customer Engagement Platform (CEP) 으로서의 Braze. 5 핵심 개념 (User · Segment · Campaign · Canvas · Content Card), 6 채널 (Email · Push · SMS · In-app · Web Push · Content Card), 데이터 모델 (User Attribute · Event · Purchase · Custom Attribute), SDK 종류, Liquid templating, Connected Content, Currents (이벤트 export), 도입 결정 + 경쟁 도구 (Iterable · Klaviyo · Customer.io · Salesforce MC) 비교까지 풀어쓴 학습 노트.

📚 Braze 입문에서 운영까지 · 1편 — Customer Engagement Platform · 5 핵심 개념

오늘부터 Braze 입문에서 운영까지 시리즈를 시작해요. 1편은 Braze 가 도대체 뭘 해주는 플랫폼인가 — 큰 그림.

📚 학습 노트

이 시리즈는 Braze 공식 문서와 일반 marketing automation (마케팅 자동화 도구 전반) 지식을 참고해 한국어 학습 노트로 풀어쓴 자료예요.

Braze 무료 trial 또는 다른 marketing tool 의 sandbox 로 작은 캠페인 한두 개를 직접 보내 보면 본문이 머리에 훨씬 잘 박혀요.

처음 들으면 어렵게 느껴지는 이유

Braze 가 처음 헷갈리는 건 이름이 비슷한 도구 들이 5개+ 라서예요. 큰 카테고리로 나누면 이렇게 다섯입니다 — 고객 소통 전반을 한 화면에서 다루는 Customer Engagement Platform (CEP) 에 Braze · Iterable, 고객 데이터 통합이 본업인 Customer Data Platform (CDP) 에 Segment · Rudderstack, 이메일·캠페인 자동화 위주의 Marketing Automation 에 HubSpot · Marketo · Mailchimp, 메일 발송 인프라인 Email Service Provider (ESP) 에 Mailgun · SendGrid · Postmark, 그리고 푸시만 다루는 Push 전용 에 OneSignal · Firebase Cloud Messaging.

5 카테고리의 경계흐릿 해요. Braze 는 어디에 속하나? — CEP 이 정답인데, CDP · Marketing Automation · ESP · Push 전용기능을 다 일부 포함 해서 헷갈려요.

해결법은 비유 하나로. Braze = "고객과 multi-channel 로 대화하는 통합 운영실". 어느 채널 (email · push · SMS · in-app · web push) 이든 + 어떤 시점에 무엇 보낼지결정과 자동화 + 결과 측정 을 한 plat 에서. 비슷한 도구들 (Iterable · Klaviyo · Salesforce Marketing Cloud · Customer.io · MoEngage) 도 같은 카테고리 — 세부 강점이 다를 뿐.

Braze 한 줄 정의

Braze 는 고객과 더 영향력 있는 경험을 조성 하도록 설계된 고성능 마케팅 플랫폼. — 공식 docs

쉽게 풀면 — 고객의 라이프사이클 (가입 · 활성 · 결제 · 이탈) 마다 적절한 시점 + 적절한 채널 로 메시지 보내는 인프라.

대표 사용은 이런 식이에요. 가입 후 1시간 에 welcome email 한 통, 카트 추가 후 24시간 미결제 사용자에게는 "장바구니에 두고 가셨네요" push 알림, 결제 직후 에는 "주문 확인" SMS, 비활성 7일 된 사용자한테는 in-app 으로 "오랜만에 오셨어요", 그리고 이탈 위험 detect 시점에 할인 쿠폰 이메일.

이런 고객 여정 (journey)코드 없이 운영자가 설계 + 자동 실행 이 Braze 의 본질.

5 핵심 개념

Braze 의 모든 기능은 5 개념의 조합.

개념 1: User — 모든 데이터의 단위

User 데이터 = REST API 또는 SDK 로 Braze 에 전송. — 공식 docs

비유 — 회사의 CRM 의 한 고객 레코드. Braze 의 모든 메시지 · 자동화 · 분석 의 기준 단위.

User 의 구성:

항목 의미
External ID 우리 시스템의 user ID (DB의 user.id)
Braze User ID Braze 내부 ID (자동 생성)
Standard Attributes email · phone · country · language · first_name 등
Custom Attributes tier · signup_year · last_order_date 등 (자유)
Events 사용자 행동 (login · purchase · page_viewed 등)
Purchases 결제 이력 (별도 모델)

개념 2: Segment — 사용자 그룹 정의

비유 — SQL WHERE 절을 대시보드에서 클릭 으로 정의.

Segment "VIP 한국 사용자":
  - Custom.tier = "premium" OR "enterprise"
  - Standard.country = "KR"
  - Custom.lifetime_purchases > 10
  - Last seen < 30 days ago

Segment 의 역할:

  • 캠페인의 대상 정의
  • Canvas (journey) 의 entry 조건
  • 분석의 group by 차원

한 번 정의한 segment 를 여러 캠페인 · journey 에서 재사용. Statsig 의 Segment 와 같은 개념.

개념 3: Campaign — 단일 메시지

비유한 시점, 한 채널, 한 메시지 의 단순 발송.

Campaign "여름 세일 알림":
  Channel: Email
  Audience: Segment "Active 사용자"
  Schedule: 2026-07-01 09:00 KST
  Content: "여름 세일 30% 할인"

Campaign 의 종류:

  • One-time — 특정 시간 1회 발송
  • Trigger-based — 사용자 행동 trigger (예: 카트 추가)
  • API-triggered — 우리 시스템 API 호출 시 발송
  • Recurring — 매주 · 매월 반복

→ 단순한 메시지 발송은 Campaign 으로 충분.

개념 4: Canvas — 다단계 Journey Orchestration

비유 — Campaign 이 단일 메시지 라면, Canvas 는 드라마 시나리오. 여러 단계 + 분기 + 시간 지연 + 조건부 메시지.

Canvas "신규 가입 onboarding":
  Step 1 (entry): 가입 직후
    → Email "환영합니다"

  Step 2: 24시간 후
    → 사용자 첫 결제 했나? 분기
      ├─ Yes: Email "감사합니다"
      └─ No: Push "첫 결제 5% 할인"

  Step 3: 7일 후 (No branch)
    → SMS "다시 와 주세요"

  Step 4: 30일 후
    → 비활성 사용자 segment 로 이동

여기서 정말 강력한 자리 — journey 의 모든 단계 + 분기 + 시점대시보드에서 시각적으로 설계. 코드 없이 PM · 마케터 가 직접.

Canvas vs Campaign 한 줄 비교:

  • Campaign = 단일 메시지 (이메일 · 푸시 · ...)
  • Canvas = 여러 단계 + 분기의 journey

대부분 복잡한 lifecycle 자동화 = Canvas. 단순 알림 = Campaign.

개념 5: Content Card — In-app inbox 메시지

비유 — push 알림은 밀어내는 메시지. Content Card 는 앱 안에 쌓이는 inbox.

앱 안 "알림함" 탭:
  - "이번 주 신상품 도착" (3시간 전)
  - "친구 초대하고 5,000원 받기" (어제)
  - "VIP 등급 도달 축하" (3일 전)

Content Card 의 특징:

  • 영구 노출 (사용자가 dismiss 할 때까지)
  • 앱 안 전용
  • 풍부한 UI (이미지 · CTA 버튼)
  • 읽음/dismissed 추적

push 와 보완 관계 — 긴급 = push, 지속 노출 = Content Card.

6 채널 — 어디서 사용자와 만나나

채널 특성 대표 사용
Email 긴 콘텐츠 · 모든 사용자 뉴스레터 · 영수증 · 마케팅
Push 짧고 즉시 · 앱 사용자 알림 · 긴급 · re-engagement
SMS 매우 짧음 · 거의 모든 사용자 인증 · 주문 확인 · 긴급
In-app Message 앱 안 모달 · 활성 사용자만 신기능 안내 · 가이드
Web Push 브라우저 push · 동의 사용자 웹 사용자 retention
Content Card 앱 inbox · 영구 노출 비긴급 안내 · 캠페인

모든 채널 = 한 plat 에서 통합 운영. 같은 사용자가 어떤 채널 어디서 만났는지 통합 추적.

채널 선택 가이드

긴급 + 즉시 (예: 결제 실패) → SMS · Push
정보 풍부 (예: 영수증) → Email
앱 사용 중 안내 → In-app Message
지속 노출 → Content Card
브라우저 사용자 → Web Push

우리 사용자가 어디 있나 + 메시지 긴급성 으로 채널 결정.

데이터 모델 — Braze 가 추적하는 4 단위

1. User Attributes

// SDK
braze.getUser().setEmail("user@example.com");
braze.getUser().setCountry("KR");
braze.getUser().setLanguage("ko");
braze.getUser().setCustomAttribute("tier", "premium");
braze.getUser().setCustomAttribute("signup_year", 2025);

고객 프로필 — 비교적 안정적 정보. 변경 시 update.

2. Custom Events

// 사용자 행동
braze.logCustomEvent("checkout_completed", {
    cart_value: 50000,
    items_count: 3,
    payment_method: "card"
});

braze.logCustomEvent("product_viewed", {
    product_id: "P-123",
    category: "shoes"
});

시점 + 속성 의 행동 기록. Canvas entry · 분석의 trigger.

3. Purchases

// 결제는 별도 모델
braze.logPurchase(
    "product_id",
    50000,
    "KRW",
    1,                          // 수량
    { ... 추가 속성 }
);

결제는 별도 추적 권장. LTV (Lifetime Value) · ARPU (Average Revenue Per User) 같은 표준 분석 자동.

4. Subscription State

braze.getUser().setEmailNotificationSubscriptionType("subscribed");
braze.getUser().setPushNotificationSubscriptionType("opted_in");

채널별 동의 상태. GDPR (EU 개인정보보호 규정) · KISA (한국인터넷진흥원) · CAN-SPAM (미국 마케팅 메일 법) 컴플라이언스 의 기본.

Dashboard 구조 — 6 큰 섹션

섹션 무엇
User Guide 마케터/PM 의 캠페인 · Canvas · Segment 운영
Developer Guide SDK 통합 · client/server 통합
API Guide REST API 기반 자동화
Technology Partners 사외 도구 통합
What's New 새 기능 · release notes
Compliance GDPR · KISA · CAN-SPAM 안내

우리 역할 (마케터 vs 개발자) 에 따라 시작점 다름.

SDK 종류 — 거의 모든 환경

Braze 가 지원하는 SDK 큰 묶음:

Client SDK

  • Web — JavaScript
  • iOS — Swift · Objective-C
  • Android — Java · Kotlin
  • React Native
  • Flutter
  • Roku
  • Unity (게임)

Server-side

  • REST API — 모든 언어
  • 공식 라이브러리 = Node.js · Python · Ruby · Go · PHP 등

대부분 환경 = Web SDK + iOS/Android SDK + Server REST API.

Liquid Templating — 메시지 동적 콘텐츠

Liquid 는 Shopify 가 만든 templating 언어. Braze 에서 메시지 콘텐츠 동적 생성 에 활용.

사용 예제

안녕하세요, {{ ${first_name} | default: '회원님' }}님!

지난 주문 {{ ${last_order_id} }} 의 적립금 {{ ${reward_points} }}원이 적립됐어요.

{% if ${tier} == 'premium' %}
  Premium 회원 전용 할인 쿠폰 SUMMER30 도 함께 드려요.
{% endif %}

같은 메시지를 사용자별 다른 콘텐츠 로. 이름·tier·과거 행동 모두 자동 치환.

여기서 시험 함정이 하나 있어요 — default 값 박지 않으면 attribute 없는 사용자"안녕하세요, 님!" 같은 어색한 메시지 받음. 모든 personalization = default fallback 필수.

Connected Content — 외부 데이터 lookup

비유 — 메시지 보낼 때 우리 회사 API 호출 해서 실시간 데이터 포함.

{% connected_content
   https://api.example.com/recommendations?user_id={{external_id}}
   :save recommendations
%}

{{ recommendations.title }} 같은 상품들이 잘 어울려요!

발송 직전에 external API 호출 → JSON 응답을 메시지에 박음. 실시간 개인화.

대표 사용처를 묶으면, 상품 재고·가격 의 실시간 확인, AI 추천 결과 호출, 날씨·환율 데이터 조회, 그리고 우리 DB 의 사용자별 정보 lookup 까지 한 자리에서.

Currents — 이벤트 export

Currents — Braze 의 모든 이벤트 데이터외부 시스템 (S3 · Kafka · Snowflake · ...) 으로 stream.

작동

[Braze]
  사용자 email_sent · email_opened · email_click · push_received · ...
  ↓ Currents
[우리 시스템]
  - Amazon S3 (data lake)
  - Snowflake (분석 웨어하우스)
  - Apache Kafka (실시간)
  - Google Cloud Storage
  - Azure Blob

→ Braze 의 모든 발송 · 응답 이벤트우리 데이터 시스템 으로. 통합 분석 · long-term storage · BI 연결.

Currents 의 의미

Braze 의 closed 시스템 회피. 데이터 우리가 통제 + 어떤 BI 도 활용.

통합 — 이미 쓰는 도구와 결합

카테고리 통합 대상
CDP Segment · Rudderstack · mParticle · Tealium
광고 Google Ads · Meta Ads · TikTok
분석 Mixpanel · Amplitude · Adobe · Google Analytics
데이터 웨어하우스 Snowflake · BigQuery · Databricks · Redshift (Currents)
CRM Salesforce · HubSpot
e-commerce Shopify · BigCommerce
AI · ML OpenAI · Anthropic Claude · 자체 모델 (Connected Content)

→ 대부분 환경 = 기존 도구 stack + Braze 추가 통합.

도입 결정 — 언제 가야 하나

도입 시그널 — 3 이상 해당 = 검토 시점

  • 마케팅 메시지 발송수작업 · 분산 도구 (이메일은 SendGrid, 푸시는 OneSignal, ...)
  • 사용자 lifecycle 캠페인 운영 — retention · re-engagement · churn 방지
  • segmentation 기반 마케팅 필요
  • 멀티 채널 메시지 일관성 필요
  • 마케터 자율 운영 (개발자 의존 X) 가 필요
  • 사용자 10K 이상 (자동화 가치 발생)

도입 시기 아님

  • 사용자 < 1K (overkill)
  • 마케팅 자체가 거의 없음 (B2B 내부 도구 등)
  • 예산 부족 (Braze 는 enterprise 가격)

경쟁 도구 비교

Braze 만이 정답 X. 우리 회사 fit 이 중요.

같은 CEP 카테고리

도구 강점 약점
Braze Multi-channel 완성도 · Canvas 강력 · enterprise 인기 비쌈 · 학습 곡선
Iterable Workflow studio · email 강점 UI 가독성 · 기능 분산
Customer.io 개발자 친화 · API 유연 UI 한계 · enterprise 약함
Klaviyo e-commerce 최강 · Shopify 깊은 통합 e-commerce 외엔 약함
MoEngage APAC 친화 · 가격 합리적 enterprise 완성도

다른 카테고리 도구

  • Salesforce Marketing Cloud — enterprise · CRM 통합 · 비싸고 복잡
  • HubSpot — inbound marketing · CRM 통합 · B2B 중심
  • Mailchimp — small business · email 중심 · 단순
  • OneSignal — push 전용 · 저비용

Braze 가 가장 강한 자리

  • multi-channel orchestration (Canvas)
  • enterprise 사용자 (Burger King · Disney · Sephora 등 reference)
  • 대규모 데이터 (수억 사용자)
  • technical 깊이 (Connected Content · Currents · Liquid)

Braze 가 약한 자리

  • Shopify 깊은 통합 = Klaviyo 우세
  • 작은 회사 · 단순 use case = overkill
  • 완전 self-host = Braze 는 SaaS 만
  • 오픈 소스 = X

자주 만나는 사고 — 도입 단계

사고 1: External ID 매핑 부재

원인 — Braze user 와 우리 DB user 의 연결 키 없음 → 같은 사용자가 두 entity 로.

해결External ID = DB user.id 일치. SDK 초기화 시 항상 setExternalId.

사고 2: Subscription 상태 무시

원인opt-out 한 사용자 에게 계속 마케팅 메시지 발송 → CAN-SPAM 위반.

해결channel 별 subscription state 추적 + 발송 시 자동 필터.

사고 3: Custom attribute cardinality 폭증

원인signup_timestamp 같은 고유 timestamp 를 attribute 로 저장.

해결 — 5편 Cardinality 통제 와 동일. 카테고리 가능한 값만 attribute, 고유 값은 event property.

사고 4: Liquid default 누락

원인{{first_name}} 의 default 없음 → "안녕하세요, 님!" 메시지.

해결모든 personalization = default 필수.

사고 5: Connected Content 의 latency

원인 — Braze 가 우리 API 응답 대기 → 발송 지연.

해결우리 API timeout 500ms 이내 보장 + cache 활용.

사고 6: Canvas 너무 복잡

원인20+ step 의 Canvas → 디버깅 어려움.

해결5~10 step 단위 로 분할. 복잡한 분기는 별도 Canvas.

사고 7: Currents 비용 폭증

원인모든 이벤트모든 destination 으로 stream → S3 · Snowflake 비용 ↑.

해결필요한 event 만 filter. retention 설정.

운영 권장 패턴

Pattern 1: 표준 SDK 통합

// Web (Next.js 등)
import * as braze from "@braze/web-sdk";

braze.initialize("YOUR_API_KEY", {
  baseUrl: "sdk.iad-01.braze.com",  // 지역별 endpoint
  enableLogging: false              // production
});

braze.changeUser(user.id);          // External ID
braze.getUser().setEmail(user.email);
braze.getUser().setCustomAttribute("tier", user.tier);
braze.openSession();

Pattern 2: 표준 event 명명

// 동사_명사 + snake_case
braze.logCustomEvent("signup_completed", { source: "google" });
braze.logCustomEvent("product_viewed", { product_id, category });
braze.logCustomEvent("cart_added", { product_id, quantity });
braze.logCustomEvent("checkout_started", { cart_value });

// Purchase 는 별도
braze.logPurchase("product_id", 50000, "KRW", 1, { ... });

5편 Event 설계 원칙 과 동일.

Pattern 3: Onboarding Canvas

Step 1 (entry: signup_completed event):
  → Email "환영합니다 + 첫 구매 5% 쿠폰"

Step 2 (24시간 후):
  분기: 사용자가 첫 결제 했나?
    Yes → 종료
    No → Push "쿠폰 곧 만료"

Step 3 (3일 후, No branch):
  → In-app message "튜토리얼 보기"

Step 4 (7일 후, 여전히 No):
  → SMS "5,000원 추가 할인"

Step 5 (14일 후):
  → 비활성 segment 로 분류

가장 흔한 표준 패턴.

Pattern 4: Cart Abandonment Canvas

Trigger: cart_added event 후 24시간 미결제

Step 1: Email "장바구니에 두고 가셨네요"
Step 2 (12시간 후, 여전히 미결제): Push "10% 할인 + 무료배송"
Step 3 (24시간 후): SMS "마지막 기회 — 1시간 안 결제하시면 추가 5%"

E-commerce 의 가장 강력한 retention 패턴.

Pattern 5: Subscription 안전선

모든 캠페인:
  - 발송 전: subscription state 확인
  - opt-out 사용자: 자동 제외
  - bounce/complaint: 자동 unsubscribe
  - 정기 audit: 죽은 email · 잘못된 phone 정리

법적 안전 + sender reputation 보호.

시험 직전 한 번 더 — Braze 입문 함정 압축 노트

  • Braze = Customer Engagement Platform (CEP)
  • vs CDP / Marketing Automation / ESP / Push 전용 — 5 카테고리 경계 흐림
  • multi-channel + journey orchestration + 분석 한 plat
  • 5 핵심 개념 = User · Segment · Campaign · Canvas · Content Card
  • User — External ID + Standard/Custom Attribute + Event + Purchase
  • External ID = 우리 DB user.id (매핑 필수)
  • Segment — SQL WHERE 의 시각화, 캠페인 대상 정의
  • Campaign — 단일 메시지 (one-time · trigger · API · recurring)
  • Canvas — 다단계 journey (entry → 분기 → 지연 → 종료)
  • Campaign 단일 vs Canvas journey
  • Content Card — 앱 안 inbox · 영구 노출 (push 의 보완)
  • 6 채널 = Email · Push · SMS · In-app · Web Push · Content Card
  • 채널 선택 = 긴급성 · 사용자 위치 · 메시지 양
  • 데이터 4 단위 = User Attribute · Custom Event · Purchase · Subscription State
  • Purchase = 별도 모델 (LTV · ARPU 자동)
  • Subscription = GDPR · CAN-SPAM 기본
  • SDK = Web · iOS · Android · React Native · Flutter · Roku · Unity · REST API
  • Liquid templating = Shopify 의 templating 언어
  • {{ first_name | default: '회원님' }} 패턴
  • 함정 — default 없으면 "안녕하세요, 님!" 어색
  • Connected Content = 발송 직전 외부 API 호출 → 실시간 개인화
  • 함정 — API latency (500ms 이내 권장)
  • Currents = Braze 이벤트 → S3 · Snowflake · Kafka 등 stream
  • closed 시스템 회피 + 데이터 우리 통제
  • 함정 — 비용 폭증 (filter · retention)
  • 통합 = CDP · 광고 · 분석 · 웨어하우스 · CRM · e-commerce · AI
  • 도입 시그널 3+ = 발송 분산 · lifecycle 캠페인 · segmentation · multi-channel · 마케터 자율 · 10K+ 사용자
  • 도입 아님 = < 1K · 마케팅 거의 없음 · 예산 부족
  • 경쟁 도구 = Iterable · Customer.io · Klaviyo · MoEngage · Salesforce MC · HubSpot · Mailchimp · OneSignal
  • Braze 강점 = multi-channel · Canvas · enterprise · 대규모
  • Braze 약점 = Shopify 통합 (Klaviyo 우세) · 작은 회사 · self-host X · open-source X
  • 사고 — External ID 매핑 · subscription 무시 · cardinality · Liquid default · Connected Content latency · Canvas 복잡 · Currents 비용
  • 패턴 — SDK 표준 init · event 명명 (동사_명사) · Onboarding Canvas · Cart Abandonment · Subscription 안전선

공식 문서: Braze Documentation 에서 원문을 확인할 수 있어요.

시리즈 다른 편 (앞뒤 글 모음)

다음 글:

※ 이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.

답글 남기기

error: Content is protected !!