# 연말 시즌 구매자를 위한 재구매 이메일 플로우

정식 URL: https://brew.new/ko/blog/second-purchase-email-flow
글쓴이: Philip Sørensen
게시일: 2026-10-02
수정일: 2026-10-02

재구매 플로우는 딱 한 번 구매한 고객을 위한 자동 이메일 시퀀스예요. 목표는 오직 두 번째 주문이고, 그 주문이 들어오면 멈춰요. 많은 스토어가 ‘주문하신 상품이 발송됐어요’ 안내와 다음 뉴스레터 사이에 아무것도 보내지 않아요. 이 공백은 첫 구매 고객이 가장 많고 그중 상당수가 선물을 산 4분기 이후에 가장 뼈아파요.

## 핵심 요약

- Lifetimely의 2025 DTC 리포트(Shopify 고객 7,700만 명): 신규 고객은 90일 안에 14.7%가 다시 구매했고, 재구매 고객은 33%가 다시 구매했어요.
- Reward의 영국 카드 데이터: 12월에 확보한 고객은 석 달 안에 19%가 돌아왔고, 다른 시기에는 23~26%였어요.
- 플로우 발송 시점은 주문일이 아니라 배송 완료일을 기준으로 잡으세요.
- 선물 구매자와 본인용 구매자를 나누세요. 선물을 받은 사람에게는 마케팅 이메일을 보낼 수 없어요.
- 발송할 때마다 ‘아직 주문이 한 번뿐인지’ 확인하고, 할인은 마지막까지 아껴 두세요. 매출총이익률 55%인 60달러 주문에 20% 할인 코드를 주면 매출총이익의 3분의 1 넘게 내주게 돼요.

## 두 번째 주문에 집중해야 하는 이유

