지난 글을 통해
구글애즈(Google Ads) API
를 활용하기 위한 인증 과정을 설명드렸습니다.이번 2편에서는 연동한 인증 정보를 바탕으로 광고 데이터를 어떻게 자동으로 호출-시각화-인사이트 도출할 수 있는지에 대해 살펴보겠습니다.. 내가 원하는 구글애즈 성과지표를 가져오고, 구글애즈 계층구조 내 데이터를 어떻게 정렬하고 비교할 수 있는지, 그리고 GAQL 쿼리를 통해 원하는 데이터를 어떻게 설계할 수 있는지까지 자세히 다뤄보겠습니다.
또한 Python 언어를 활용한 데이터 분석도 소개드릴 예정인데요. Pandas는 대규모 데이터를 다루는 데 특화된 Python 라이브러리로,
구글애즈(Google Ads) API
로 수집한 원본 데이터를 정제하여 필요한 컬럼(column)만 추출하고 캠페인이나 광고 그룹 단위로 비교 분석할 수 있는 유용한 솔루션입니다.이 구조를 설계하는 이유는 구글애즈 광고 성과 데이터를 자동 호출하는 자동화 구축을 넘어, 지표 간 연산을 통해 유의미한 전환 지표를 도출하고 그 결과를 통해 비즈니스 성과에 직접 연결될 수 있는 인사이트를 발견하기 위함입니다.
이번 글의 핵심은 아래와 같습니다
데이터 호출 → 전처리 → 지표 조합 → 인사이트 도출 → 자동 정리
구글애즈(Google Ads) API
에서 데이터를 호출하는 기본 코드 구조
- GAQL 쿼리로 필요한 지표만 가져오는 방법
- Pandas를 이용한 데이터 전처리 및 조인
- Google Sheets에 자동 정리된 보고서 형태로 저장하는 과정
Google Ads API 호출 구조 이해
구글애즈(Google Ads) API
는 Google의 쿼리 언어인 GAQL(Google Ads Query Language)로 데이터를 호출하도록 설계되어 있습니다. SQL과 유사한 문법을 가지고 있기 때문에, 기본적인 데이터베이스 쿼리 문법에 익숙하다면 빠르게 익힐 수 있습니다.먼저, 캠페인 단위에서 가장 기본적인 성과 데이터를 불러오는 GAQL 쿼리입니다. 실무에서도 일간 성과 리포트의 기본 구조로 가장 많이 활용되는 형태입니다.

이 쿼리의 핵심은
campaign.id
와 campaign.name
을 기준으로 각 캠페인의 노출 수(impressions), 클릭 수(clicks), 전환 수(conversions)를 불러온다는 점입니다. 이번 블로그에선 대표적인 지표값만 호출 했는데요. 해당 캠페인이 최근 7일 동안 얼마나 많이 노출되었는지(impressions), 얼마나 많은 클릭이 발생했는지(clicks), 그리고 몇 번의 전환이 발생했는지(conversions)를 파악할 수 있습니다.이런 형태의 쿼리 구성은 캠페인별 성과를 직관적으로 파악할 수 있으며 전체 광고 성과의 흐름을 빠르게 파악할 수 있습니다. 또한 GAQL 쿼리의
WHERE
절에서는 segments.date DURING LAST_7_DAYS
조건을 통해 최근 일주일 기준으로 데이터를 필터링하고 있으며, 이 부분은 원하는 기간(LAST_30_DAYS
, THIS_MONTH
등)으로 자유롭게 커스텀 변경이 가능합니다.만약 구글애즈를 통해 ‘모바일 게임 앱 광고’를 진행한다면, 게임 앱광고 특성상 CPI(앱 설치당 비용) 수치변화에 따른 광고소재 교체가 빠르게 이뤄져야합니다. 게임 업종의 특성 상 광고소재의 휘발성이 크며, 소재에 따라 성과가 극명하게 나뉘기때문에 하루 200개 이상의 광고소재를 교체하며 실시간으로 성과 측정했던 게임 앱광고 운영 사례도 있었습니다. 아래는 businessofapps에서 제공한 광고매체별 모바일 게임 CPI 평균수치 값 입니다.

