Uncategorized

SQL Case Study: Churn Analysis Model [01]

  • NEW (Khách hàng mới – Tháng đầu): Đây là trạng thái của một khách hàng trong tháng đầu tiên họ thực hiện giao dịch mua hàng.
    • NEW SINGLE: Nếu trong tháng đầu tiên, khách hàng chỉ mua hàng một ngày duy nhất.
    • NEW MULTI: Nếu trong tháng đầu tiên, khách hàng mua hàng từ hai ngày trở lên.
  • ACTIVE NEW: Trạng thái này xảy ra khi một khách hàng “NEW” (Single hoặc Multi) tiếp tục mua hàng trong tháng kế tiếp (Tháng M+1). Đây được xem là khởi đầu của một chuỗi “Active” vì tháng trước đó họ chưa từng ở trạng thái này.
  • ACTIVE EVERGREEN: Nếu một khách hàng “ACTIVE NEW” tiếp tục mua hàng trong tháng tiếp theo nữa (Tháng M+2), họ sẽ được chuyển sang trạng thái này. “ACTIVE EVERGREEN” duy trì khi khách hàng tiếp tục mua sắm liên tục qua các tháng.
  • EVERGREEN: Nếu khách hàng ở trạng thái “ACTIVE EVERGREEN” và tiếp tục mua sắm liên tục, họ sẽ duy trì ở trạng thái “EVERGREEN”.
  • NO ORDER: Trạng thái này xảy ra khi một khách hàng ở bất kỳ trạng thái nào (“NEW”, “ACTIVE EVERGREEN”) không phát sinh đơn hàng trong một khoảng thời gian nhất định.
    • Nếu một khách hàng “NEW” không mua hàng trong tháng kế tiếp (M+1), họ sẽ tạm nghỉ ngay sau đó.
    • Nếu một khách hàng “ACTIVE NEW” hoặc “ACTIVE EVERGREEN” ngừng mua hàng tháng tiếp theo, họ sẽ được coi là tạm nghỉ trong ≥ 1 tháng.
  • CHURN: Khách hàng được coi là CHURN khi họ đã rời bỏ và không hoạt động trong một thời gian dài.
    • Nếu một khách hàng “NO ORDER” (từ trạng thái “NEW”) không quay lại mua sắm trong vòng ≥ 2 tháng.
    • Nếu một khách hàng “REACTIVE” không tiếp tục mua hàng trong tháng tiếp theo, họ sẽ bị coi là CHURN.
  • REACTIVE: Đây là trạng thái của khách hàng đã từng ở trạng thái “NO ORDER” (tạm nghỉ ít nhất 1 tháng) và sau đó quay trở lại mua hàng.
  • Sau khi khách hàng trở thành “REACTIVE”, chu trình sẽ tiếp tục:
    • Nếu họ tiếp tục mua hàng trong tháng tiếp theo, họ sẽ chuyển sang trạng thái “ACTIVE NEW”, bắt đầu một chuỗi hoạt động mới sau giai đoạn tạm nghỉ.
    • Nếu họ không mua hàng trong tháng tiếp theo, họ sẽ rơi vào trạng thái “CHURN”.
  • Tư duy 01:
    • Bắt đầu: Một khách hàng ở trạng thái “NEW” (mua hàng trong tháng đầu tiên).
    • Hành vi: Sau tháng đầu tiên đó, họ không tiếp tục mua hàng trong tháng kế tiếp (tháng M+1). Họ sẽ rơi vào trạng thái “NO ORDER”.
    • Điều kiện Churn: Nếu tình trạng “NO ORDER” này kéo dài từ 2 tháng trở lên, hệ thống sẽ xác định khách hàng này là “CHURN”.
    • Logic Business: Bạn cho khách hàng mới một thời gian ân hạn là 2 tháng. Nếu sau khi mua lần đầu, khách hàng biến mất trong 2 tháng liên tiếp => không thể thuyết phục khách hàng này trở thành người mua sắm thường xuyên và xem như đã mất họ.
  • Tư duy 02:
    • Bắt đầu: Một khách hàng đã từng hoạt động (“ACTIVE EVERGREEN”), sau đó họ ngừng mua hàng trong ít nhất 1 tháng (“NO ORDER”).
    • Hành vi: Khách hàng này sau đó quay trở lại mua hàng và được chuyển sang trạng thái “REACTIVE”. Đây là một tín hiệu rất tích cực.
    • Điều kiện Churn: Tuy nhiên, nếu ngay trong tháng tiếp theo sau lần mua hàng “REACTIVE” đó, khách hàng lại không phát sinh bất kỳ đơn hàng nào nữa, họ sẽ bị chuyển thẳng vào trạng thái “CHURN”.
    • Logic Business: Bạn coi lần quay trở lại của khách hàng là một cơ hội vàng để giữ chân họ. Nếu khách hàng không duy trì được đà mua sắm ngay lập tức => nỗ lực tái kích hoạt đã thất bại và khách hàng này thực sự đã rời bỏ.

