챗GPT 광고에서 전환을 측정하려면 웹 사이트에는 측정 픽셀을, 서버에는 전환 API를 붙이고 두 곳에서 같은 이벤트 ID를 보내면 된다. 전환 최적화 캠페인은 목표 이벤트를 표준 이벤트 1개로만 정할 수 있고, 과금은 전환이 아니라 유효 클릭 기준이다(2026년 9월 30일 기준). 한국 광고주라면 동의 관리와 해시 규칙까지 함께 맞춰야 한다.
이 글은 픽셀과 전환 API의 차이, 설정 순서, 서버 이벤트에 넣을 필드, 전환 최적화와 맞춤 오디언스의 제한을 정리한다. 근거는 OpenAI 광고 개발자 문서의 측정 픽셀, 전환 API, 전환 추적, 전환 최적화 캠페인, 맞춤 오디언스 페이지이며 맥피가 9월 30일에 직접 읽고 확인했다. 문서에는 별도 시행일이 없어서 9월 30일 시점의 문서 내용을 현재 기준으로 삼았다. 계정을 여는 조건, 곧 한국 이용 가능 여부와 계정 검토 절차는 ChatGPT 광고 한국 셀프서비스: 가입보다 먼저 준비할 것에 따로 정리해 두었다.
세 줄로 먼저 읽기
- 연결: 픽셀은 브라우저에서, 전환 API는 서버에서 이벤트를 보낸다. 둘을 함께 쓰면 같은 이벤트 ID로 중복을 제거한다.
- 최적화: 전환 최적화 캠페인은 표준 이벤트 1개만 목표로 삼고, 만든 뒤에는 이벤트를 바꿀 수 없다. 기존 캠페인을 바꾸는 것도 안 된다.
- 오디언스: 맞춤 오디언스는 일치 사용자 25,000명이 계획 기준선이다. 유럽경제지역(EEA)과 스위스 대상 캠페인에서는 쓸 수 없다.
픽셀과 전환 API는 무엇이 다르고 왜 둘 다 쓰나
픽셀은 방문자의 브라우저가 이벤트를 보내는 자바스크립트 코드다. 이벤트는 구매나 문의 제출처럼 광고 성과로 세고 싶은 행동을 가리킨다. 전환 API는 내 서버가 이벤트를 직접 보내는 방식이다. 전환 추적 문서는 픽셀을 "Measure actions that happen on your website"(웹사이트에서 일어나는 행동 측정), 전환 API를 "Send actions recorded by your server, such as confirmed orders"(서버가 기록한 확정 주문 같은 행동 전송)로 구분한다. 같은 문서는 "Use the same event name and event ID through both integrations"라고 하여 두 방식에서 이벤트 이름과 이벤트 ID를 같게 쓰라고 안내한다.

| 구분 | 측정 픽셀 | 전환 API |
|---|---|---|
| 보내는 곳 | 방문자 브라우저 | 내 서버 |
| 문서상 역할 | 웹사이트에서 일어나는 행동 | 서버가 기록한 행동(예: 확정된 주문) |
| 소스 표시 | pixel_sdk | server_to_server |
| 요청 주소 | 스크립트 bzrcdn.openai.com/sdk/oaiq.min.js | POST bzr.openai.com/v1/events?pid=픽셀ID |
전환 API 문서에 따르면 중복 제거 기준은 픽셀 ID, 이벤트 이름, 이벤트 ID다. 키가 같으면 먼저 도착한 이벤트만 쓰고 나중 것은 무시한다. 브라우저와 서버가 이벤트 ID를 각자 만들면 키가 달라져 같은 주문이 두 번 잡힐 수 있으므로, 주문번호처럼 양쪽이 아는 값을 쓴다.
설정은 어떤 순서로 하나
공식 전환 추적 문서의 권장 순서를 광고 담당자 관점으로 줄이면 다섯 단계다. 측정 픽셀 문서는 Ads Manager의 전환(conversions) 탭에서 픽셀 ID를 만들라고 하고, 전환 API 키도 같은 탭에서 만든다고 안내한다.

