2026년 10월 27일·3분 읽기
이벤트 이름 규칙 — snake_case, 예약어, 한글 이름
이벤트 목록에 Purchase와 purchase가 같이 있고, 공백이 섞인 이름과 한글 이름이 나란히 있습니다. GA4가 실제로 금지하는 것과 그냥 권하지 않는 것을 갈라서, 이름을 고칠 때 무엇을 잃는지까지 정리했습니다.
증상
보고서 > 참여도 > 이벤트를 열었더니 목록이 이렇습니다.
purchase
Purchase
상품구매완료
add to cart
btnClick_main
addToCart
각각 다른 시기에, 다른 사람이, 다른 규칙으로 붙인 이름입니다. 보고서에서 "구매가 몇 건이냐"고 물으면 답이 두 줄로 나뉘고, 새로 온 담당자는 어느 쪽이 진짜인지 알 방법이 없습니다.
GA4가 금지하는 것
먼저 취향과 규칙을 갈라야 합니다. Google 문서가 명시하는 것은 이 정도입니다.
- 이름은 문자로 시작하고, 문자·숫자·밑줄만 쓰며, 공백은 쓰지 않습니다. 그래서
add to cart와2step_signup은 규칙 밖입니다. - 대소문자를 구분합니다. 문서는
my_event와My_Event가 서로 다른 이벤트라고 적습니다. 위 목록의purchase와Purchase는 사이좋게 절반씩 나뉜 하나의 행동이 아니라, GA4 입장에서는 그냥 남남인 두 이벤트입니다. - 이름은 40자까지입니다. 문서는 여기에 한 줄을 덧붙입니다 — 40자를 넘는 이벤트를 주요 이벤트(키 이벤트)로 표시하면 내부적으로 붙는
_c가 누락돼 주요 이벤트로 보고되지 않습니다. 긴 이름은 미관 문제가 아니라 전환이 사라지는 문제입니다. - 예약된 이름이 있습니다. 웹 스트림에서는
page_view,click,scroll,session_start,first_visit,user_engagement,form_start,form_submit,file_download,video_start,view_search_results등 자동 수집·향상된 측정이 이미 쓰는 이름을 커스텀 이벤트 이름으로 쓸 수 없습니다. 웹 스트림의 예약 접두어는query_id입니다.
GA4가 금지하지 않는 것 — 한글 이름
여기서 흔한 오해를 하나 끊고 갑니다. 한글 이벤트 이름은 GA4 규칙 위반이 아닙니다. Google 문서는 이벤트 이름에 영어 및 영어 이외의 단어와 문자가 포함될 수 있다고 분명히 적고 있습니다. 상품구매완료가 수집되지 않거나 버려진다는 이야기는 사실이 아닙니다.
그런데도 우리는 이것을 감점 항목으로 봅니다. 이유는 GA4가 막아서가 아니라 사람과 도구가 걸려 넘어지기 때문입니다.
- 한글 이름이 하나 생기면 그 프로퍼티는 거의 예외 없이 두 가지 표기가 섞인 상태가 됩니다.
purchase와상품구매완료가 공존하고, 다음 사람은 셋 중 무엇을 따라야 할지 모릅니다. - GA4 표준 이벤트(
purchase,add_to_cart,sign_up등)는 전부 영문 snake_case입니다. 여기에 이커머스 보고서·추천 이벤트 동작이 붙어 있으므로, 표준 이름을 쓸 수 있는 자리에 다른 이름을 쓰면 GA4가 준비해 둔 것을 스스로 포기하게 됩니다. - 이름은 나중에 검색·필터·내보내기에서 문자열로 다뤄집니다. 표기가 흔들리면 그 모든 곳에서 조금씩 어긋납니다.
그래서 우리 점검은 커스텀 이벤트 이름을 ^[a-z][a-z0-9_]*$에 맞춰 봅니다. GA4가 기본으로 수집하는 이벤트와 추천 이벤트는 분모에서 빼고, 우리가 이름을 지은 이벤트만 셉니다. 위반 비율이 10%를 넘으면 감점이 시작되고, 30%를 넘으면 0점입니다. 한두 개는 넘어가지만 절반이 흔들리면 그 프로퍼티는 설계 없이 쌓인 것으로 봅니다.
GA4에서 확인
보고서 > 참여도 > 이벤트에서 이벤트 이름 목록을 한 화면에 놓고, 네 가지만 눈으로 찾으면 됩니다.
- 대소문자만 다른 쌍 —
Purchase/purchase처럼 옆줄에 붙어 나옵니다. - 공백·대문자·하이픈이 섞인 이름 — 규칙 밖이므로 가장 먼저 처리할 대상입니다.
- 같은 행동의 다른 이름 —
add_to_cart와addToCart,purchase와상품구매완료. 이건 이름 문제인 동시에 중복 수집 문제로 번집니다. - 긴 이름 — 40자 근처면 세어 보세요. 키 이벤트로 쓸 이름이라면 특히.
수정
새 이벤트부터 규칙을 적용하는 것이 기본입니다. 규칙 자체는 거창할 필요가 없습니다. 소문자 snake_case, 동사_명사(view_item, submit_form), GA4 표준 이름이 있으면 무조건 표준 이름 — 이 세 줄이면 충분합니다. 문서 한 장으로 적어 두고 새 태그를 만들 때마다 보게 하는 편이, 완벽한 체계를 설계하는 것보다 오래갑니다.
이미 쌓인 이름은 신중하게. GA4에는 들어오는 이벤트의 이름을 바꾸는 '이벤트 수정' 기능이 있습니다(관리자 > 데이터 표시 > 이벤트). 다만 Google 문서는 수정된 이벤트가 이전 데이터에는 적용되지 않는다고 명시합니다. 즉 이름을 바꾸는 순간 같은 행동의 기록이 옛 이름과 새 이름으로 갈라지고, 보고서에서 그 둘을 하나로 합칠 방법은 없습니다.
그래서 바꾸기 전에 세 가지를 확인하세요.
- 그 이름이 키 이벤트로 등록돼 있는지 — 이름이 바뀌면 등록도 새 이름으로 다시 해야 합니다.
- 그 이름이 잠재고객·맞춤 측정기준·광고 전환에 걸려 있는지 — 걸려 있다면 같은 날 함께 옮겨야 합니다.
- 언제 바꿨는지 기록해 두었는지 — 몇 달 뒤 보고서의 계단을 설명해 줄 유일한 단서입니다.
이름이 하나뿐이고 아직 아무 데도 안 걸려 있다면 지금 바꾸는 게 가장 쌉니다. 반대로 3년치 데이터가 걸린 이름이라면, 바꾸지 않고 규칙 문서에 "이 이름은 역사적 예외"라고 적는 선택도 충분히 합리적입니다.
한 줄 요약
GA4가 막는 것은 공백·시작 문자·40자·예약어뿐이고, 나머지는 우리가 지켜야 하는 약속입니다. 대소문자가 다르면 다른 이벤트라는 것 하나만 기억해도 목록의 절반은 정리됩니다. 그리고 이름 변경은 소급되지 않으니, 바꿀 거라면 데이터가 적은 오늘이 가장 쌉니다.
다음 글을 메일로 받아보세요
실제 진단에서 나온 GA4 문제와 고치는 순서를 월 1~2회 보냅니다. 한 번의 클릭으로 언제든 그만 받을 수 있습니다.
수집 항목·목적·보유 기간은 개인정보처리방침에 적어 두었습니다 — 개인정보처리방침