프로젝트/GA4 분석

[GA4 퍼널 분석] Day7-3 Category Mix 최적화 시뮬레이션

조성호 2026. 5. 13. 23:02

카테고리 구조를 바꾸면 성과가 좋아질까?

분석 목표

Day5 분석에서는 Category 역시 Price Band와 함께 view_item → add_to_cart 단계의 핵심 변수 후보였다.

특히 일부 분석 과정에서 Bags 카테고리가 상대적으로 강한 후보처럼 보였기 때문에 "Unknown(분류 불명확 카테고리) 일부를 Bags 중심 구조로 전환하면 전체 장바구니 및 구매 성과가 개선될 수 있을까?”를 시뮬레이션했다.

즉,이번 시나리오는 단순 전환율 개선이 아니라“무엇을 더 많이 보여줄 것인가?”라는 카테고리 운영 전략 관점의 검증이다.

분석 목적

Category Mix 최적화가 실제 상단 퍼널 성과 개선 전략이 될 수 있는지 확인하고 단순 Bags 확대가 효과적인지 혹은 Category 구조 자체보다 데이터 품질이 더 중요한지 검토

분석 방법

현재 Unknown category 조회 세션 일부를 Bags 수준의 전환 구조로 전환한다고 가정했다.

  • Unknown 10% → Bags
  • Unknown 20% → Bags
  • Unknown 30% → Bags

즉, Unknown 일부 노출 구조를 Bags 중심으로 재배치
→ Category Mix 변화가 성과를 개선하는가?

데이터 전처리

이번 시나리오에서 가장 중요한 부분은 단순 시뮬레이션보다 이전 분석 실수 복기였다.

 

Day5 초기 분석 과정에서 Unknown(공백/결측 category)을 명확히 복구하지 않고 공백 상태로 처리한 적이 있었다.

  • Unknown 그룹 자체가 누락
  • 실제 분류되지 않은 상품군이 다른 해석으로 왜곡
  • Category 비교 구조 자체가 흔들림

수정한 전처리 핵심

공백 / 결측 category를 Unknown으로 복구

category_df["item_category"] = category_df["item_category"].fillna("Unknown")
category_df["item_category"] = category_df["item_category"].astype(str).str.strip()
category_df.loc[category_df["item_category"] == "", "item_category"] = "Unknown"
 

깨달은 점

데이터 전처리 실수 하나가 단순 수치 오류를 넘어서 “어떤 카테고리가 더 중요한가?” 라는 전략적 결론 자체를 왜곡할 수 있다.

즉, 데이터 품질은 분석 이전 단계가 아니라 전략 판단의 시작점이었다.

 

시뮬레이터 설정

# 개선 시나리오 설정
scenarios = [
    {
        "scenario": "Unknown 10% → Bags",
        "reallocation_rate": 0.10
    },
    {
        "scenario": "Unknown 20% → Bags",
        "reallocation_rate": 0.20
    },
    {
        "scenario": "Unknown 30% → Bags",
        "reallocation_rate": 0.30
    }
]

# 시뮬레이션 계산
result = []

for s in scenarios:
    
    # Bags 수준으로 개선되는 Unknown 조회 수
    reallocated_views = unknown_view * s["reallocation_rate"]

    # 기존 Unknown 전환율 기준 장바구니 수
    current_expected_cart = reallocated_views * unknown_rate

    # Bags 전환율 기준 장바구니 수
    bags_expected_cart = reallocated_views * bags_rate

    # 추가 장바구니 수
    incremental_cart = bags_expected_cart - current_expected_cart

    # 추가 구매 수 추정
    incremental_purchase_proxy = incremental_cart * purchase_proxy_rate

    # 기대 가치 추정
    expected_value = incremental_purchase_proxy * aov_proxy

    result.append({
        "scenario": s["scenario"],
        "reallocated_views": round(reallocated_views, 1),
        "unknown_cart_rate(%)": round(unknown_rate * 100, 2),
        "bags_cart_rate(%)": round(bags_rate * 100, 2),
        "incremental_cart": round(incremental_cart, 1),
        "incremental_purchase_proxy": round(incremental_purchase_proxy, 1),
        "expected_value": round(expected_value, 2)
    })

# 결과 데이터프레임 생성
category_mix_df = pd.DataFrame(result)

print("\n=== Bags Category Mix Optimization Simulation ===")
print(category_mix_df)
=== Bags Category Mix Optimization Simulation ===

Unknown 10% → Bags
추가 장바구니: -24.9
추가 구매 추정: -11.9
기대 가치: -4,403.90

Unknown 20% → Bags
추가 장바구니: -49.8
추가 구매 추정: -23.9
기대 가치: -8,807.80

Unknown 30% → Bags
추가 장바구니: -74.6
추가 구매 추정: -35.8
기대 가치: -13,211.69
 

결과 해석

예상과 달리, Unknown 일부를 Bags 구조로 전환할 경우 모든 시나리오에서 성과가 악화됐다.

초기 가설: Bags 확대 → 성과 개선

실제 결과: Bags 확대 → 성과 감소

의미

단순히 Bags를 더 많이 노출하는 전략은 현재 데이터 기준 우선순위가 아닐 가능성이 높다.

Unknown은 실제 무엇으로 구성되어 있는지가 더 중요한 질문인 것 같다.

핵심 인사이트

“좋은 전략 찾기”보다 “잘못된 전략 제외하기”

모든 가설이 성과 개선으로 이어지지 않으며, 잘못된 전처리나 불완전한 분류는 잘못된 전략 실행으로 이어질 수 있다.

비즈니스 인사이트

우선 검토 가능 액션

  • Unknown 내부 상품 세분화
  • Category Attribution 개선
  • 실제 상품군 재분류
  • Bags vs Apparel vs Accessories 재검증

최종 결론

이번 분석을 통해 Category Mix 최적화보다 먼저 Category 데이터 품질 개선이 선행되어야 함을 확인했다.

Category 전략 이전에
Category 정확도가 우선이다.
 

최종 정리

Scenario A

New User Checkout Trust

  • 가장 직접적인 하단 퍼널 개선
  • 신규 유저 신뢰 장벽 핵심

Scenario B

High Price Conversion

  • 상단 퍼널 핵심
  • 가격 인식 / 상품 경쟁력 중요

Scenario C

Category Mix

  • 단순 Bags 확대보다
  • Unknown 구조 해석 및 데이터 품질 우선

최종 우선순위

Tier 1 : User Trust (New User Checkout)

Tier 2 : Price Strategy (High Price)

Tier 3 : Category Quality (Unknown Data Quality)

 

상단 퍼널에서는 Price, 하단 퍼널에서는 User Trust, 그리고 그 모든 전략 이전에는 Data Quality가 중요했다.

깨달은 점

“무엇을 개선하면 좋은가?”를 넘어서, “잘못된 데이터 해석은 잘못된 전략으로 이어질 수 있다”는 점을 확인한 과정이었다.

데이터 분석가는 숫자를 해석하는 사람을 넘어, 어떤 데이터가 전략 판단에 적합한지 검증하는 사람이어야 한다는 점을 가장 크게 배웠다.