🛒 Instacart 재구매 예측
📦 1. Instacart 데이터셋 소개
이번 프로젝트에 사용한 데이터는 이전의 Kaggle Instacart Market Basket Analysis 대회에서 제공된 오픈 데이터입니다.
데이터셋 출처: https://www.kaggle.com/datasets/yasserh/instacart-online-grocery-basket-analysis-dataset
Instacart는 미국의 온라인 장보기 플랫폼으로, 고객들이 어떤 제품을 어떤 순서로 재구매하는지를 분석할 수 있는 장바구니 기반 구매 로그 데이터를 제공합니다.
데이터는 다음과 같은 테이블들로 구성됩니다:
파일명 | 설명 |
---|---|
orders.csv |
유저별 주문 기록 및 시간 정보 |
order_products__prior.csv |
과거(prior) 주문에 포함된 제품 목록 |
order_products__train.csv |
학습용(train) 주문에 포함된 제품 목록 |
products.csv |
제품명, aisle, department 등의 제품 메타 정보 |
aisles.csv |
aisle ID와 이름 |
departments.csv |
department ID와 이름 |
총 데이터는 수백만 건에 달하며, 재구매 예측, 추천 시스템, 사용자 세분화 등의 다양한 분석이 가능합니다.
🎯 2. 분석
🧩 Task 1: 데이터 구조 이해 및 EDA 준비
먼저 각 테이블의 크기와 컬럼 구조를 살펴보면서 어떤 방식으로 병합 및 분석을 수행할 수 있을지 파악했습니다.
또한, 이 프로젝트에서 핵심이 되는 테이블은 다음과 같습니다:
- orders: 주문 메타 정보 (eval_set을 기준으로 prior, train 구분)
- priors: 유저가 과거 주문에서 어떤 제품을 얼마나 자주 재구매했는지
- products: 제품 이름, 카테고리 정보
결측치는 days since prior order에 20만 건 존재, 이는 이전 주문 이력이 없는 것을 의미하므로 "First Order"라는 문자열로 채워주었습니다.
🧩 Task 2: 고객 구매 행동 분석
✅ 1. 재구매 비율 분석
- 재구매 비율은 60퍼센트, 구매 비율은 40퍼센트로 재구매가 빈번하게 일어나는 편으로 보입니다.
✅ 2. 사용자별 재구매율 분포
- 재구매율의 분포가 좌우로 치우치지 않고, 중앙값 부근(0.4~0.5)에서 볼록한 종 모양을 보입니다.
→ Instacart 고객들은 한 번 구매한 상품을 어느 정도 비율로 다시 구매하지만,
극단적으로 재구매만 하는 고객이나, 단 한 번도 같은 상품을 반복하지 않는 고객은 드뭅니다. - 재구매율이 0.7~1.0인 고객도 소수 존재
→ 아주 충성도 높은 고객, 혹은 장바구니가 매번 비슷한 소비 습관의 고객이 일부 존재함을 알 수 있습니다. - 재구매율이 0에 가까운 고객 역시 존재
→ 이탈/신규 고객, 또는 “늘 새로운 상품만 시도하는 실험적 소비자” 가능성. - 전체적으로 볼 때, Instacart는 재구매 성향이 강한 고객층과, 신규 탐색형 고객층이 공존하는 구조라고 해석할 수 있습니다.
✅ 3. 고객별 전체 주문 수 분석
Instacart 이용 고객의 전체 주문 횟수 분포를 살펴보면, 대부분의 고객은 단 몇 번만 주문하고 플랫폼을 떠나는 반면,
극소수의 헤비 유저(100회 주문)가 전체 주문량의 상당 부분을 견인하고 있다는 사실을 확인할 수 있습니다.
히스토그램을 보면, 5~10회 이하만 주문하는 고객이 압도적으로 많으며, 20회, 30회 이상 주문한 고객은 매우 드물다는 점이 두드러집니다.
- 신규 고객 리텐션, 이탈 방지, VIP 고객 전용 관리 프로그램이 비즈니스 성과에 직접적 영향을 줄 것으로 보임.
✅ 4. 고객별 평균 장바구니 크기 분석
고객들이 한 번 주문할 때 주로 몇 개의 상품을 담는지도 중요한 분석 포인트입니다.
대부분 고객의 평균 장바구니 크기는 5~15개 사이에서 몰려 있습니다.
20개를 초과하는 경우는 드물며, 30개 이상 담는 초대형 장바구니 고객은 극소수에 불과합니다.
- Instacart 주요 고객은 다품목 소량 구매에 익숙한 패턴.
- “한 번에 많이 담기” 유도보다는, 중간 규모(10~15개) 장바구니 고객에 프로모션/추천을 집중하는 것이 효과적.
- 평균 장바구니 크기 변동은 프로모션/시즌 이슈와 강한 상관 가능.
✅ 5. 고객별 평균 주문 간격 분석
고객의 평균 주문 간격은 8~20일 사이에 가장 많이 분포합니다.
즉, 상당수 고객이 주 1~3회에 1번 꼴로 Instacart를 반복 이용하고 있습니다.
또한, 한 달(30일) 단위로 재구매하는 고객도 다수 확인됩니다. 한 달 단위 재구매 고객의 경우 Instacart 플랫폼에 대한 충성도가 낮거나 다른 장보기 플랫폼을 혼용하는 경우일 것으로 보입니다.
- Instacart 고객은 정기적 반복구매 비중이 매우 높음.
- 구매주기별 맞춤 마케팅(예: “다음 주 장보기 추천”, “한 달 쿠폰”) 도입 효과 기대.
- 8~15일 단위 규칙적 재구매 고객은 플랫폼의 “충성고객”으로 분류 가능.
이들에겐 정기구독, 맞춤 리마인더, 번들 추천 등 반복주문 촉진 전략이 필요. - 장기/비정기 고객(20일 이상)은 이탈 방지 리타겟팅이 핵심.
✅ 6. 시간대 및 요일별 주문 패턴 분석
시간대별 주문량
당연하겠지만 주문이 오전 8시~오후 5시에 압도적으로 몰려 있으며, 특히 10시~15시(점심~오후) 구간이 피크입니다.
야간, 새벽에는 주문량이 매우 적습니다.
요일별 주문량
일요일과 월요일에 주문이 폭발적으로 많고, 화~금에는 비교적 고르게 유지됩니다.
주말/월초 장보기가 Instacart 이용 고객들의 주요 구매 성향으로 보입니다. 한 주를 새로 시작하며 필요하는 것을 구매하는 행동 패턴이 드러나는 것 같습니다.
- 오전~오후 시간대, 주말/월요일 집중 프로모션이 매출 극대화에 효과.
- 푸시 알림, 할인 쿠폰 발송 타이밍도 이 시간/요일대에 맞추는 것이 효율적.
- “주말 한정 번들 할인” 등 이벤트 기획 추천.
🧩 Task 3: 상품/카테고리 분석
✅ 1. 재구매 상품 Top 10
- 신선식품, 특히 과일·채소의 압도적 강세
상위 10개 상품 중 8개가 바나나, 딸기, 시금치, 아보카도, 라즈베리, 레몬 등
신선식품(과일·채소) 카테고리에 속해 있습니다. - Organic(유기농) 상품의 높은 비중
10개 중 7개가 Organic(유기농) 상품으로,
Instacart 고객들은 건강이나 친환경 소비에 민감하게 반응하는 경향이 있습니다. - 반복구매가 쉬운 생활 필수품 위주
바나나, 딸기, 우유 등은 가정에서 주기적으로 소비되는 대표 품목입니다.
Instacart 내 재구매를 견인하는 상품군이 바로 이러한 필수 소비재임을 알 수 있습니다.
✅ 2. 카테고리별 인기 상품 Top 10
1. 부서(Department)별 인기 상품 분석
- Produce(신선식품) 부서가 약 900만 건으로 압도적인 1위를 차지하였으며,
- 그 뒤를 이어 Dairy & Eggs(유제품/달걀), Snacks(스낵류), Beverages(음료), Frozen(냉동식품), Pantry(팬트리/저장식품), Bakery(베이커리) 등이 순위에 올랐습니다.
- 전체적으로 신선식품과 유제품, 간식·음료·냉동식품 등
일상적인 소비재 카테고리가 높은 주문 건수를 기록하고 있습니다.
2. 세부 통로(Aisle)별 인기 상품 분석
- Fresh Fruits(신선 과일), Fresh Vegetables(신선 채소)가 각각 350만 건 이상의 주문을 기록하여 가장 많이 주문된 카테고리임을 알 수 있습니다.
- 그 다음으로 Packaged Vegetables/Fruits(포장된 과일/채소), Yogurt(요거트), Packaged Cheese(포장 치즈), Milk(우유) 등 신선식품과 유제품군이 여전히 상위권을 차지하고 있습니다.
- Sparkling Water(탄산수), Chips Pretzels(칩·프레첼), Bread(빵) 등 간식류와 기본 식품군도 높은 순위에 올라 있습니다.
정리
📊 1. 고객 행동 분석의 주요 발견
1) 대부분 고객은 몇 번만 구매 후 이탈, 소수 충성고객이 매출을 견인
- 주문 횟수 분포를 살펴보면, 전체 고객의 상당수가 10회 미만의 주문만 경험하며,
20회 이상 주문한 “헤비유저”는 소수에 불과합니다. - Instacart 매출의 상당 부분이 충성 고객군에 의해 발생하고 있음을 확인할 수 있습니다.
2) 주문 주기와 장바구니 크기에서 반복성과 일상성이 뚜렷
- 고객별 평균 주문 주기는 8~20일 사이가 가장 많았으며,
이는 대부분의 고객이 1~3주에 한 번 꼴로 Instacart를 이용하고 있음을 의미합니다. - 장바구니 평균 크기는 10~15개 품목에 몰려 있으며,
대부분 고객이 소량의 생활필수품을 주기적으로 구입하는 패턴을 보입니다.
3) 구매 시간과 요일, 신선식품 중심의 쇼핑 트렌드
- 주문은 오전 8시~오후 5시, 특히 10~15시에 집중되어 있습니다.
- 요일별로는 일요일과 월요일에 주문이 몰리는 경향이 뚜렷합니다.
- 신선식품(과일·채소)과 유제품, 간식·음료 등 일상 소비재가 주문의 핵심 축을 이루고 있습니다.
🛒 2. 상품·카테고리별 구매 패턴
1) 재구매가 가장 많은 품목은 신선식품, 특히 유기농 과일·채소
- 상위 10개 재구매 상품 대부분이 바나나, 딸기, 시금치, 아보카도 등 신선식품이며,
Organic(유기농) 제품의 비중이 매우 높게 나타났습니다. - 이는 Instacart 고객의 건강과 친환경 소비 트렌드를 반영합니다.
2) 카테고리별로도 Produce(신선식품), Dairy & Eggs(유제품/달걀)가 주문의 절대 다수
- 전체 주문 중 신선식품·유제품·간식·음료·냉동식품 등 일상소비재가 높은 비중을 차지하고 있습니다.
🔎 인사이트
- 충성고객 관리와 재구매 촉진이 핵심:
상위 고객군을 대상으로 한 멤버십, 리텐션 캠페인, 맞춤형 프로모션이 효과적입니다. - 신선식품·유기농 상품의 품질 보증 및 큐레이션 강화:
신규 고객 확보, 반복구매 촉진 모두에 유의미해 보입니다. - 구매주기별 맞춤 알림·추천 서비스 도입:
정기배송, 자동 장바구니 추천, 한 달 주기 쿠폰 등이 추천됩니다. - 주말/월초 집중 프로모션 및 시간대별 광고 최적화:
실제 고객 사용 행태를 반영한 타이밍별 마케팅 전략이 필요합니다.
🚀 추후 심화 분석 방향
- 고객 세분화 및 타겟팅
- 재구매율, 주문 주기, 장바구니 크기, 상품 선호도 등 다양한 기준으로 고객을 클러스터링하여
차별화된 마케팅 전략을 설계할 수 있습니다.
- 재구매율, 주문 주기, 장바구니 크기, 상품 선호도 등 다양한 기준으로 고객을 클러스터링하여
- 장바구니 연관규칙 분석
- 함께 자주 구매되는 상품 패턴 파악
- 고객 생애가치(LTV) 및 이탈 예측
- 반복 구매 패턴 기반으로 장기적 고객 가치 예측,
이탈 위험군 사전 포착 및 대응 전략 수립
- 반복 구매 패턴 기반으로 장기적 고객 가치 예측,
- 시계열 데이터 기반 트렌드 변화/프로모션 효과 분석
- 시기별, 이벤트별, 시즌별 상품·고객 패턴 변화를 분석하여
프로모션 ROI 및 매출 극대화 전략 제안
- 시기별, 이벤트별, 시즌별 상품·고객 패턴 변화를 분석하여