# GTM Naming Conventions

일관된 GTM 컨테이너 관리를 위한 네이밍 규칙.

## Tag Naming

### Pattern
```
[Platform] - [Type] - [Description]
```

### Examples
| Platform | Type | Description | Tag Name |
|----------|------|-------------|----------|
| GA4 | Config | Main | GA4 - Config - Main |
| GA4 | Event | purchase | GA4 - Event - purchase |
| GAds | Conversion | Purchase | GAds - Conversion - Purchase |
| Meta | Event | Purchase | Meta - Event - Purchase |
| Kakao | Event | purchase | Kakao - Event - purchase |

## Trigger Naming

### Pattern
```
[Type] - [Condition] - [Context]
```

### Type Codes
| Code | Type | Example |
|------|------|---------|
| PV | Page View | PV - All Pages |
| DL | DataLayer Event | DL - purchase |
| Click | Click | Click - CTA Button |
| Form | Form Submit | Form - Contact |
| Scroll | Scroll Depth | Scroll - 75% |
| Vis | Element Visibility | Vis - Video Player |

### Examples
```
PV - All Pages
PV - Thank You Page
DL - purchase
DL - add_to_cart
Click - CTA Button - Hero
Form - Contact Form
Scroll - 90%
```

## Variable Naming

### Pattern
```
[Type] - [Name/Path]
```

### Type Codes
| Code | Type | Example |
|------|------|---------|
| DLV | DataLayer Variable | DLV - ecommerce.value |
| CJS | Custom JavaScript | CJS - Item IDs Array |
| Const | Constant | Const - GA4 Measurement ID |
| LT | Lookup Table | LT - Page Type Mapping |
| URL | URL Variable | URL - Path |
| DOM | DOM Element | DOM - Product Title |

### Examples
```
DLV - event
DLV - ecommerce.transaction_id
DLV - ecommerce.items
CJS - Items for Meta
CJS - Formatted Price
Const - GA4 Measurement ID
Const - Meta Pixel ID
LT - Payment Method Mapping
```

## Folder Structure

```
📁 01. Configuration
📁 02. GA4 Events
📁 03. Google Ads
📁 04. Meta Pixel
📁 05. Kakao Pixel
📁 06. Other Platforms
📁 07. Utilities
📁 99. Deprecated
```

## Built-in Variables to Enable

```
Pages: ✅ Page URL, Path, Hostname, Referrer
Utilities: ✅ Event, Container ID, Random Number
Clicks: ✅ Element, Classes, ID, URL, Text
Forms: ✅ Element, Classes, ID, URL, Text
History: ✅ New/Old History Fragment/State
Videos: ✅ All YouTube variables
Scrolling: ✅ Depth Threshold, Units, Direction
Visibility: ✅ Percent Visible, On-Screen Duration
```

## Anti-patterns

```
❌ Tag 1, New Tag, Test
❌ GA4 purchase event (일관성 없음)
❌ G4-E-Pch (과도한 약어)
❌ Very Long Tag Name for Purchase Complete Event (너무 김)

✅ GA4 - Event - purchase
✅ DL - purchase
✅ CJS - Items for Meta
```

## Version Notes

```
v[Major].[Minor] - [Description]
예: v12.1 - Added form_submit event

## Changes
- Added: 
- Modified: 
- Removed: 

## Reason
[변경 이유]
```