- 데이터 소스를 만들고 픽셀 ID를 받는다.
- 사이트 모든 페이지의
<head>에 픽셀 코드를 넣고 초기화한다. - 테스트 이벤트를 보내 데이터가 들어오는지 확인한다.
- 어떤 이벤트를 전환으로 셀지 전환 이벤트 설정을 만든다.
- 그 설정을 캠페인에 연결한다.
픽셀 설치 코드는 이렇게 생겼다. 아래 코드는 공식 측정 픽셀 문서의 설치 스니펫이고, 픽셀 ID는 자리 표시 값이다. 스크립트는 비동기로 불러오고, oaiq라는 전역 함수가 명령을 받는다.
<script>
(function (w, d, s, u) {
if (w.oaiq) return;
var q = function () { q.q.push(arguments); };
q.q = [];
w.oaiq = q;
var js = d.createElement(s);
js.async = true;
js.src = u;
var f = d.getElementsByTagName(s)[0];
f.parentNode.insertBefore(js, f);
})(window, document, "script", "https://bzrcdn.openai.com/sdk/oaiq.min.js");
oaiq("init", { pixelId: "픽셀-ID" });
</script>
이벤트는 oaiq("measure", 이벤트이름, 데이터, 옵션) 형식으로 보내며, 네 번째 인자 옵션에 event_id를 넣으면 브라우저와 서버에서 보낸 같은 이벤트를 묶을 수 있다. 주문 완료 페이지라면 아래처럼 쓴다. 주문번호와 금액은 설명용 가상 값이고, 금액과 통화는 문서 예시(amount: 2599, currency: "USD")의 형식을 따랐다.
oaiq("measure", "order_created",
{ type: "contents", amount: 2599, currency: "USD" },
{ event_id: "order-10293" });
지원 이벤트 문서가 올린 표준 이벤트는 13가지다. 구매 order_created, 문의 제출 lead_created, 가입 registration_completed, 결제 시작 checkout_started, 장바구니 담기 items_added, 유료 구독 시작 subscription_created, 무료 체험 시작 trial_started, 상담·데모 예약 appointment_scheduled, 콘텐츠 조회 contents_viewed, 주요 페이지 조회 page_viewed가 웹과 서버에서 쓰는 이벤트다. 나머지는 사용자 정의 custom과 앱 설치 app_installed, 앱 실행 app_opened다. 문서는 앱 설치·실행 이벤트를 "available through the Conversions API only"라고 하고 action_source를 mobile_app으로 보내라고 한다. 자바스크립트 픽셀은 이 둘을 지원하지 않는다. 금액을 보낼 때는 반드시 통화 코드도 같이 보내야 한다.
테스트는 최근 이벤트 조회로 한다. 문제 해결 문서는 최근 약 15분의 표본을 돌려주는 엔드포인트를 안내하고, 이벤트 종류와 소스, 통합 채널이 의도와 맞는지 보라고 한다. 브라우저 이벤트는 pixel_sdk, 서버 이벤트는 server_to_server로 나온다.
전환 API로 서버 이벤트는 어떻게 보내나
전환 API 문서에 따르면 요청 한 번에 이벤트를 최대 1,000건까지 담을 수 있다. 한 건이라도 실패하면 묶음 전체가 실패한다. Authorization: Bearer 헤더에 API 키를 넣고, 본문에는 events 배열을 보낸다. 처음에는 validate_only: true로 저장 없이 검증만 해 보는 편이 낫다.
이벤트마다 꼭 들어가는 값은 네 가지다. id는 재시도와 중복 제거에 쓰는 문자열이다. type은 위 이벤트 종류다. timestamp_ms는 밀리초 단위 시각이고 최근 7일 이내여야 하며 미래로는 10분까지만 허용된다. data는 전환 내용이다. 웹 이벤트라면 source_url과 action_source: "web"도 넣는다. 주문을 지난주 것까지 뒤늦게 올리는 배치 작업은 7일 제한에 걸리지 않게 주기를 잡아야 한다.
전환 매칭에 쓰는 user 정보는 모두 선택이다. 이메일, 전화번호, 외부 ID, 이름은 정규화한 뒤 SHA-256 해시의 소문자 16진수 64자로 보낸다. 도시, 지역, 우편번호, 국가 코드, IP, 사용자 에이전트는 해시하지 않는다. 해시 전 정규화 규칙은 다음과 같다.
- 이메일: 앞뒤 공백을 지우고 소문자로 바꾼다.
- 전화번호: 공백, 괄호, 마침표, 하이픈, 맨 앞의 +와 0을 지운다. 결과는 8~15자리 숫자여야 한다.
- 이름: 소문자로 바꾸고 공백과 ASCII 구두점을 지운다. 한글 같은 비ASCII 문자는 그대로 둔다.
한국 번호는 여기서 걸리기 쉽다. 010으로 시작하는 번호는 위 규칙대로 맨 앞의 0을 지우면 국가번호가 없는 값이 된다. 전환 API 문서에는 한국 번호 예시가 없으므로 어떤 형태가 매칭되는지는 문서로 확인하지 못했다. 테스트 이벤트로 먼저 확인한다.
쿠키도 알아 둔다. 픽셀은 광고 클릭 식별자를 __oppref 쿠키에 30일간 저장하고, 브라우저 식별용 __obref 쿠키는 365일 유지한다. 서버에서 이벤트를 보낼 때는 oppref와 obref 값을 바꾸지 않고 그대로 넘긴다. 결제 완료 시점에 이 값이 사라지면 서버 이벤트가 광고 클릭과 이어지지 않는다.
동의 관리와 어트리뷰션 창은 어떻게 되나
픽셀은 별다른 설정이 없으면 동의가 있는 것으로 보고 시작한다. 동의 배너를 쓰는 사이트라면 초기화 전에 oaiq("consent", false)를 먼저 호출하고, 방문자가 동의한 뒤에 oaiq("consent", true)를 호출한다. 측정 픽셀 문서가 이 순서를 예시로 든다. 동의가 false인 동안 픽셀은 측정 이벤트를 보내지 않는다. 사용자별 개인화를 거부한 사람의 이벤트에는 opt_out: true를 붙일 수 있다.
전환 추적 문서의 설정 예시는 클릭 후 30일 어트리뷰션 창을 쓴다. 광고를 본 뒤 클릭 없이 전환한 경우를 잡는 뷰스루 전환은 측정 픽셀 문서에 따르면 노출 뒤 하루로 고정된 창을 쓰고, 클릭과 겹치면 클릭이 우선한다. 다른 매체와 숫자를 나란히 놓을 때는 이 창의 차이를 먼저 맞춘다.
사이트에 콘텐츠 보안 정책(CSP)을 걸어 두었다면 측정 픽셀 문서의 표대로 세 항목을 열어야 한다. script-src에 https://bzrcdn.openai.com, connect-src에 https://bzr.openai.com과 https://bzrcdn.openai.com, img-src에 https://bzr.openai.com이다.
전환 최적화 캠페인은 어떤 제약이 있나
전환 최적화는 광고 전달을 전환 가능성이 높은 사람 쪽으로 옮기는 입찰 방식이다. 공식 문서는 이를 oCPC(전환 최적화 클릭당 과금)라고 부르고 "oCPC is in open beta"라고 밝힌다. 규칙은 분명하다.