항목 | GoogleAds | Meta(Facebook) | Tictok |
평균 CPC | $0.88 | $0.56 | $0.35 |
평균 CPI | $3 | $3.75 | $2.875 |
평균 CPA | $5.42 | $29.55 | $5.09 |
앱 설치당 비용을 1원 단위까지 측정하여 성과있는 광고소재 기준으로 광고소재 제작 및 구글애즈 광고시스템 관리를 모두 수작업으로 진행한다면, 정말 많은 리소스가 투여될 것입니다. 이번 챕터에서 다루고 있는 Google Ads API 호출 구조 이해하고 자동화 대시보드를 구축할 수 있다면, 게임 업종 뿐만 아니라 구글애즈 광고를 하는 모든 업종에서도 효율적으로 응용 및 활용이 가능할 것입니다.
그리고 광고 타겟별 성과를 세부적으로 분석하기 위해 광고그룹(ad group) 단위에서 데이터를 조회할 수 있습니다. 구글애즈에서는 광고그룹 기준으로 잠재고객 타겟팅, 입찰가 조정 등이 설정되므로 광고 그룹 ID와 이름을 기준으로 클릭률(CTR), 광고비 등을 호출하는 GAQL 쿼리를 통해 광고그룹 타겟별 성과 측정이 가능합니다.

이 쿼리의 핵심은
ad_group.id
와 ad_group.name
을 기준으로 광고 그룹별로 노출 수(impressions), 클릭 수(clicks), 클릭률(ctr), 광고비(cost_micros)를 불러온다는 점입니다. 구글애즈에서 확인가능한 광고지표는 모두 호출이 가능하니, 업종 및 제품/서비스 특성에 맞게 지표를 호출할 수 있습니다. 위 지표 중
metrics.ctr
은 광고 효율을 보여주는 중요한 지표이며 metrics.cost_micros
는 1,000,000 마이크로 단위 = 1원이므로, 실제 비용 계산 시 이를 1,000,000으로 나눠주어야 합니다.해당 쿼리를 통해 타겟별 광고 그룹 중 어떤 그룹이 높은 클릭수, CTR 등을 달성했는지, CPC/CPA/CPI 등의 비용이 낮아졌는지 파악이 가능합니다. 즉, 예산 대비 효율적인 성과를 낸 광고그룹을 빠르게 판단할 수 있습니다. 또한,
segments.date DURING LAST_7_DAYS
조건을 통해 기간 필터링을 하고 있으며, 이 역시 다른 조건으로 쉽게 조정할 수 있습니다 (LAST_30_DAYS
, THIS_MONTH
등).지금까지 GAQL 쿼리 예제를 통해
구글애즈(Google Ads) API
로 실질적인 광고 데이터를 어떻게 호출할 수 있는지 확인해봤습니다. 핵심은 광고 계정의 계층 구조(캠페인, 광고 그룹 등)를 정확히 이해하고, 그 구조에 맞는 지표(metrics)를 목적에 맞게 불러오는 설계입니다.저희 위그로스는 구글애즈의 계층구조 중 ‘캠페인, 광고그룹’ 기준으로 광고지표 값을 호출하여 대시보드 구축하시는 것을 권장드립니다. ‘캠페인, 광고그룹’에 종속되는 ‘광고, 키워드’도 함께 추출하여 지표화가 가능하므로, 어떤 캠페인/광고그룹 기준으로 광고/키워드 성과를 쉽고 빠르게 파악할 수 있습니다.
여기에 기간 설정, 필터 조건, 정렬 방식 등을 더하면 기업에 최적화된 데이터 분석 환경을 구성할 수 있습니다. 이렇게 불러온 데이터를 Python 환경에서 Pandas를 사용해 전처리하고, 다시 Google Sheets에 정리하여 Looker Studio로 시각화하는 흐름까지 이어서 정리해보겠습니다.
Python 코드로 Google Ads API 호출
앞서 살펴본 GAQL 쿼리를 Python 환경에서 실질적으로 호출하려면, Google에서 제공하는 공식 Python 클라이언트 라이브러리를 사용해야 합니다. 이 라이브러리는 OAuth 인증, 서비스 객체 생성, API 요청 처리 등 복잡한 과정을 간단하게 다룰 수 있도록 합니다.
기본적인 형태의 API 호출을 하는 방법입니다:

