# Amplitude의 이벤트와 속성 4계층

Amplitude의 분석 데이터 모델 — 이벤트 + 이벤트 속성 + 사용자 속성 + 그룹 속성 4계층의 의미와, 같은 정보라도 어디에 매다느냐에 따라 차트에서 어떻게 보이는지 정리합니다.

- 카테고리: Amplitude 이벤트 택소노미
- 소요 시간: 약 8분
- 난이도: 입문
- 업데이트: 2026.06.01
- 원문: /wiki/playbook/amplitude-event-taxonomy-checklist/what-is-amplitude-event-and-properties

## 목차

- [이 문서의 목적](#purpose)
- [Amplitude의 4계층 모델](#model)
- [각 계층의 의미](#layers)
- [같은 정보, 어디에 매다나](#where-to-attach)
- [사례로 보는 4계층](#examples)
- [GA4와의 차이](#contrast-ga4)
- [자주 묻는 질문](#faq)

Amplitude로 분석할 데이터를 설계할 때 가장 먼저 알아야 하는 것은 **이벤트 + 이벤트 속성 + 사용자 속성 + 그룹 속성** 의 4계층 모델입니다. 같은 정보라도 어디에 매다느냐에 따라 차트·코호트·Funnel에서 보이는 결과가 완전히 달라지므로, 설계 단계에서 한 번에 짚어두는 것이 가장 효율적입니다.

> **이 문서 핵심**
>
> - **대상.** Amplitude 데이터 설계를 처음 시작하는 광고주·기획자·분석가.
>
> - **완료 후.** 어떤 정보를 이벤트로, 어떤 정보를 속성으로 보낼지 판단할 수 있고, 그 속성을 어느 계층(이벤트·사용자·그룹)에 매달지 자신 있게 결정할 수 있습니다.
>
> - **준비물.** Amplitude [조직](/wiki/playbook/account-creation-checklist/how-to-create-amplitude-organization)이 만들어진 상태. SDK 설치는 이 글 다음 단계에서 다룹니다.

## Amplitude의 4계층 모델

Amplitude가 적재하는 데이터는 모두 **이벤트(Event)** 단위입니다. 한 이벤트가 발생할 때 그 이벤트에 추가로 따라붙는 정보가 **속성(Property)** 이고, 속성은 *매다는 위치* 에 따라 세 종류로 나뉩니다.

이벤트 한 건이 적재될 때

┌─ **이벤트 이름** · `play_song` ├─ **이벤트 속성** · 이 이벤트의 즉시 맥락 (song_id, artist_name, …) ├─ **사용자 속성** · 이 이벤트를 만든 사람의 상태 (plan, signup_date, …) └─ **그룹 속성** · 이 사람이 속한 그룹의 상태 (company_size, industry, …)

## 각 계층의 의미

| 계층 | 매다는 위치 | 언제 갱신되나 | 차트에서의 역할 |
| --- | --- | --- | --- |
| 이벤트 이름 (Event Name) | 이벤트 그 자체 | 발생 시 1회 | “무엇이 일어났는가” — Funnel 단계, Event Segmentation의 측정 단위 |
| 이벤트 속성 (Event Property) | 이벤트 한 건에 직접 | 발생 시 1회. 그 이벤트에만 적용 | “이 이벤트의 즉시 맥락” — Event Segmentation의 Segment by/Group by |
| 사용자 속성 (User Property) | 사용자(User ID/Device ID)에 누적 | Identify call로 갱신. 다음 이벤트부터 적용 | “이 사람의 누적 상태” — Cohort 조건, 모든 차트의 Segment by |
| 그룹 속성 (Group Property) | 그룹(회사·팀·계정)에 누적 | Group Identify로 갱신. 그 그룹의 모든 멤버에 즉시 반영 | “이 사람이 속한 조직의 상태” — Group Analytics(B2B SaaS 필수) |

> **팁**
>
> **핵심 차이.** 이벤트 속성은 *그 한 이벤트에만* 박혀 있고, 사용자 속성은 *그 사용자의 모든 이후 이벤트*에 자동으로 따라붙습니다. 그룹 속성은 *그 그룹의 모든 멤버의 모든 이후 이벤트*에 따라붙습니다. **적용 범위가 다르다는 점**이 가장 중요합니다.

## 같은 정보, 어디에 매다나

예를 들어 “Pro 요금제 사용자”라는 정보를 Amplitude에 보낼 때, 같은 사실인데도 매다는 위치에 따라 분석 가능성이 달라집니다.

| 매다는 위치 | 설정 방법(SDK) | 가능한 분석 | 한계 |
| --- | --- | --- | --- |
| 매번 이벤트 속성으로 | `track('play_song', {plan: 'Pro'})` | 이 이벤트만 plan별로 잘라 보기 | `plan`이 안 들어간 다른 이벤트(예: `open_app`)는 plan별 비교 불가 |
| 사용자 속성으로 한 번 | `identify({plan: 'Pro'})` | 이 사용자의 *모든* 이벤트가 자동으로 `plan`을 가짐. Cohort 조건에도 사용 가능 | 과거 이벤트엔 소급 적용 안 됨(Identify 호출 이후부터) |
| 그룹 속성으로 (B2B) | `setGroup('company', 'Acme'); groupIdentify({tier: 'Enterprise'})` | Acme사 모든 멤버의 모든 이벤트가 자동으로 tier=Enterprise를 가짐 | Group Analytics 유료 기능 필요 |

> **팁**
>
> **실무 원칙.** 정보가 *“사람의 상태”* 면 사용자 속성, *“그 행동의 맥락”* 이면 이벤트 속성, *“조직의 상태”* 면 그룹 속성으로. plan·signup_date·country 같은 건 사용자 속성, 그 시점에 본 곡의 song_id·playlist_id는 이벤트 속성입니다.

## 사례로 보는 4계층

### 음악 스트리밍 앱 — Pro 요금제 사용자가 곡 재생

이벤트 이름 · `play_song` 이벤트 속성 · `{song_id: "s_42", artist: "Adele", source: "playlist", playlist_id: "p_07"}` 사용자 속성 · `{plan: "Pro", signup_date: "2025-04-01", country: "KR"}` 그룹 속성 · `—` (B2C라 없음)

### B2B SaaS — Enterprise 고객사의 직원이 보고서 생성

이벤트 이름 · `create_report` 이벤트 속성 · `{report_type: "monthly_sales", row_count: 1240}` 사용자 속성 · `{role: "analyst", seat_type: "editor"}` 그룹 속성 · `{tier: "Enterprise", company_size: "500+", industry: "Retail"}`

> **완료**
>
> **이렇게 매달면.** Amplitude에서 “Enterprise 고객 중 analyst 역할 사용자가 monthly_sales 보고서를 얼마나 자주 만드는가” 같은 분석이 차트 한 번 만들기로 끝납니다 — Funnel·Cohort·Segment 어디서든 그 속성을 그대로 끌어다 쓰면 되니까요.

## GA4와의 차이

GA4를 운영해 보신 분이라면 “이벤트 매개변수 · 사용자 속성 · 아이템 매개변수” 3계층에 익숙하실 텐데, Amplitude는 결이 약간 다릅니다.

| 개념 | GA4 | Amplitude |
| --- | --- | --- |
| 이벤트의 즉시 맥락 | 이벤트 매개변수(parameter) | 이벤트 속성(event property) — 사실상 동일 |
| 사람의 누적 상태 | 사용자 속성(user property) | 사용자 속성(user property) — 용어·역할 동일 |
| 전자상거래 상품 정보 | 아이템 매개변수(item parameter) — 전자상거래 전용 별도 계층 | 이벤트 속성에 배열로 넣음 — 별도 계층 없음 |
| 조직(회사) 단위 분석 | 해당 개념 없음 — User ID에 회사명 사용자 속성으로 우회 | 그룹 속성(Group Property) — B2B SaaS 분석의 정공법 |

> **팁**
>
> **GA4에서 넘어오신 분의 흔한 실수.** Amplitude에서 회사·팀 단위 분석을 사용자 속성으로 해결하려고 하면 한 회사의 멤버가 100명이면 100번 따로 갱신해야 합니다. 그룹 속성은 한 번 갱신으로 그 회사의 모든 멤버에게 즉시 반영되니, B2B 광고주는 처음부터 Group Analytics를 염두에 두고 설계하는 편이 좋습니다.

## 자주 묻는 질문

### 이벤트 속성과 사용자 속성, 같은 정보면 둘 다 보내도 되나요?

기술적으로는 가능하지만 권장하지 않습니다. 두 곳에 같은 값을 유지하려면 코드를 양쪽에서 갱신해야 해서 어긋날 위험이 있고, Amplitude의 “이벤트 속성” 필드와 “사용자 속성” 필드가 차트 드롭다운에 따로 보이므로 분석가가 어느 쪽을 선택해야 할지 혼란스러워집니다. **“사람의 상태”는 사용자 속성에만, “그 행동의 맥락”은 이벤트 속성에만** — 원칙 한 가지로 통일하세요.

### 사용자 속성을 바꾸면 과거 이벤트에도 소급 적용되나요?

**아니요.** Identify call은 호출 시점 이후의 이벤트부터 새 값을 따라붙입니다. 과거 이벤트에 박혀 있던 옛 값은 그대로입니다. “이 사용자가 Pro로 전환한 뒤 발생한 이벤트만” 같은 분석은 자동으로 가능하지만, 전환 이전 시점의 이벤트를 새 plan 값으로 다시 보고 싶다면 그건 Amplitude의 기본 모델로는 안 됩니다.

### 그룹 속성을 안 쓰면 손해인가요?

B2C 서비스(개인 광고주 사용)면 거의 안 씁니다. B2B SaaS·교육·금융 같이 한 사용자가 *조직 안에서 행동하는* 서비스라면 안 쓰면 큰 손해입니다. Group Analytics는 Amplitude의 유료 기능이라 플랜에 포함되는지 확인하시고, 포함되면 처음부터 함께 설계하는 게 정공법입니다.

### Amplitude에는 GA4의 ‘아이템 매개변수’ 같은 게 따로 없나요?

네, 별도 계층은 없습니다. Amplitude는 전자상거래의 상품 정보도 **이벤트 속성 안의 배열**(예: `products: [{product_id, price,...}]`)로 처리합니다. 이는 차트에서 상품별 분석 시 GA4의 “Items”와 다른 방식으로 다뤄야 함을 의미합니다(해당 가이드에서 다룹니다).

### user_id를 사용자 속성으로 보내도 되나요?

보내실 필요 없습니다. Amplitude는 `setUserId()`로 받은 값을 *식별자(ID)*로 취급하고, 별도로 “user_id”라는 속성을 만들지 않습니다. 사용자 식별 로직은 별도 가이드(*User ID · Device ID · Amplitude ID*)에서 자세히 다룹니다.

## Navigation

- [전체 플레이북 Markdown sitemap](/wiki/playbook/sitemap.md)

### Amplitude 이벤트 택소노미

- [Amplitude 이벤트 택소노미](/wiki/playbook/amplitude-event-taxonomy-checklist)
- [Amplitude의 로그와 이벤트](/wiki/playbook/amplitude-event-taxonomy-checklist/what-is-amplitude-logs-and-events)
- [Amplitude 이벤트의 구조](/wiki/playbook/amplitude-event-taxonomy-checklist/what-is-amplitude-event-structure)
- [이벤트 택소노미의 정의와 CASE STUDY](/wiki/playbook/amplitude-event-taxonomy-checklist/amplitude-event-taxonomy-case-study)
- [Amplitude 이벤트의 종류](/wiki/playbook/amplitude-event-taxonomy-checklist/what-is-amplitude-event-types)
- [Amplitude 이벤트 이름과 표기법](/wiki/playbook/amplitude-event-taxonomy-checklist/how-to-name-amplitude-events)
- [Amplitude 주요이벤트와 서브이벤트](/wiki/playbook/amplitude-event-taxonomy-checklist/amplitude-key-events-vs-sub-events)
- [Amplitude 이벤트 설계의 세분성](/wiki/playbook/amplitude-event-taxonomy-checklist/how-to-decide-amplitude-event-granularity)
- [Amplitude 속성 이름과 표기법](/wiki/playbook/amplitude-event-taxonomy-checklist/how-to-name-amplitude-properties)
- [Amplitude 속성의 타입](/wiki/playbook/amplitude-event-taxonomy-checklist/how-to-choose-amplitude-property-types)
- [Amplitude의 이벤트와 속성 4계층](/wiki/playbook/amplitude-event-taxonomy-checklist/what-is-amplitude-event-and-properties) (현재 문서)
- [Amplitude의 사용자 식별 — Device ID · User ID · Amplitude ID](/wiki/playbook/amplitude-event-taxonomy-checklist/what-is-amplitude-identity)
- [Amplitude Identify call — set·setOnce·add·append·unset](/wiki/playbook/amplitude-event-taxonomy-checklist/how-to-use-amplitude-identify-call)
- [Amplitude Group Analytics — 회사·팀 단위 분석](/wiki/playbook/amplitude-event-taxonomy-checklist/what-is-amplitude-group-analytics)
- [Amplitude 전자상거래 이벤트 구현](/wiki/playbook/amplitude-event-taxonomy-checklist/how-to-implement-amplitude-ecommerce)
