GTM으로 모든 사이트에 적용 가능한 만능 클릭 태그 심기 - 1

nooreong·2023년 7월 13일
2
post-thumbnail

안녕하세요.
nooreong입니다.

여러 경로를 통해 연락 주시는 분들께 GTM과 관련된 조언을 드리다보면, 종종 과하다는 생각이 들만큼 많은 클릭 이벤트 태그가 심어진 것을 발견하곤 합니다. 예를 들면 아래와 같은 태그가 3-40개 설정되어있는 것이죠.

click_a_button, click_b_button, click_m_menu, click_n_menu, ...

물론 이렇게 해도 됩니다. 그러나 제가 생각하기에 위 방식에는 다음과 같은 단점이 있습니다.

  1. 클릭 이벤트마다 별도의 트리거를 생성해야 하므로 너무 공수가 크다.
  2. 웹페이지의 요소나 코드 변경에 일일이 대응할 수 없어 관리가 어렵다.
  3. 수집하기로 결정하고, 설정까지 한 후에야 데이터를 수집할 수 있다.
  4. 이 정도의 수고를 들일만큼 개별 클릭 이벤트의 가치가 있는지 의문이다.

그래서 오늘은 GTM으로 만능 클릭 태그를 심는 법에 대해 소개하겠습니다.

쉬운 방법

단 한 줄의 코드 작성도 필요 없는 쉬운 방법부터 소개하겠습니다. 대단히 특별한 방법은 아니고, 있는 것을 잘 활용하는 방법인데요. 수집된 데이터를 알아보려면 약간의 HTML에 대한 지식은 필요하다는 점 미리 말씀드립니다.

우선 클릭 이벤트를 2가지로 만듭니다. 하나는 click_elements라는 이름, 다른 하나는 click_links라는 이름입니다.

click_elements 이벤트

  • click_elements
    + click_text
    + click_id
    + click_class
    + click_element

위와 같이 모든 요소의 클릭에 반응하는 click_elements라는 이벤트를 만들고, 기본 제공하는 click_text, click_id, click_class, click_element 매개변수를 보내면, 대충 어디를 누른 것인지 파악이 가능합니다.
잘 모르겠을 경우에는 GTM의 미리보기 기능, 즉 디버그 모드에서 웹 페이지의 의심가는 곳들을 눌러보면 어느 곳을 누를 때 해당 데이터가 수집되는지 대조할 수 있습니다.

  • click_links
    + click_text
    + click_url

사실 click_links 이벤트는 만들지 않고 click_elements 이벤트 하나만으로 끝낼 수 있으면 좋은데요. 아쉽게도 click_elements에서는 click_url 파라미터를 설정해두어도 최종 노드의 요소가 a일 때만 수집됩니다. 설정을 잘못한 것은 아니고 GTM이 그렇습니다.
사용자가 분명히 링크를 클릭하여 페이지를 이동하더라도 최종 노드의 요소가 a가 아닌 다른 요소라면 url이 수집되지 않기 때문에 모든 링크에 반응하는 click_links 이벤트를 따로 만들어 링크에 대한 클릭은 별도로 수집해야 합니다.

다음 편 예고

쉬운 방법은 알아봤으니, 다음 편에서는 어려운 방법에 대해 알아보겠습니다. 누군가에겐 과하고, 다른 누군가에겐 돈 주고 사도 아깝지 않은 방법입니다. (물론 어디까지나 제 생각입니다.)

감사합니다.
nooreong 드림.

profile
nooreong의 velog입니다.

0개의 댓글