Unlocking Insight Qua 07 Tasks SQL

Task 01: Xây Dựng Trạng Thái Khách Hàng Hàng Tháng

Xây dựng một bảng lịch sử thể hiện trạng thái (“NEW”, “ACTIVE NEW”, “CHURN”, v.v.) của từng khách hàng vào từng tháng.

report_monthcust_idcust_state
2024-01cust_101NEW MULTI
2024-01cust_102NEW SINGLE
2024-02cust_101ACTIVE NEW
2024-02cust_102NO ORDER
2024-03cust_101ACTIVE EVERGREEN
2024-03cust_102CHURN

SQL Coding Task 01 & Tutorial Step by Step: Dành cho các bạn học viên SQLDA và Data Analyst BootCamp.

Task 02: Phân Tích Tỷ Lệ Chuyển Đổi Phễu (Funnel Conversion)

Tìm ra những điểm rơi rụng lớn nhất trong hành trình của khách hàng. Tỷ lệ khách hàng “NEW” trở thành “ACTIVE NEW” là bao nhiêu? Bao nhiêu người từ “ACTIVE EVERGREEN” rơi vào “NO ORDER”?

new_cust_cohorttotal_new_custsactive_new_M1churn_M1evergreen_M2
2024-011000450550300
2024-021200500700320

SQL Coding Task 02 & Tutorial Step by Step: Dành cho các bạn học viên SQLDA và Data Analyst BootCamp.

Task 3: So sánh Giá trị Vòng đời (LTV) giữa “NEW SINGLE” và “NEW MULTI”

Khách hàng mua nhiều lần ngay trong tháng đầu tiên có thực sự giá trị hơn về lâu dài không? So sánh tổng chi tiêu trung bình sau 3, 6, 12 tháng của hai nhóm này.

initial_stateavg_revenue_3_monthsavg_revenue_6_months
NEW SINGLE1,200,0001,800,000
NEW MULTI3,500,0006,200,000

SQL Coding Task 03 & Tutorial Step by Step: Dành cho các bạn học viên SQLDA và Data Analyst BootCamp.

Task 4: Tìm Kiếm Tín Hiệu Báo Trước Churn

Phân tích hành vi của khách hàng ngay trước khi họ rơi vào trạng thái “NO ORDER” hoặc “CHURN”. So sánh số lượng đơn hàng, giá trị trung bình đơn (AOV) của tháng cuối cùng hoạt động với 3 tháng trước đó của chính họ.

cust_idlast_active_monthaov_last_monthavg_aov_prev_3_monthssignal_aov_decreased
cust_5012024-05250,000700,000TRUE
cust_5022024-05800,000750,000FALSE

SQL Coding Task 04 & Tutorial Step by Step: Dành cho các bạn học viên SQLDA và Data Analyst BootCamp.

Task 5: Đo lường Hiệu quả của Nhóm “REACTIVE”

Khách hàng “REACTIVE” có thực sự trung thành? So sánh tỷ lệ nhóm “REACTIVE” trở thành “CHURN” ngay tháng sau với tỷ lệ nhóm “ACTIVE NEW” trở thành “CHURN”.

initial_grouptotal_custschurn_next_monthchurn_rate
REACTIVE50020040.0%
ACTIVE NEW4,50045010.0%

SQL Coding Task 05 & Tutorial Step by Step: Dành cho các bạn học viên SQLDA và Data Analyst BootCamp.

Task 6: Xác Định Vùng Cảnh Báo

Lập danh sách các khách hàng đang ở trạng thái “NO ORDER”, “CHURN”, họ đã tạm ngưng bao lâu và trạng thái cuối cùng của họ trước khi tạm ngưng là gì. Điều này giúp ưu tiên các chiến dịch giữ chân.

customer_idlast_active_statemonths_inactivetotal_his_spend
cust_789ACTIVE EVERGREEN215,000,000
cust_801ACTIVE NEW12,500,000

SQL Coding Task 06 & Tutorial Step by Step: Dành cho các bạn học viên SQLDA và Data Analyst BootCamp.

Task 7: Xây Dựng Ma Trận Chuyển Đổi Trạng Thái

Phân tích xác suất một khách hàng chuyển từ State A sang State B trong tháng tiếp theo.

from_stateto_statetransition_counttransition_probability
ACTIVE EVERGREENACTIVE EVERGREEN8,0000.80
ACTIVE EVERGREENNO ORDER2,0000.20
NO ORDERREACTIVE3000.30
NO ORDERCHURN7000.70
cohortcohort_yearfrom_stateto_stateprobnotes
H12024NEW SINGLEACTIVE NEW0.67H1: 67% retention
H22024NEW SINGLEACTIVE NEW0.40H2: 40% retention (worse!)
H12024NO ORDERCHURN0.70H1: 70% churn
H22024NO ORDERCHURN0.85H2: 85% churn (worse!)

SQL Coding Task 07 & Tutorial Step by Step: Dành cho các bạn học viên SQLDA và Data Analyst BootCamp.

Leave a Comment