GoogleAdsClient.load_from_storage()
함수를 통해 설정 파일(google-ads.yaml
)을 불러온 뒤, search_stream()
메서드를 활용하여 실시간으로 광고 성과 데이터를 가져왔습니다. GAQL 쿼리만 변경하면 캠페인, 광고 그룹, 키워드, 전환 경로 등 다양한 조건의 데이터를 유연하게 추출할 수 있으며, 특정 기간 조건(segments.date
)이나 필터 조건(metrics.conversions > 10
) 등을 추가하면 더욱 정교한 분석도 가능합니다.이후
Pandas
로 가공하고 Google Sheets
에 업로드하거나 Looker Studio
와 연결하여 실시간 대시보드로 확장할 수 있는 데이터 파이프라인의 시작 단계입니다.Google Apps Script → Pandas → Google Sheets 흐름
Google Ads API를 통해 데이터를 불러오는 방식은 다양합니다. Python만 사용하는 경우도 있지만, 내부 운영 환경이나 팀의 기술 리소스에 따라 Google Apps Script를 활용한 구조가 더 효율적인 경우도 많습니다. 특히 Google Sheets와의 연동이 중심이 되는 워크플로우에서는 Apps Script와 Python을 적절히 혼합하는 방식이 실무에 잘 맞습니다.
이미 Apps Script에서 Google Ads API 데이터를 Google Sheets로 불러오는 구조가 마련되어 있다면, 이후의 흐름을 다음과 같이 확장할 수 있습니다.
1. Google Ads 데이터를 Google Sheets로 저장 (Apps Script)
2. Python(Pandas)로 Google Sheets의 데이터를 읽어 전처리
3. 정제된 데이터를 다시 Google Sheets에 업로드
1️⃣ Apps Script로 Google Ads API 데이터 불러오기
Google Apps Script는 Google Sheets 내에서 실행할 수 있는 경량 스크립트 언어로,
구글애즈(Google Ads) API
와 직접 통신하여 데이터를 불러올 수 있습니다.
해당 스크립트를 통해 실시간으로 Google Ads 데이터를 호출하고, 지정된 시트에 저장할 수 있습니다. 데이터 구조에 따라 시트에 넣기 전 간단한 가공 로직이 필요할 수 있습니다.
2️⃣ Python으로 Google Sheets 데이터 불러오기
Google Sheets에 저장된 데이터를 Python에서 불러와 분석하려면
gspread
와 pandas
를 활용할 수 있습니다. 이때 서비스 계정 기반 인증이 필요합니다.

이 코드를 통해 시트 데이터를 정형화된 Pandas 데이터프레임으로 변환할 수 있고, 이후 다양한 전처리 작업을 자유롭게 수행할 수 있습니다.
3️⃣ Pandas를 활용한 전처리
데이터 전처리 과정은 분석 목적에 따라 달라질 수 있습니다. 아래는 대표적인 예시입니다.

예를들어 CTR(Click Through Rate, 클릭률)이 5% 이상인 광고만 필터링하거나, 불필요한 행을 제거하는 등의 전처리를 통해 정제된 성과 분석 데이터를 만들 수 있습니다.
4️⃣ 정제된 데이터를 다시 Google Sheets에 업로드
최종적으로 전처리된 결과물을 다시 Google Sheets로 자동 저장하여, 팀원들과 공유하거나 대시보드에 연동할 수 있습니다.