Shopify 분석 도구 업체 Lifetimely는 2026년 8월, Shopify DTC 브랜드의 주문 1억 700만 건과 고객 7,700만 명을 바탕으로 [2025 DTC Mega Report](https://useamp.com/blog/2025-dtc-mega-report/)를 발표했어요. 신규 고객의 90일 내 재구매율은 14.7%였어요. 한 번이라도 다시 구매한 적 있는 고객은 90일 안에 33%가, 1년 안에 51.4%가 다시 구매했어요. 업체가 낸 수치지만 메시지는 분명해요. 주문 한 번에서 두 번으로 넘어가는 단계가 가장 어려워요.

연말 시즌 구매자는 더 어려워요. 영국의 로열티·카드 데이터 기업 Reward는 2026년 9월 30일, 영국 가구의 10%에서 나온 카드 거래 14억 건 이상(2023년 1월~2026년 7월)을 바탕으로 [Golden Quarter 2026](https://rewardinsight.com/news/turn-seasonal-spending-into-lasting-value/)을 발표했어요. 12월에 확보한 고객 중 석 달 안에 다시 구매한 비율은 19%에 그쳤고, 다른 시기에는 23~26%였어요. 식료품에서는 30% 대 54%였어요. 첫 구매 고객은 평소 소매업체 구매자의 14~16%인데, 12월에는 약 18%로 늘어나요. 게다가 그 규모도 커요. Adobe는 미국 소비자가 [2025년 11월 1일부터 12월 31일까지 온라인에서 2,578억 달러를 썼다](https://news.adobe.com/news/downloads/pdfs/2026/01/010726-holiday-shopping-season-2025.pdf)고 발표했어요. 전년보다 6.8% 늘어난 수치예요.

Bain의 Frederick Reichheld는 *Loyalty Rules!*(2001)에서 [의류 온라인 소매에서는 재구매 고객이 거래 관계 24~30개월 차에 처음 6개월보다 두 배 넘게 지출했다](https://www.bain.com/contentassets/29f74ec417fa4e36a1d7d7e7479badc5/loyalty_rules_chapter_one.pdf)고 보고했어요. 이 장에 나오는 유명한 “고객 유지율이 5% 오르면 이익이 25~95% 늘어난다”는 주장은 1990년대에 여러 업종을 대상으로 한 연구에서 나왔어요. 더 나은 전망은 직접 뽑은 코호트 리포트예요.

## 연말 시즌 구매자라서 달라지는 점

### 선물 구매자와 본인용 구매자에게 필요한 서로 다른 플로우

선물 구매자에게 새 세럼이 마음에 드는지 묻지 마세요. 다 떨어질 때가 됐다고 알리는 건 더더욱 안 돼요. Shopify 주문에는 [배송 주소와 청구 주소](https://shopify.dev/docs/api/admin-rest/latest/resources/order)가 따로 있어서, 배송지 이름이 청구지 이름과 다르면 선물이라는 강한 신호예요. 선물 메시지, 선물 포장, ‘선물입니다’ 체크박스도 마찬가지예요. 신호가 서로 엇갈리면 선물 트랙을 쓰세요.

### 리스트에 없는 선물 수령인

배송 안내를 받는 주소라고 해서 마케팅 수신 동의가 있는 건 아니에요. 영국 ICO의 [상품·서비스 소프트 옵트인](https://ico.org.uk/for-organisations/direct-marketing-and-privacy-and-electronic-communications/guidance-on-direct-marketing-using-electronic-mail/how-do-we-comply-with-the-pecr-electronic-mail-marketing-rules/) 가이드는 이메일을 보내려는 사람에게서 직접, 그 사람에게 판매하는 과정에서 연락처를 받아야 한다고 해요. 선물을 받은 사람은 두 조건을 모두 충족하지 못하니, 상자에 가입 안내 카드를 넣으세요.

### 반품 시즌이기도 한 1월

전미소매협회(NRF)가 2025년 10월에 발표한 [2025 소매 반품 보고서](https://nrf.com/media-center/press-releases/consumers-expected-to-return-nearly-850-billion-in-merchandise-in-2025)에 따르면, 소매업체들은 연말 시즌 매출의 17%가 반품될 것으로 예상했어요. 환불이나 반품이 생기면 플로우에서 빠지게 하고, 선물 트랙은 교환과 선물 영수증 안내부터 시작하세요. 배송 완료일 기준으로 발송 시점을 잡으면 1월 2일에 한꺼번에 보내지 않고 1월 내내 발송이 분산되는 효과도 있어요.

## 플로우 설계하기

### 배송 완료 시점부터 시작하기

12월에는 ‘주문일 + 3일’로 잡으면 설정 안내 이메일이 상자보다 먼저 도착할 수 있어요. Shopify는 배송을 추적해요. 주문 처리(fulfillment)의 [`shipment_status`](https://shopify.dev/docs/api/admin-rest/latest/resources/fulfillment) 값은 배송사 추적 정보에 따라 `in_transit`, `out_for_delivery` 같은 값을 거쳐 `delivered`로 바뀌어요. 백엔드에서 이 값을 볼 수 있다면 배송 완료 타임스탬프가 0일 차예요. 그렇지 않다면 발송 후 일반적인 배송 기간에 하루를 더한 만큼 대기 단계를 두고, 12월에는 더 길게 잡으세요.

### 상품보다 사용법 안내를 먼저

첫 이메일은 구매한 상품을 잘 쓰도록 도와야 해요. 설정, 관리법, 사이즈, 효과가 나타나는 시기 같은 내용이에요. 누군가 실제로 확인하는 회신 주소를 쓰고, 아무것도 팔지 마세요. 도움을 요청하는 답장이 오면 반품으로 이어지기 전에 문제를 해결할 수 있어요.

### 리뷰는 한 번만, 모두에게 요청하기

매일 쓰는 상품은 배송 완료 1주 후, 내구재와 의류는 2주 후에 요청하세요. 선물 구매자에게는 주문 경험에 대해 물어보세요.

2024년 10월 21일부터 시행된 미국 FTC의 [소비자 리뷰 규칙](https://www.ecfr.gov/current/title-16/chapter-I/subchapter-D/part-465)은 두 가지 면에서 적용돼요. 465.4조는 긍정이든 부정이든 특정한 의견을 담은 리뷰를 조건으로 하는 인센티브를 금지해요. 그래서 ‘리뷰를 남기면 10% 할인’은 모든 리뷰가 대상일 때만 괜찮아요. FTC의 [최종 규칙 해설](https://www.federalregister.gov/documents/2024/08/22/2024-18519/trade-regulation-rule-on-the-use-of-consumer-reviews-and-testimonials)은 만족했으리라 생각하는 고객에게만 보낸 요청은 “일반적인 요청(generalized solicitation)”이 아니라고도 설명해요. 웃는 얼굴 아이콘을 누른 사람만이 아니라 모두에게 요청하세요.

Northwestern 대학교의 Spiegel Research Center는 [리뷰가 5개 있는 상품은 리뷰가 없는 상품보다 구매될 가능성이 270% 높다](https://spiegel.medill.northwestern.edu/how-online-reviews-influence-sales/)는 결과를 내놓았고, 그 효과의 대부분은 처음 다섯 개의 리뷰에서 나왔어요.

### 재주문 주기는 사용량으로 먼저, 이후엔 데이터로 정하기

소모품이라면 처음 산 제품이 떨어지기 직전에 알리세요. 먼저 간단한 계산부터 시작하세요.

| 상품 | 주기를 정하는 방법 | 예시 |
| --- | --- | --- |
| 정량 소모품 | 수량 ÷ 하루 복용량에서 배송 기간과 여유분을 뺌 | 하루 2캡슐씩 먹는 60캡슐은 30일 분량이에요. 배송 완료 후 21~23일 차에 알리세요. |
| 계량해 쓰는 소모품 | 용량 ÷ 일반적인 하루 사용량 | 한 잔에 20 g, 하루 두 잔이면 340 g 커피 한 봉지는 약 8일 분량이에요. 이럴 땐 정기 구독을 제안하세요. |
| 사용량이 일정하지 않은 소모품(스킨케어, 청소용품) | 해당 상품의 첫 주문부터 두 번째 주문까지 걸린 일수의 중앙값 | 직접 모은 데이터를 쓰세요. |
| 의류, 내구재, 선물 | 리필 없음, 대신 교차 판매 | 관리법과 사이즈 안내가 먼저, 그다음 함께 쓰면 좋은 상품. |

시즌이 한 번 지나면 직접 쌓은 숫자를 쓰세요. Shopify의 [고객 리포트](https://help.shopify.com/en/manual/reports-and-analytics/shopify-reports/report-types/default-reports/customers-reports)에는 첫 주문 월별 재구매 코호트 분석이 있고, Klaviyo의 [재구매 시점 차트](https://help.klaviyo.com/hc/en-us/articles/26685770823451)는 상품이나 카테고리별로 다음 주문까지 걸린 일수를 보여 줘요. 중앙값을 쓰세요. 평균은 늦게 돌아온 이상치에 끌려가서, 일찍 돌아오는 고객의 시점을 지나쳐 버려요.

### 구매한 상품에서 출발하는 교차 판매

첫 구매 상품을 언급하고, 함께 쓰면 좋은 상품을 한두 개 제안하세요. 추천 엔진은 건너뛰세요. 첫 구매 상위 20개 상품마다, 주문 데이터에서 그다음에 가장 자주 구매되는 상품을 짝지어 두세요. 이렇게 하면 모든 행을 직접 확인할 수 있어요.

### 카피를 쓰기 전에 할인 여부 정하기

초반에는 할인하지 마세요. 어차피 샀을 사람에게 마진을 내주는 셈이에요. 매출총이익률 55%인 60달러짜리 두 번째 주문은 배송비를 빼기 전 매출총이익이 33달러예요. 20% 할인 코드는 12달러, 즉 그 매출총이익의 36%를 내주는 셈이에요.

Klaviyo의 [2025 BFCM 결산](https://www.klaviyo.com/newsroom/bfcm-holiday-shopping)은 기간 내내 같은 브랜드 10,000곳을 비교한 결과, 할인은 전년보다 10% 줄었지만 재구매 고객 매출은 13.5% 늘었고, 할인 폭이 가장 작은 브랜드가 14%로 가장 빠르게 성장했다고 보고했어요. 블랙 프라이데이·사이버 먼데이(BFCM) 한 주에 대한 업체 데이터지만, 가리키는 방향은 같아요.

할인을 쓴다면 아직 주문이 한 번뿐인 연락처에게 늦은 시점에 한 번만, 실제 종료일(“2월 9일 종료”)을 밝혀 보내세요. 무료 배송이나 샘플이 비용이 덜 드는 경우가 많아요. 60일 뒤에 홀드아웃 그룹과 두 번째 주문 비율을 비교하세요.

### 종료 규칙과 발송 제외 규칙

진입할 때만이 아니라 이메일을 보낼 때마다 확인하세요.

- **다시 구매한 경우.** 재구매 고객 프로그램으로 옮기세요.
- **주문이 취소, 환불, 반품된 경우.** 판매 메시지를 멈추세요.
- **수신 거부, 반송, 스팸 신고가 있는 경우.** 플로우에서 빼세요.
- **고객 문의가 처리 중인 경우.** 이메일 플랫폼에서 헬프데스크 데이터를 볼 수 있다면 문의가 종료될 때까지 일시 중지하세요.
- **다시 진입한 경우.** 두 번째 주문도 같은 트리거를 실행하므로 진입할 때도 확인하세요.

## 단계별 플로우

0일 차는 배송 완료일, 또는 발송일에 배송 기간을 더한 날이에요.

| 일 차 | 트리거 또는 조건 | 내용 | 발송 전 종료 조건 |
| --- | --- | --- | --- |
| 0 | 배송 완료, 주문 정확히 1건 | 진입. 본인용 트랙과 선물 트랙으로 분할. | 주문 수 1건 초과 |
| 1 | 본인용 구매 | 설정, 관리법, 기대할 점. 실제 회신 주소. 상품 홍보 없음. | 두 번째 주문, 환불, 수신 거부 |
| 3 | 선물 | 구매자에게: “제때 도착했나요?”, 선물 영수증, 교환 링크, 반품 가능 기간. | 두 번째 주문, 환불, 수신 거부 |
| 5 | 본인용 구매 | 사용 팁과 함께 쓰면 좋은 상품 하나. | 두 번째 주문, 환불, 수신 거부 |
| 7~14 | 두 트랙 모두. 매일 쓰는 상품은 7일, 내구재는 14일 | 모두에게 같은 리뷰 요청, 평점과 연계된 인센티브 없음. 선물 구매자는 주문을 평가. | 두 번째 주문, 환불 |
| 재주문 주기 − 7 | 본인용 구매, 소모품 | 원클릭 링크를 넣은 재주문 리마인더, 또는 정기 구독 제안. | 두 번째 주문 |
| 21 | 본인용 구매, 비소모품 | 첫 구매 상품과 어울리는 상품 두 개 교차 판매. | 두 번째 주문 |
| 21 | 선물 | 선물한 카테고리에서 구매자 본인을 위한 상품. | 두 번째 주문 |
| 35 | 두 트랙 모두, 여전히 주문 1건 | 선택: 종료일이 정해진 인센티브 한 번. 홀드아웃 그룹은 건너뜀. | 두 번째 주문 |
| 42 | 종료 | 뉴스레터로 이동, 또는 비활성 기간이 지나면 윈백. | 해당 없음 |

![0일 차 배송 완료에서 본인용 트랙(1일 차 설정 안내 이메일, 5일 차 함께 쓰면 좋은 상품, 7~14일 차 리뷰 요청, 21일 차 재주문 또는 교차 판매, 35일 차 선택 인센티브)과 선물 트랙(3일 차 도착 확인·교환 안내 이메일, 14일 차 주문 리뷰, 21일 차 구매자를 위한 상품, 35일 차 선택 인센티브)으로 갈라지고, 아래 막대에 발송 전마다 확인하는 종료 규칙을 정리한 재구매 이메일 플로우 다이어그램.](/images/blog/second-purchase-email-flow-diagram.png)

*배송 완료 이벤트 하나에서 갈라지는 두 트랙, 이메일마다 같은 종료 규칙.*

이후 활동이 뜸해진 연락처는 [윈백 플로우](/ko/blog/win-back-emails)로 보내세요.

## Brew에서 만들기

Brew 자동화는 트리거와 그 뒤에 이어지는 ‘이메일 보내기’, ‘대기’, ‘필터’, ‘분할’ 노드로 이뤄져요. 대기는 몇 분부터 몇 주까지 설정할 수 있어요. 필터와 분할은 노드가 실행되는 시점의 트리거 페이로드와 연락처 필드를 읽어요. 그래서 이메일마다 앞에 필터를 두면 실시간 주문 확인이 돼요. 각 노드는 [자동화 문서](https://docs.brew.new/create-emails/automations)에서 설명해요.

### Shopify와 Stripe 트리거로 받을 수 있는 것

Brew의 Shopify 연동은 웹훅 이벤트 13개를 받아요. 여기에는 `orders/paid`, `orders/fulfilled`, `orders/cancelled`, `fulfillments/create`, `fulfillments/update` 이벤트가 포함돼요. 주문 이벤트에는 `orderNumber`, `totalPrice`, `currency`, `financialStatus`, `fulfillmentStatus` 값이 담겨요. 주문 처리 이벤트에는 `trackingNumber`와 `trackingUrl`이 추가돼요. 모든 Shopify 주문 이벤트는 `shopify_last_order_id`, `shopify_last_order_total`, `shopify_last_order_at` 같은 연락처 필드를 업데이트해요. Stripe를 쓰는 스토어라면 `checkout.session.completed` 이벤트에 `amount`, `currency`, `paymentStatus`, `sessionMode` 값이 담기고, 환불은 `charge.refunded` 및 `refund.created` 이벤트로 다뤄요.

코드 없이 만드는 방법도 있어요. `orders/fulfilled` 이벤트로 트리거하고, 배송 기간만큼 대기한 다음, 설정 안내, 리뷰 요청, 교차 판매 이메일을 보내면 돼요. 선물 분할, 상품별 재주문, 주문 수 확인에는 사용자 지정 트리거를 쓰세요. 기본 페이로드에는 주문 품목도, 배송사의 `delivered` 상태(`fulfillmentStatus` 값은 `success`처럼 주문 처리 자체의 상태예요)도, 주문 수도 없어요. Shopify는 [API 버전 2025-01에서 고객 웹훅 페이로드의 `orders_count` 필드를 없앴고](https://shopify.dev/changelog/new-customer-s-webhook-and-changes-to-existing-customer-s-webhooks-payload), Brew는 그 대체 이벤트인 `customers/purchasing_summary`도, Shopify 환불도 받지 않아요.

### 사용자 지정 트리거로 만들기

배송이 완료되면 백엔드에서 `order_delivered` 같은 트리거를 실행하세요. Brew는 이 트리거에 연결된 활성 자동화를 모두 시작하고, 페이로드의 최상위 스칼라 필드를 연락처에 기록해요. 그래서 `orderCount` 값으로 필터링할 수 있어요.

```bash
curl -X POST "https://brew.new/api/v1/automations/triggers/$TRIGGER_ID/fire" \
  -H "Authorization: Bearer $BREW_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: delivered-1042" \
  -d '{
    "payload": {
      "email": "alex@example.com",
      "firstName": "Alex",
      "orderNumber": "#1042",
      "orderCount": 1,
      "isGift": false,
      "category": "supplements",
      "refillDays": 23,
      "items": [{ "name": "Magnesium glycinate, 60 caps", "url": "https://example.com/p/mag-60" }]
    }
  }'
```

1. 트리거 바로 뒤에 `orderCount` 값이 1과 같은지 확인하는 필터를 두세요. 그러면 재구매 고객은 아예 진입하지 않아요.
2. `isGift` 값으로 분할해 두 트랙으로 나누세요.
3. 본인용 트랙에서는 `category` 값으로 분할해 소모품을 가려내세요. 분할에는 경로가 두 개뿐이라, 그룹이 더 많으면 분할을 이어 붙이세요. 대기 시간은 고정값이므로 `refillDays` 값을 읽게 하는 대신, 재주문 그룹마다 별도의 분기와 대기(14일, 21일, 28일)를 두세요.
4. 모든 ‘이메일 보내기’ 노드 앞에 `contact.orderCount` 값이 1과 같은지 확인하는 필터를 두세요.
5. 상품 이름은 Liquid로 넣으세요(`{% for item in trigger.items %}{{ item.name }}{% endfor %}`). 이름에는 대체값을 두세요(`Hi {{ firstName | there }},`). 자세한 내용은 [개인화 태그 문서](https://docs.brew.new/create-emails/merge-tags)를 참고하세요.

결제가 완료된 주문마다 `POST /v1/contacts` 엔드포인트로 연락처를 생성하거나 업데이트해 `orderCount` 값을 최신으로 유지하세요. 예를 들면 `{ "contacts": [{ "email": "alex@example.com", "customFields": { "orderCount": 2 } }] }`처럼요. 그러면 다음 필터가 주문 2건을 확인하고, 연락처는 플로우에서 빠져나가요. `refunded` 필드도 같은 방식으로 관리하세요.

무작위 분할 노드는 없으니, 백엔드에서 무작위로 `holdout` 불리언 값을 정하고 인센티브 이메일 앞에서 이 값으로 필터링하세요. 발송은 수신 거부를 반영하는, 용도가 마케팅인 도메인에서 하세요. 용도가 트랜잭션인 도메인은 수신 거부한 연락처에게도 이메일을 전달해요. 더 자세한 내용은 [트리거 이메일 자동화](/ko/blog/triggered-email-automations-guide)와 [장바구니 이탈 이메일 가이드](/ko/blog/abandoned-cart-emails)를 참고하세요.

## 자주 묻는 질문

### 구매 후 첫 이메일은 주문 뒤 언제 보내야 하나요?

배송 완료 다음 날, 설정과 관리법을 담아 보내세요. 12월에는 주문일 기준으로 시점을 잡으면 이메일이 상품보다 먼저 도착하는 경우가 많아요.

### 배송 완료 후 언제 리뷰를 요청해야 하나요?

매일 쓰는 상품은 1주 후, 내구재와 의류는 2주 후예요. 모든 구매자에게 같은 방식으로 요청하세요. FTC의 리뷰 규칙은 긍정적인 리뷰와 연계된 보상을 금지하고, 만족한 고객에게만 요청하는 것은 일반적인 요청으로 인정되지 않아요.

### 두 번째 구매를 유도하려면 할인을 줘야 하나요?

초반에는 아니에요. 인센티브는 30~35일 차쯤 아직 주문이 한 번뿐인 연락처에게 종료일을 정해 한 번만 보내고, 홀드아웃 그룹을 두어 추가 주문으로 이어졌는지 확인하세요.

### 선물을 받은 사람에게 이메일을 보내도 되나요?

본인이 직접 가입하지 않는 한 마케팅 이메일은 안 돼요. 영국 ICO의 소프트 옵트인은 그 사람에게 판매하는 과정에서 본인에게 직접 받은 연락처를 요구해요. 상자에 가입 안내 카드를 넣으면 해결돼요.

### 고객이 다시 구매하면 플로우를 어떻게 멈추나요?

연락처에 주문 수 필드를 두고, 결제가 완료된 주문마다 업데이트하고, 이메일을 보내기 전마다 확인하세요. 환불도 같은 방식으로 처리하세요.

### 알맞은 재주문 주기는 어떻게 찾나요?

수량을 하루 사용량으로 나눈 값에서 배송 기간과 여유분을 빼는 것부터 시작하세요. 시즌이 한 번 지나면 해당 상품의 첫 주문부터 두 번째 주문까지 걸린 일수의 중앙값을 쓰세요.
