Files
our-claude-skills/custom-skills/22-gtm-guardian/code/references/platform-mapping.md
Andrew Yim b859d0a266 feat(gtm-guardian): Reorganize skill with dual-platform structure
- Add desktop/ directory for Claude Desktop (Phase 1-5: analysis, design, docs)
- Add code/ directory for Claude Code (Phase 6-7: automation, audit)
- Create SKILL.md with YAML frontmatter for Desktop compatibility
- Create CLAUDE.md for Code automation workflows
- Organize references by platform scope with shared files duplicated
- Add templates for tagging plan and event taxonomy
- Include README.md with overview and usage guide

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-31 19:59:22 +09:00

3.2 KiB

Platform Event Mapping Reference

GA4, Google Ads, Meta Pixel, Kakao Pixel 간 이벤트 매핑.

E-commerce Events

User Action GA4 Meta Kakao Google Ads
상품 목록 조회 view_item_list ViewContent viewContent -
상품 상세 조회 view_item ViewContent viewContent -
상품 검색 search Search search -
장바구니 담기 add_to_cart AddToCart addToCart -
위시리스트 add_to_wishlist AddToWishlist addToWishlist -
결제 시작 begin_checkout InitiateCheckout beginCheckout -
배송정보 입력 add_shipping_info - - -
결제정보 입력 add_payment_info AddPaymentInfo addPaymentInfo -
구매 완료 purchase Purchase purchase purchase

Lead Gen Events

User Action GA4 Meta Kakao Google Ads
회원가입 sign_up CompleteRegistration completeRegistration sign_up
로그인 login - login -
리드 생성 generate_lead Lead participation submit_lead_form

Engagement Events

User Action GA4 Meta Kakao Google Ads
페이지 조회 page_view PageView pageView page_view
검색 search Search search -
공유 share - - -

Parameter Transformation

GA4 → Meta

// GA4 items[] → Meta content_ids[]
const contentIds = items.map(item => item.item_id);

// Meta Purchase
fbq('track', 'Purchase', {
  content_ids: contentIds,
  content_type: 'product',
  value: ecommerce.value,
  currency: 'KRW',
  num_items: items.length
});

GA4 → Kakao

// GA4 items[] → Kakao products[]
const products = items.map(item => ({
  id: item.item_id,
  name: item.item_name,
  price: item.price,
  quantity: item.quantity
}));

// Kakao purchase
kakaoPixel('PIXEL_ID').purchase({
  total_price: ecommerce.value,
  currency: 'KRW',
  products: products
});

GTM Variables

CJS - Item IDs for Meta

function() {
  var items = {{DLV - ecommerce.items}} || [];
  return items.map(function(item) {
    return item.item_id;
  });
}

CJS - Products for Kakao

function() {
  var items = {{DLV - ecommerce.items}} || [];
  return items.map(function(item) {
    return {
      id: item.item_id,
      name: item.item_name,
      price: item.price,
      quantity: item.quantity
    };
  });
}

Deduplication

Event ID Pattern

var eventId = 'evt_' + Date.now() + '_' + Math.random().toString(36).substr(2, 9);

// Client-side
fbq('track', 'Purchase', {...}, {eventID: eventId});

// Server-side (CAPI)
// 동일한 eventId 사용 → Meta 자동 중복 제거

Platform-specific Notes

Meta Pixel

  • content_type: 'product' (상품) / 'product_group' (변형)
  • currency: ISO 4217 필수
  • value: 숫자 (소수점 가능)

Kakao Pixel

  • Server-side 미지원 (Client-only)
  • products[]: 최대 10개 권장
  • total_price: 숫자

Google Ads

  • Enhanced Conversions 권장
  • transaction_id 필수 (중복 제거용)
  • value: KRW 정수