광고 권장사항

Google 게시자 태그(GPT) 라이브러리를 사이트에 통합하고 일반 권장사항을 숙지한 후 광고 요청을 실행할 수 있습니다. 다음 섹션에서는 광고 슬롯을 구성하고 작업할 때 염두에 두어야 할 몇 가지 추가 권장사항을 다룹니다. 이를 통해 성능에 미치는 영향을 최소화하면서 광고 공간을 최대한 활용할 수 있습니다.

'중요한' 광고 슬롯 우선순위 지정

모든 광고 슬롯이 동일하게 생성되는 것은 아닙니다. 예를 들어 페이지가 로드되는 즉시 표시되는 슬롯(스크롤 없이 볼 수 있는 부분)은 조회가능성 및 수익 창출 측면에서 스크롤해야 표시되는 슬롯(스크롤해야 볼 수 있는 부분)보다 일반적으로 더 '중요'합니다. 이를 염두에 두고 페이지에 있는 모든 광고 슬롯의 상대적 중요도를 신중하게 고려하고 가장 중요한 슬롯을 최대한 빨리 로드하는 데 우선순위를 두어야 합니다.

스크롤 없이 볼 수 있는 부분의 광고를 일찍 로드하기

페이지가 로드되는 즉시 표시되는 광고에 가장 높은 우선순위를 부여해야 합니다. 문서의 <head>에서 이러한 슬롯을 정의하고 페이지 로드 프로세스에서 가능한 한 빨리 요청하는 것이 좋습니다. 이렇게 하면 이러한 광고가 조기에 로드되어 조회가능성이 극대화되고 초기 페이지 로드 속도가 불필요하게 느려지지 않습니다.

스크롤해야 볼 수 있는 부분의 광고 지연 로드

스크롤해야 표시되는 광고의 경우 슬롯이 표시 영역에 들어오기 직전까지 가져오기 및 렌더링을 지연해야 합니다. 이 프로세스를 지연 로드라고 합니다. 지연 로드는 조회 가능성이 가장 높은 슬롯의 광고 소재 콘텐츠를 요청하고 렌더링하는 데 별도로 우선순위를 지정합니다. 이렇게 하면 브라우저의 제한된 리소스를 절약하여 페이지 로드 성능을 최적화할 수 있습니다. 이는 대역폭과 CPU가 심하게 제한되는 모바일 환경에서 특히 중요합니다.

페이지를 새로고침하지 않고 광고 새로고침

슬롯의 현재 광고 콘텐츠를 교체하는 것이 최적이거나 필요한 시나리오는 많습니다. 이러한 경우에는 GPT 라이브러리의 새로고침 기능을 사용하여 동적으로 새로고침하는 것이 가장 좋습니다. 이렇게 하면 전체 페이지 새로고침을 방지하고 슬롯 또는 슬롯 그룹이 업데이트되는 조건을 정확하게 제어할 수 있습니다.

광고 슬롯을 새로고침할 때는 refresh() 권장사항을 숙지하고 준수하는 것이 중요합니다. 광고를 부적절하게 새로고침하면 성능 문제가 발생하고 조회 가능 노출률에 부정적인 영향을 미칠 수 있습니다.

효과적인 광고 타겟팅

키-값 타겟팅을 구성할 때는 슬롯 수준 타겟팅을 사용할지 페이지 수준 타겟팅을 사용할지 신중하게 고려하세요. 여러 슬롯 간에 공유되는 키-값의 경우 googletag.setConfig({ targeting: ... })를 사용하여 페이지 수준 타겟팅을 사용하는 것이 가장 효과적입니다. 슬롯 수준 타겟팅은 모든 슬롯에 포함되지 않거나 다른 키-값을 등록하는 데만 사용해야 합니다.

타겟팅 설정 예에서 볼 수 있듯이 슬롯 및 페이지 수준 타겟팅을 모두 한 번에 사용할 수 있습니다. 페이지 수준에서 타겟팅을 먼저 구성한 다음 필요한 경우에만 슬롯 수준 재정의를 적용하는 것이 좋습니다. 이 접근 방식은 GPT API를 효율적으로 사용할 뿐만 아니라 코드를 간소화하고 페이지에 구성된 모든 타겟팅의 명확한 정신 모델을 유지하는 데 도움이 됩니다.

단일 요청 아키텍처를 올바르게 사용하기

단일 요청 아키텍처(SRA)는 여러 광고 슬롯에 대한 요청을 단일 광고 요청으로 묶는 GPT 요청 모드입니다. 이렇게 하면 페이지에 구성된 경쟁 제외 및 로드블록이 적용됩니다. 따라서 페이지에서 이러한 기능을 사용하는 경우 SRA를 사용 설정하고 올바르게 사용하는 방법을 이해하는 것이 좋습니다.