- 목표 이벤트: 문서 원문은 "exactly one active standard conversion event"다. 활성 표준 이벤트 1개만 고를 수 있다. 사용자 정의 이벤트는 목표가 될 수 없다.
- 변경: 캠페인을 만든 뒤에는 목표 이벤트를 바꿀 수 없다("You cannot change the goal or event after campaign creation"). 기존 CPM, CPC 캠페인을 전환 최적화로 바꾸는 것도 안 된다("You cannot change an existing CPM or CPC campaign to oCPC"). 새 캠페인을 만들어야 한다.
- 과금: 전달은 전환 쪽으로 최적화하지만, 문서는 "charges you only when a valid click occurs"라며 유효 클릭이 발생할 때만 청구하고 전환당 과금으로 바뀌지 않는다고 밝힌다.
- 입찰: API에서는
max_bid_micros가 전환당 목표 비용(CPA 입찰) 역할을 한다. 문서 예시로 100000000은 미화 계정 기준 100달러다.
전환 최적화에 필요한 이벤트 물량은 문서가 숫자로 밝히지 않는다. 성과를 평가할 만큼 이벤트가 쌓인 뒤에 입찰, 예산, 소재를 크게 바꾸라고만 안내한다. 어느 이벤트를 목표로 삼는 것이 나은지는 문서에 기준이 없어 맥피도 단정하지 않는다.
한국 계정에서 전환 최적화가 실제로 열려 있는지는 확인하지 못했다. 한국 개방 시점은 공식 자료에서 찾지 못했다. 캠페인 만들기 화면에 목표 선택지가 보이는지 직접 본다.
맞춤 오디언스는 어떤 조건에서 쓰나
맞춤 오디언스는 내가 가진 고객 목록을 광고 타깃이나 제외 대상으로 쓰는 기능이다. 공식 문서는 포함이나 입찰 조정에는 "25,000 matched users as the public planning threshold"라며 일치 사용자 25,000명을 공개 계획 기준선으로 쓰라고 한다. 목록에 25,000개를 올렸다고 25,000명이 일치하는 것은 아니다. 개인정보 보호 장치 때문에 정확한 경계는 달라질 수 있다고 문서가 밝힌다. 반대로 제외 용도라면 작은 목록도 준비가 끝나면 쓸 수 있다.

