Skip to content

Story: 캠페인 행동 조언 (수동 광고)

메타

항목
Story IDE-04-S-04
EpicE-04 Phase 2 순이익 번역
상태ready-for-dev
우선순위P0
규모L
담당 개발자수민 (FE), 하록 (BE)

사용자 스토리

As a 수동 광고를 사용하는 셀러,
I want 입찰가를 얼마로 조정해야 하는지 알고 싶다,
So that 구체적인 금액으로 조정할 수 있다.


수락 기준 (Acceptance Criteria)

AC-01: 입찰가 조정 조언 (방향성 제시)

항목내용
Given수동 광고이고 Margin Room 대비 CPC가 높을 때
When캠페인 카드를 펼치면
Then"입찰가를 낮춰보세요" 방향성 조언이 표시된다
And허용 CPC와 현재 CPC 비교 정보가 표시된다

⚠️ 데이터 제약: 입찰가 현재값은 쿠팡 스크랩 데이터에 없어 구체적 값 제시 불가

AC-02: CPC 기반 판단

항목내용
Given입찰가 변경 조언이 표시될 때
When판단 근거를 보여줄 때
Then허용 CPC와 현재 CPC를 비교해 보여준다
현재 CPC: 180원 (계산됨: adCost / clickCount)
허용 CPC: 120원 (이 이하면 적정 순이익)

💡 입찰가를 낮추면:
• CPC가 낮아져서 광고 효율이 올라가요
• 노출은 줄 수 있지만, 순이익이 개선돼요

※ 현재 입찰가는 쿠팡 광고센터에서 확인하세요

AC-03: 쿠팡 광고센터 연결

항목내용
Given조언이 표시된 상태에서
When"쿠팡 광고센터에서 입찰가 조정하기" 버튼 클릭 시
Then쿠팡 광고센터 입찰가 관리 페이지로 이동한다

AC-04: 검색/비검색 분리 조언 (방향성)

항목내용
Given검색과 비검색의 효율 차이가 클 때
When조언이 표시되면
Then검색/비검색 각각에 대한 방향성 조언이 분리되어 표시된다

⚠️ 데이터 제약: 검색/비검색별 입찰가는 쿠팡 데이터에 없어 CPC 기반 판단


데이터 제약사항 (2026-01-26)

⚠️ 쿠팡 광고 스크랩 데이터 한계로 인한 제약

데이터상태대안
입찰가❌ 없음CPC 기반 방향성 제시
예상 변화❌ 계산 불가제거 (입찰가 현재값 모름)

핵심 원칙:

  • 구체적 값("입찰가 200원→150원") 대신 방향성("입찰가를 낮춰보세요") 제시
  • 허용 CPC vs 현재 CPC 비교로 판단 근거 제공
  • 쿠팡 광고센터 링크로 유도하여 셀러가 직접 확인/조정

태스크 분해

Task 1: BE - 수동 광고 조언 로직 AC-01, AC-02, AC-04

  • [ ] 1.1: 수동 광고 타입 식별 로직
  • [ ] 1.2: Margin Room 대비 CPC 과다 판정
  • [ ] 1.3: 허용 CPC 계산
    • 허용 CPC = (평균 주문금액 × CVR) / BEP ROAS × (1 - Margin Room%)
  • [ ] 1.4: 조언 케이스 판정 (CPC 기반 방향성)
  • [ ] 1.5: 검색/비검색 분리 조언 로직 (CPC 비교)

Task 2: FE - 조언 UI AC-01, AC-02, AC-03

  • [ ] 2.1: 수동 광고 조언 카드 컴포넌트
  • [ ] 2.2: 입찰가 비교 UI (현재 → 권장)
  • [ ] 2.3: 예상 변화 표시 (+X원)
  • [ ] 2.4: 쿠팡 광고센터 링크 버튼
  • [ ] 2.5: 검색/비검색 분리 조언 UI
  • [ ] 2.6: GA4 이벤트 (click_action_advice)

계산 로직 상세

[허용 CPC 계산]
허용 CPC = (평균 주문금액 × CVR) / BEP ROAS × (1 - Margin Room%)

예) 평균 주문금액 30,000원, CVR 3%, BEP ROAS 367%, MarginRoom 70%
→ 허용 CPC = (30,000 × 0.03) / 3.67 × 0.3 = 73원

[CPC 과다 판정]
과다 조건: 현재 CPC > 허용 CPC × 1.3
심각 조건: 현재 CPC > 허용 CPC × 1.5

예: 허용 CPC 73원, 현재 CPC 180원
→ 180 > 73 × 1.5 = 110원 → 심각 (입찰가 대폭 하향 권고)

[조언 방향성 결정]
├─ CPC > 허용CPC × 1.5 → "입찰가를 대폭 낮춰보세요"
├─ CPC > 허용CPC × 1.3 → "입찰가를 낮춰보세요"
├─ CPC ≤ 허용CPC × 1.3 AND 순이익 < 0 → "전환율 점검 필요"
└─ CPC ≤ 허용CPC AND 순이익 > 0 → "현 세팅 유지"

[검색/비검색 분리 판단]
검색 CPC > 허용CPC × 1.3 AND 비검색 CPC ≤ 허용CPC
→ "검색 입찰가를 먼저 낮춰보세요"

검색 CPC ≤ 허용CPC AND 비검색 CPC > 허용CPC × 1.3
→ "비검색 입찰가를 먼저 낮춰보세요"

※ 구체적 입찰가 권장값은 쿠팡 데이터 제약으로 제시 불가

이벤트 로깅

이벤트명트리거파라미터
view_manual_ad_advice수동 광고 조언 노출{campaign_id, current_bid, recommended_bid}
click_action_advice조언 클릭{advice_type: 'bid_adjust', campaign_id, target: 'search'/'nonsearch'}

Dev Notes

수동 광고 타입

DB 값표시분류
MANUAL수동 광고수동
KEYWORD_TARGET키워드 타겟팅수동

API 응답 예시

json
{
  "campaignId": "456",
  "adType": "manual",
  "profitPer100": 8,
  "profitStatus": "breakeven",
  "marginRate": 25,
  "advice": {
    "caseCode": "P-3b",
    "type": "bid_decrease",
    "title": "CPC가 감당 가능한 수준보다 조금 높아요",
    "message": "CPC가 살짝 높아요. 쿠팡 광고센터에서 입찰가를 낮춰보세요.",
    "action": "입찰가 소폭 하향 (쿠팡에서)",
    "search": {
      "currentCpc": 180,
      "allowedCpc": 120,
      "direction": "down",
      "profitPer100": 12
    },
    "nonsearch": {
      "currentCpc": 150,
      "allowedCpc": 100,
      "direction": "down",
      "profitPer100": -5
    },
    "priorityArea": "nonsearch",
    "actionUrl": "https://ads.coupang.com/campaign/456/bid"
  }
}

currentBid, recommendedBid, expectedChange 제거됨 (쿠팡 데이터 없음) ※ CPC 기반 방향성만 제시


### 의존성

- E-04-S-01: 순이익 번역 (profitPer100)
- E-04-S-02: Margin Room 설정
- E-03-S-01: 검색/비검색 분리 판정 로직

---

*생성일: 2026-01-20*<br>

장사왕 Product Team