이 과정은 데이터 전처리와 보고서 자동화의 연결 고리를 만들어줍니다. Python과 Google Sheets를 함께 활용하면 수작업 없이도 데이터 흐름을 유연하게 관리할 수 있습니다.
이 구조의 장점은 명확합니다. Apps Script는 API 호출에 최적화되어 있고, Python(Pandas)은 데이터 전처리와 계산에 강력하며, Google Sheets는 최종 공유 플랫폼으로 직관적인 시각화를 지원합니다.
결국 이 전체 흐름은 단순히 반복 업무를 줄이기 위한 자동화가 아니라, 의사결정을 빠르게 하기 위한 데이터 파이프라인 구축에 가깝습니다.
- 보고서 생성에 걸리는 시간 최소화
- 실시간 KPI 모니터링 가능
- 반복 없이 누구나 동일한 기준의 데이터를 확인 가능
Looker Studio 시각화 및 자동화
Google Ads 데이터를 Google Sheets에 자동으로 수집하고 전처리까지 완료했다면, 이제 그 데이터를 조직 내 누구나 쉽게 확인할 수 있는 시각화 대시보드로 전환하는 작업이 필요합니다. 여기서 가장 유용하게 활용할 수 있는 도구가 바로 Looker Studio(구 Google Data Studio)입니다. Google Sheets를 데이터 소스로 연결하면, 별도의 코드 없이도 다양한 방식으로 광고 데이터를 시각화할 수 있습니다.
- 날짜 필터를 통해 원하는 기간의 성과를 비교하거나
- 캠페인명, 광고 그룹별 지표 정렬을 통해 전략 우선순위를 결정하거나
- 전환 수, 클릭률(CTR), ROAS 등 주요 KPI를 그래프와 표로 직관적으로 확인할 수 있습니다
Looker Studio의 가장 큰 장점은 Google Sheets와 연동된 자동 반영 구조입니다.
구글애즈(Google Ads) API
를 통해 수집된 데이터를 Google Sheets로 자동 입력하고, 이 흐름을 Make 자동화 툴을 활용해 구축했습니다. Make 시나리오를 통해 Google Sheets에 주기적으로 데이터가 업데이트 되도록 설정해두면, Looker Studio 대시보드에서 실시간으로 시각화 결과를 반영할 수 있습니다.
아래와 같은 Work-Flow로 확장 가능합니다.
- 업데이트된 시트 데이터를 기반으로 한 Slack 메시지 자동 발송
- 광고 성과 요약 리포트를 이메일로 정기 전송
- 특정 지표 변화에 따른 조건부 트리거 알림 설정
데이터 수집 → 정리 → 시각화 → 공유까지의 모든 과정이 Make를 중심으로 하나의 파이프라인으로 연결되며, 팀 전체가 동일한 기준의 데이터를 기반으로 실시간 의사결정을 할 수 있는 구조가 완성됩니다. 앞서 구축한 데이터 파이프라인은 전사적 광고 운영의 전략적 실행력을 높여주는 핵심 인프라로 작동합니다.

마무리하며
API 연동 → API 호출 → 데이터 수집 → 전처리 → 지표 간 조합 → 인사이트 도출 → Google Sheets로 자동화 → 루커 스튜디오를 통한 시각화까지 일련의 과정을 다뤘습니다.
구글애즈(Google Ads) API
는 광고 운영 성과를 실시간으로 확인하고, 캠페인별·지표별로 정제된 분석이 가능하도록 도와주는 핵심 도구입니다. 광고 데이터를 더 잘 보기 위한 자동화를 넘어, 더 빠르고 정교한 의사결정을 위한 데이터 인프라를 구축하는 것이 핵심입니다.
이번 글에서는
구글애즈(Google Ads) API
의 인증과 데이터 호출부터, Pandas 기반의 전처리, 그리고 Make와 Looker Studio를 활용한 자동화 및 시각화까지, 광고 데이터를 인사이트로 전환하는 전체 흐름을 다뤘습니다.- API 연동 → API 호출 → 데이터 수집 → 전처리 → 지표 간 조합 → 인사이트 도출 → Google Sheets로 자동화 → Looker Studio를 통한 시각화
데이터 파이프라인이 구축되면 매일 반복되던 수작업 리포트는 사라지고, 성과 중심의 빠른 의사결정과 캠페인 최적화로 이어집니다. 하지만 이 과정을 구현하기엔 높은 진입장벽과 리소스가 필요한 것도 사실입니다. 위그로스는 이 복잡한 기술 흐름을 쉽고 명확하게 실무에 적용할 수 있도록 직접 구축하고 그 경험을 컨텐츠로 공유하고 있습니다.
앞으로 GA4/GTM과 연계한 데이터 분석 퍼널구축, LookerStudio를 활용한 자동화 데이터 시각화 대시보드 구축 등 테크니컬한 컨텐츠와 더불어, GA4 UTM 실무 활용(UTM을 웹사이트 내 설정해도 되는지, UTM 설정 후 GA4 및 시각화보고서로 활용하는 법) 및 기업 블로그 성과분석(블로그별 어떤 단락에서 이탈했는지 파악하기 위한 스크롤뎁스 성과추적, 블로그 내 이미지 AB테스트를 통한 잔존율 분석, CTA 성과추적 보고서 등) 기업에서 실제적으로 필요로 하는 내용들도 담아서 컨텐츠화 할 예정입니다.
광고매체별 보고서 제작 및 분석이 번거롭고 어떻게 자동화해야할지 모르시겠다면, 저희 위그로스가 함께 문제를 분석하고 해결해드리도록 하겠으며, 이번 콘텐츠가 업무의 병목현상을 해결하는 첫 걸음이 되었기를 바랍니다.
빠르고 효율적인 온라인 마케팅 서비스, 위그로스가 함께 고민하겠습니다.
감사합니다.
Share article