올릴 수 있는 식별자는 이메일, 전화번호(E.164), 해시한 이메일, 해시한 전화번호, 구글 광고 ID(GAID) 다섯 가지다. 해시는 64자 16진수(0~9와 a~f로 된 문자열)로 보내고 Base64는 안 된다. GAID는 해시하지 않고 원래 값 그대로 올린다. 파일은 CSV나 TXT로 500MB까지 올릴 수 있다. 내가 광고에 쓸 권리가 있는 자사 데이터만 올려야 하고, 문서는 "Don't upload broker-sourced data"라며 데이터 중개업체에서 산 목록을 금지한다.
한국에서 확인할 것
- 광고 계정: 한국은 공식 제공 국가 목록에 있지만, 게재와 기능 개방은 계정 검토와 기능별 조건이 따로 있다. 전환 최적화와 맞춤 오디언스가 내 계정에 보이는지 직접 본다.
- 동의: 국내 사이트는 대개 동의 배너나 CMP를 쓴다. 이 동의 상태가
oaiq("consent")와 연결되는지 개발팀에 확인한다. 법적 근거와 고지 문구는 법무 확인 영역이라 이 글에서 판단하지 않는다. - 고객 목록: 이메일과 전화번호를 광고 플랫폼에 올리는 근거가 개인정보 처리방침에 있는지 확인한다. 위탁이나 제3자 제공에 해당하는지는 회사마다 다르다.
- 금액: 원화 금액을 보낼 때의 정수 처리 방식은 문서에 예시가 없다. 첫 주문을 테스트로 넣어 본 뒤 내부 매출 기준(부가세 포함 여부 포함)과 맞춘다.
- 기존 측정: 구글 애널리틱스 4나 다른 매체와 전환 수가 다르게 나올 수 있다. 어트리뷰션 창과 중복 제거 기준이 다르면 숫자가 어긋나므로 위 창 설정부터 맞춰 본다.
주의사항: 자주 하는 실수 여섯 가지
가장 흔한 것은 픽셀만 붙이고 전환 이벤트 설정을 만들지 않는 것이다. 이벤트가 들어와도 어떤 이벤트를 전환으로 셀지 정하지 않으면 캠페인에 연결할 수 없다. 두 번째는 브라우저와 서버에서 이벤트 ID를 따로 만드는 것이다. 같은 주문이 두 번 집계된다. 세 번째는 사용자 정의 이벤트를 최적화 목표로 고르려는 것인데, 표준 이벤트만 된다. 네 번째는 전환 최적화를 켜고 기존 캠페인을 그대로 두는 것이다. 새 캠페인을 만들어야 하고, 성과 비교도 새 캠페인 기준으로 해야 한다. 다섯 번째는 이메일을 해시하기 전에 공백과 대소문자를 정리하지 않는 것이다. 해시값이 달라져 매칭이 안 된다. 여섯 번째는 7일이 지난 주문을 전환 API로 올리는 것이다. 시각 제한에 걸린다.
오늘 확인할 순서
- Ads Manager의 전환 탭에서 픽셀 ID와 API 키를 발급받는다.
- 테스트 페이지에 픽셀을 넣고
debug: true로 이벤트가 나가는지 본 뒤, 최근 이벤트 조회에서pixel_sdk로 잡히는지 확인한다. - 주문번호를 이벤트 ID로 정하고, 서버에서
validate_only: true로 전환 API 요청을 한 건 시험한다. - 구매나 문의 같은 전환 이벤트 1개를 정해 전환 이벤트 설정을 만들고, 새 캠페인에 연결한다.
- 고객 목록을 올릴 계획이면 해시 규칙과 개인정보 처리 근거를 먼저 점검한다.
개발자 문서는 자주 바뀌므로 캠페인을 켜기 직전에 전환 최적화 페이지의 제약을 한 번 더 확인한다.
근거 자료
같은 주제 글
이 글이 도움이 되었다면 공유해주세요
최신 인사이트
카카오톡 공유 썸네일 안 나올 때 해결법 (Kakao JavaScript SDK 2025)
카카오톡 공유하기에서 썸네일 이미지가 안 나오는 원인과 scrapImage로 KAGE URL을 변환해 해결하는 방법을 단계별로 설명합니다. 지금 확인하세요.
Claude Code 서브에이전트로 CRM 사용자 설명서 20분 만에 완성하는 방법
Claude Code 서브에이전트를 활용해 CRM 코드베이스에서 사용자 설명서와 비주얼 가이드북을 20분 만에 자동 생성한 실전 사례를 공유합니다. 지금 확인하세요.
GEO 생성형 엔진 최적화: 2025년 AI 마케팅 전략 완전 가이드
GEO 생성형 엔진 최적화란 무엇이며 기존 SEO와 어떻게 다른지, 2025년 AI 마케팅 전략의 핵심 실행 방법 5가지를 데이터와 함께 알아보세요.
관련 프로젝트
새 글을 이메일로 받아보세요
마케팅, 분석, 개발 인사이트를 정리해서 보내드려요.