기본 구성에서 SRA는 display()(또는 refresh(), 초기 로드가 사용 중지된 경우)를 처음 호출할 때 페이지에 정의된 모든 광고 슬롯을 요청합니다. 따라서 display()를 처음 호출하기 전에 문서의 <head>에서 페이지의 모든 광고 슬롯을 정의하는 것이 좋습니다. 지연 로드를 이 접근 방식과 함께 사용하면 스크롤해야 볼 수 있는 부분에 있는 슬롯이 즉시 로드되지 않습니다.

SRA를 사용할 때는 display()를 처음 호출하기 전에 모든 광고 슬롯을 완전히 구성하는 것이 중요합니다(예: 타겟팅, 카테고리 제외 설정 등). 이 시점 이전에 구성된 값만 초기 SRA 요청에 포함됩니다.

잘못됨 — 광고 슬롯 구성이 SRA 요청에 포함되지 않음

<html>
  <head>
    <meta charset="utf-8">
    <title>Single Request Architecture Example</title>
    <script src="https://securepubads.g.doubleclick.net/tag/js/gpt.js" crossorigin="anonymous" async></script>
    <script>
      window.googletag = window.googletag || {cmd: []};
      var adSlot1, adSlot2;

      googletag.cmd.push(function() {
        // Define ad slot 1.
        adSlot1 = googletag
            .defineSlot('/6355419/Travel/Europe/France',[728, 90], 'banner-ad-1')
            .addService(googletag.pubads());
        // Define ad slot 2.
        adSlot2 = googletag
            .defineSlot('/6355419/Travel/Europe/France',[728, 90], 'banner-ad-2')
            .addService(googletag.pubads());
        // Enable SRA and services.
        googletag.setConfig({ singleRequest: true });
        googletag.enableServices();
      });
    </script>
  </head>
  <body>
    <div id="banner-ad-1" style="width: 728px; height: 90px;">
      <script>
        googletag.cmd.push(function() {
          // This call to display requests both ad slots.
          googletag.display(adSlot1);
        });
      </script>
    </div>
    <div id="banner-ad-2" style="width: 728px; height: 90px;">
      <script>
        googletag.cmd.push(function() {
          // This call to display has no effect, since both ad slots have already
          // been fetched by the previous call to display.
          // Targeting configuration for ad slot 2 is ignored.
          adSlot2.setConfig({ targeting: { test: 'privacy' } });
          googletag.display(adSlot2);
        });
      </script>
    </div>
  </body>
</html>

올바름 — 광고 슬롯 구성이 SRA 요청에 포함됨

<!doctype html>
<html>
  <head>
    <meta charset="utf-8">
    <title>Single Request Architecture Example</title>
    <script src="https://securepubads.g.doubleclick.net/tag/js/gpt.js" crossorigin="anonymous" async></script>
    <script>
      window.googletag = window.googletag || {cmd: []};
      var adSlot1, adSlot2;

      googletag.cmd.push(function() {
        // Define ad slot 1.
        adSlot1 = googletag
            .defineSlot('/6355419/Travel/Europe/France',[728, 90], 'banner-ad-1')
            .addService(googletag.pubads());
        // Define and configure ad slot 2.
        adSlot2 = googletag
            .defineSlot('/6355419/Travel/Europe/France',[728, 90], 'banner-ad-2')
            .addService(googletag.pubads());
        adSlot2.setConfig({ targeting: { test: 'privacy' } });
        // Enable SRA and services.
        googletag.setConfig({ singleRequest: true });
        googletag.enableServices();
      });
    </script>
  </head>
  <body>
    <div id="banner-ad-1" style="width: 728px; height: 90px;"></div>
    <div id="banner-ad-2" style="width: 728px; height: 90px;"></div>
    <script>
        googletag.cmd.push(function() {
          // This call to display requests both ad slots with all
          // configured targeting.
          googletag.display(adSlot1);
        });
      </script>
  </body>
</html>

광고 크기 최적화

광고 슬롯을 정의할 때는 게재할 수 있는 최대 크기의 광고뿐만 아니라 동일한 공간에 편안하게 들어갈 수 있는 작은 크기도 고려하세요. 일반적으로 슬롯을 정의할 때 지정하는 크기가 많을수록 해당 슬롯에 게재할 수 있는 광고가 많아집니다. 그 결과 유효노출률이 더 높아지고 수익이 증대될 수 있습니다.