이벤트 측정

이 가이드에서는 analytics.js로 이벤트를 측정하는 방법을 설명합니다.

개요

이벤트란 웹페이지 또는 화면 로드와는 별개로 측정할 수 있는 콘텐츠와 사용자의 상호작용을 말합니다. 예를 들어 다운로드, 모바일 광고 클릭, 가젯, Flash 요소, AJAX 포함 요소 및 동영상 재생 등의 액션을 이벤트로 추적할 수 있습니다.

Google 애널리틱스의 이벤트에 대해 익숙하지 않은 경우 먼저 애널리틱스 고객센터이벤트 정보 도움말을 읽어보세요.

구현

이벤트 조회는 send 명령어를 사용하고 hitTypeevent로 지정하여 전송할 수 있습니다. event조회 유형에 대한 send 명령어의 서명은 다음과 같습니다.

ga('send', 'event', [eventCategory], [eventAction], [eventLabel], [eventValue], [fieldsObject]);

이벤트 필드

다음 표에서는 이벤트 필드가 요약되어 있습니다.

필드 이름 값 유형 필수 설명
eventCategory 텍스트 일반적으로 상호작용된 객체 (예: 'Video')
eventAction 텍스트 상호작용 유형 (예: 'play')
eventLabel 텍스트 없음 이벤트 분류에 유용합니다 (예: 'Fall Campaign').
eventValue 정수 없음 이벤트와 연관된 숫자 값 (예: 42)

각 필드에 대한 자세한 설명은 애널리틱스 고객센터의 이벤트 분석을 참고하세요.

예:

다음 명령어는 가을 캠페인 프로모션 동영상이 재생되었음을 나타내는 이벤트를 Google 애널리틱스로 전송합니다.

ga('send', 'event', 'Videos', 'play', 'Fall Campaign');

모든 send 명령어와 마찬가지로 편의 매개변수에 전달된 필드는 fieldsObject에 지정될 수도 있습니다. 위의 명령어를 다음과 같이 다시 작성할 수 있습니다.

ga('send', {
  hitType: 'event',
  eventCategory: 'Videos',
  eventAction: 'play',
  eventLabel: 'Fall Campaign'
});

사용자가 사이트의 다른 페이지로 연결되는 링크를 클릭하면 일반적으로 이 페이지는 사용자가 도착할 때 페이지 조회를 전송합니다. 일련의 페이지 조회가 있기 때문에 Google 애널리틱스는 백엔드에서 사용자가 이동한 지점과 이후에 이동한 위치를 파악할 수 있습니다. 하지만 사용자가 링크를 클릭하거나 양식을 외부 도메인에 제출하는 경우, Google 애널리틱스에 어떤 일이 발생했는지 명시적으로 알려주지 않는 한 이러한 작업은 캡처되지 않습니다.

이벤트를 전송하고 이벤트 필드 중 하나에 도착 URL을 지정하여 아웃바운드 링크 및 양식 이벤트 측정을 수행할 수 있습니다. 다음 이벤트 핸들러 함수를 사용하여 Google 애널리틱스로 아웃바운드 링크 클릭 이벤트를 전송할 수 있습니다.

function handleOutboundLinkClicks(event) {
  ga('send', 'event', {
    eventCategory: 'Outbound Link',
    eventAction: 'click',
    eventLabel: event.target.href
  });
}

대부분의 브라우저가 새 페이지가로드되면 현재 페이지에서 자바스크립트 실행을 중단하기 때문에 아웃 바운드 링크 및 양식을 Tricky 할 수 있습니다. 이 문제를 해결하는 한 가지 방법은 transport 필드를 beacon로 설정하는 것입니다.

function handleOutboundLinkClicks(event) {
  ga('send', 'event', {
    eventCategory: 'Outbound Link',
    eventAction: 'click',
    eventLabel: event.target.href,
    transport: 'beacon'
  });
}

표지 전송 방법을 지원하지 않는 브라우저의 경우 이벤트가 전송을 마칠 때까지 다음 페이지로 연기해야 합니다. 이 방법에 대한 자세한 내용은 Google 애널리틱스에 데이터 전송 가이드의 조회 전송 시점 확인 섹션을 참조하세요.

비상호작용 이벤트

경우에 따라 비상호작용 이벤트로 이벤트를 전송해야 할 수도 있습니다. 이렇게 하려면 send 명령어의 fieldsObject에서 nonInteraction 필드를 true로 지정합니다.

ga('send', 'event', 'Videos', 'play', 'Fall Campaign', {
  nonInteraction: true
});

비 상호작용 조회 및 사용 시기에 대한 자세한 내용은 애널리틱스 고객센터의 비상호작용 이벤트를 참조하세요.