Google Ads 카피
검색어와 방문 페이지 내용, 제품의 정직한 주장 이 세 가지를 동시에 충족하는 검색 광고 카피를 작성합니다. 그런 다음 사용자의 Google Ads 카피 템플릿에 입력합니다. 두 가지 결과물을 제공합니다:
- 채워진 워크북 사본. 원본은 절대 수정되지 않습니다.
- 광고그룹별 짧은 채팅 요약: 각도, 테스트 내용, 게시 전에 사용자가 확인해야 할 모든 플래그.
품질의 대부분은 0단계부터 3단계에서 결정됩니다. 이 컨텍스트 없이 작성된 헤드라인은 모든 경쟁사 헤드라인과 대체 가능합니다. 하지만 컨텍스트를 반영한 헤드라인은 클릭을 유도하고 클레임 검토를 통과할 만큼 구체적입니다.
사용자가 이미 선택한 기본값. 다시 묻지 마세요.
- 제품 정보는 런타임에 읽은 제품 스킬 파일에서 가져옵니다. 절대 기억에서 가져오지 않습니다.
- 간단한 입력은 템플릿의 '키워드 및 의도' 탭, Google Ads 커넥터 또는 채팅에서 가져올 수 있습니다. 모두 결합합니다.
- 출력은 채워진
.xlsx파일입니다. - 경쟁사 이름은 해당 경쟁사를 중심으로 구축된 광고그룹(대안, 대비, 가격, 리뷰)에만 광고 카피에 포함됩니다. 그 외의 모든 경우에는 이름을 사용하지 않습니다.
첫 번째 채우기 전에 references/template-map.md를 읽으세요. 워크북 레이아웃, 페이로드 스키마 및 스크립트 사용법이 있습니다.
0단계: 제품 컨텍스트 로드
제품 정보는 사용자 자신의 제품 컨텍스트에서 가져오며, 절대 기억에서 가져오지 않습니다. 다음 목록을 순서대로 확인하고 컨텍스트 팩을 제공하는 첫 번째 소스에서 멈춥니다:
- 이미 대화에 있는가? 사용자가 제품 스킬을 실행했거나, 브리프를 붙여넣었거나, 포지셔닝 문서를 첨부했습니다. 이를 사용합니다.
- 설정. 이 스킬의 폴더에
config/product-context.md가 있으면, 세그먼트를 제품 스킬이나 파일에 매핑하고 위치를 알려줍니다. 사용자가 지정한 세그먼트를 사용합니다. 그렇지 않으면 광고그룹, 키워드 및 방문 페이지에서 유추합니다. 모호하거나 광고그룹이 여러 세그먼트를 혼합하는 경우 한 번만 물어보세요. 두 세그먼트를 하나의 광고에 혼합하지 마세요. - 프로젝트 파일. 프로젝트에서
.agents/product-marketing.md,.claude/product-marketing.md또는product-marketing-context.md를 찾습니다(제품 마케팅 스킬이 작성하는 파일). - 질문. 사용자에게 제품 스킬, 파일, URL을 지정하거나 브리프를 붙여넣도록 요청합니다: 제품이 무엇을 하는지, 누구를 위한 것인지, 증거 포인트, 사용할 수 없는 클레임, 경쟁사는 누구인지. 카피가 그 브리프에만 기반한다고 명확히 말합니다.
제품 스킬의 SKILL.md를 경로로 읽습니다. Skill 도구에 의존하지 마세요: 제품 스킬은 수동 호출 전용(disable-model-invocation: true)인 경우가 많으며, 도구가 이를 거부합니다.
그런 다음 컨텍스트 팩(references/context-pack.md)을 추출합니다: 이 광고그룹의 완료해야 할 작업, 페르소나, 안전한 증거 포인트, 등급별 클레임 가드레일, 경쟁 프레임, 메시징 기둥. 사용할 증거 포인트를 기록해 둡니다. 노트 셀에서 나중에 인용합니다.
제품 컨텍스트가 명시한 적격성 테스트 또는 부적격 조건을 적용합니다. 광고그룹이 제품 컨텍스트에서 배제한 구매자를 타겟팅하는 경우, 먼저 말하고 작성 전에 질문합니다.
1단계: 광고그룹 브리프 수집
광고그룹별로 필요한 정보: 캠페인 이름, 광고그룹 이름, 키워드(일치 유형, 의도, 우선순위 포함), 최종 URL. 유용한 추가 사항: 제안, 클릭 유도 문구, 지역, 잠재고객, 기존 광고, 관련 경쟁사.
출처, 결합:
- 템플릿. 사용자가 워크북을 제공한 경우
scripts/read_template.py <xlsx>를 실행합니다. 키워드 및 의도 행이 브리프입니다. 같은 덤프에서 이미 존재하는 카피를 보여주므로 중복하지 않습니다. 빈 사본은assets/Google_Ads_Copy_Template.xlsx에 제공됩니다. 사용자에게 워크북이 없을 때 사용합니다. - Google Ads 커넥터(
ads_search도구를 사용할 수 있는 경우). 읽기 전용입니다. 광고그룹, 키워드, 검색어, 실적 레이블이 있는 라이브 RSA를 가져옵니다. 쿼리 및 주의사항은references/google-ads-connector.md에 있습니다. 고객 ID가 없으면 질문하세요. 계정에 절대 쓰지 마세요. - 채팅. 사용자가 붙여넣거나 설명한 모든 것.
계정이나 시트에 표시된 대로 정확한 이름을 사용하세요. 캠페인이나 광고그룹 이름을 임의로 만들지 마세요. 차단하는 정보가 누락된 경우 한 번만, 하나의 메시지로 질문하고 필요한 모든 것을 나열하세요.
키워드 의도 및 우선순위: 사용자가 설정하지 않은 경우 키워드 표현에서 제안하고 어떤 것을 유추했는지 말하세요. 의도가 각도를 결정합니다(references/rsa-playbook.md 참조).
2단계: 방문 페이지 및 사이트 읽기
각 최종 URL을 실시간으로 가져옵니다. WebFetch는 소형 모델 요약을 반환하며, "찾을 수 없음" 응답은 신뢰할 수 없으므로 페이지를 읽는 데 사용한 다음, 카피가 의존할 모든 클레임을 원시 HTML(curl -sL <url> | grep -i -o '.\(40\)<claim>.\(40\)')에서 확인합니다. JavaScript가 필요한 페이지는 브라우저를 사용합니다. 페이지를 가져올 수 없으면 사용자에게 카피를 붙여넣도록 요청하세요. 페이지를 기억에서 작성하지 마세요.
H1, 부제목, 기본 CTA 레이블, 제안 및 조건, 가격 공개 여부, 페이지의 증거, 양식 또는 예약 흐름, 페이지가 만드는 모든 클레임을 캡처합니다. 그런 다음 사이트의 탐색 또는 사이트맵을 읽어 사이트링크 대상을 찾고 각 콜아웃 및 스니펫 값을 뒷받침하는 페이지를 찾습니다. 각 행의 노트 셀에 해당 페이지를 기록합니다.
페이지가 변경할 수 있는 것과 없는 것:
- 메시지 일치. 광고의 약속, CTA 및 핵심 용어는 페이지에 표시되어야 합니다. 페이지가 뒷받침하지 않는 헤드라인은 품질 점수와 신뢰를 떨어뜨립니다.
- 클레임 상한선. 광고에서 페이지보다 더 많은 것을 주장하지 마세요. 제품 스킬이 페이지에 없는 클레임을 허용하는 경우, 그 차이를 플래그로 표시할 때만 사용하세요("출시 전에 페이지에 추가하세요").
- 제안은 페이지에서 가져옵니다. 제품 스킬은 제안을 거의 나열하지 않습니다. 페이지에 명시된 경우에만 무료 체험, 데모 길이 또는 가격을 사용하세요. 조건이나 잠재고객이 페이지에 없으면 추측하는 대신 플래그로 표시하세요.
- 페이지의 차단된 클레임. 페이지에 제품 스킬의 가드레일이 차단하는 클레임이 있는 경우 반복하지 말고 사용자에게 알리세요. 사이트가 자체 규칙과 모순됩니다.
- 사용할 수 있는 것보다 약한 페이지. 사용자의 URL에 키워드가 없고 더 나은 페이지가 존재하는 경우, 사용자의 URL을 유지하고 차이를 플래그로 표시하며 더 나은 페이지를 제시하세요. 사용자가 동의하면
final_url과 각 키워드의landing_page를 함께 변경하세요.
브리프에 대한 방문 페이지 차이점을 나열하세요: 광고에는 있지만 페이지에는 없는 제안, CTA 불일치, 빈약한 증거.
3단계: 경쟁사 컨텍스트
제품 스킬의 경쟁 프레임에서 시작하세요: 경쟁자는 누구인지, 어디서 싸울지, 어디서 양보할지. 경쟁사 이름을 기반으로 구축된 광고그룹의 경우, 해당 경쟁사의 가격 또는 방문 페이지(1~2페이지)도 가져와서 오늘날 그들이 주장하는 것에 대답할 수 있도록 하세요. Google 검색 결과 페이지를 스크래핑하지 마세요.
경쟁사 연구를 사용하여 각도(전환 이유, 비용 투명성, 그들이 할 수 없는 일)를 선택하고 증명할 수 없는 클레임을 피하세요. 결코 복사할 문구의 출처가 아닙니다.
경쟁사 이름:
- 해당 경쟁사를 기반으로 구축된 광고그룹의 광고 헤드라인, 설명 및 표시 경로에 허용됩니다. 페이로드에서 광고에
competes_with를 설정하세요. - 일반 광고그룹 또는 사이트링크, 콜아웃, 스니펫에서는 허용되지 않습니다.
- 증거 없이 "#1", "최고", "X보다 저렴"은 절대 안 됩니다. 비방하지 마세요.
- 모든 명시적 사용은 상표 불만 위험입니다. 확인 스크립트가 각각을 기록합니다. 이를 노트 셀과 채팅 브리프에 반영하세요.
4단계: 작성 전 계획
광고그룹별로 짧은 계획을 작성하세요: 기본 의도, 해당 그룹이 다루는 하나의 작업, 3~4개의 각도(키워드 반향, 결과, 증거, 차별화 요소, 제안, 위험 감소), 그리고 반드시 그대로 포함되어야 할 키워드. 이유: RSA는 Google이 재조합하므로, 각 줄이 독립적으로 서 있는 각도별 커버리지가 중요하며, 하나의 깔끔한 문장을 15조각으로 나누는 것이 아닙니다.
애셋도 계획하세요: 4개 이상의 사이트링크 대상(2단계의 실제 페이지), 각각을 뒷받침하는 페이지가 있는 4개 이상의 콜아웃 사실, 정직하게 채울 수 있는 값의 스니펫 헤더.
키워드가 유인하는 다른 대상(학습자, 학생, 취미인, 잘못된 세그먼트)을 기록하세요. 도움이 되는 경우 한정 헤드라인을 추가하고 브리프에서 부정 키워드를 추천하세요. 직접 부정 키워드를 추가하지 마세요.
하나의 광고 또는 두 개를 결정하세요. 다른 각도를 테스트할 때만 광고그룹에서 두 번째 RSA를 실행하세요. 혼합 의도 광고그룹도 하나의 리드 광고를 가집니다: CTA 혼합은 가장 높은 우선순위 키워드를 따르며, 직접 헤드라인 CTA 옆에 부드러운 설명 CTA를 두는 것은 괜찮습니다.
5단계: 작성
헤드라인 및 설명 레시피, 의도-각도 매핑, 경로, 고정 및 가설 셀에 대해 references/rsa-playbook.md를 따르세요. 사이트링크, 콜아웃, 스니펫에 대해 references/assets-playbook.md를 따르세요. Google이 불승인하는 내용과 클레임 처리 방법에 대해 references/policy-checklist.md를 따르세요.
짧은 버전:
- 리드 광고에 대해 15개의 헤드라인과 4개의 설명. 각 헤드라인은 다른 헤드라인과 함께 올바르게 읽힙니다.
- 높은 우선순위 키워드를 헤드라인에서 반향하세요. 더 짧은 형제 키워드가 그 안에 포함되도록 가장 긴 변형을 선택하세요. 반향 헤드라인은 "같은 단어로 시작하지 마라" 규칙에서 면제됩니다. 가독성이 템플릿의 "헤드라인에 있습니까?" 확인보다 우선합니다: 키워드가 오타처럼 읽히는 경우("multi cloud"), 자연스러운 형태("Multi-Cloud")로 작성하고 노트에 확인 결과 '아니오'로 표시될 것이라고 말하세요.
- 클레임은 제품 스킬의 안전한 목록에서만, 가드레일 내에서 가져옵니다. 등급 D 또는 HIGH 위험 클레임은 절대 나타나지 않습니다. 중간 위험 클레임은 방문 페이지가 이를 반복할 때만 나타납니다.
- 사이트링크 URL은 가져온 실제 페이지입니다. 경로를 절대 임의로 만들지 마세요.
- 제품 스킬의 음성으로 작성하세요. 평이한 단어, 구체적인 명사, "잠금 해제", "완벽한", "간소화"는 피하세요.
진행하기 전에, stop-slop 스킬을 사용할 수 있으면 카피를 실행하세요. 필러 및 구조 규칙을 모든 줄에 적용하고, 하나의 초안으로 읽은 설명에 대해 점수를 매기고 35/50 미만이면 수정하세요. 30자 헤드라인에서는 한도, 정책 및 메시지 일치가 부사 및 수동태 규칙보다 우선합니다. 더 나쁜 헤드라인이 대안인 경우 "Trusted by"를 유지하되, 비용이 들지 않을 때는 능동형을 선호하세요.
6단계: 확인 후 채우기
페이로드 JSON을 임시 위치(스킬 폴더나 사용자 저장소가 아님)에 작성하세요. 스키마는 references/template-map.md에 있습니다; 통과 예제는 references/example-payload.json입니다. 제품 스킬 테이블에서 가드레일 목록을 작성하세요: blocked_claims 또는 hedged_claims의 행당 하나의 정규식입니다. 제품 스킬이 자체적으로 모순되는 경우 가드레일 테이블이 우선합니다. 증거 포인트의 명명된 모든 고객을 customers에 넣으세요.
python3 <skill>/scripts/check_copy.py payload.json --template <template.xlsx> --verify-urls
모든 ERROR를 수정하세요. 모든 WARN을 읽고 수정하거나 그대로 두는 이유를 설명할 수 있어야 합니다. INFO 줄(경쟁사 이름 사용, 명명된 고객, 헤드라인에 없는 키워드)은 브리프에 포함합니다. 그런 다음:
python3 <skill>/scripts/fill_template.py --template <template.xlsx> --payload payload.json \
--out "<template stem> - filled.xlsx"
사용자의 워크북 옆 또는 번들 템플릿을 사용한 경우 작업 디렉토리에 출력을 저장하세요. 절대 스킬 폴더에 저장하지 마세요. 스크립트는 다시 검증하고, 첫 번째 빈 행에 쓰고, 샘플 행을 지우고, 저장된 파일을 확인합니다. 종료 코드가 0이 아니면 파일을 넘기지 말고 원인을 수정하세요. Python을 사용할 수 없는 경우 템플릿 열 순서로 탭으로 구분된 블록으로 동일한 행을 제공하세요.
7단계: 반환
채워진 파일 경로를 제공하고, 광고그룹당 하나의 블록, 캠페인 애셋에 대해 하나의 블록을 제공하세요. 짧게 유지하세요; 카피는 파일에 있습니다.
**AD-001 · rivalapp 대안** 준비 완료, 헤드라인 15개, 설명 4개
각도: 전환 및 마이그레이션, 비용을 테스트 지표로.
테스트: H3, H4, D2 대 H8, H14, D4. Learning 단계를 벗어나면 애셋 레이블을 읽으세요.
플래그: H1, D1, path2에 경쟁사 이름 포함(불만 위험). H11은 고객 이름 포함(서명 필요).
방문 페이지 차이: 무료 가져오기가 아직 페이지에 없음.
**애셋 · 검색 | 프로젝트 관리 | 경쟁사 대안** 사이트링크 4개, 콜아웃 5개, 스니펫 1개(유형)
페이지: 모든 사이트링크가 가져와져 로드됨. 콜아웃은 홈페이지 및 /import로 뒷받침됨.
플래그: 사이트링크 "고객 사례"에 Fabrikam 이름 포함(서명 필요).
그런 다음 짧은 사용자 결정 필요 목록: 더 나은 방문 페이지, 페이지에서 조건이 누락된 제안, 포함하지 않은 승인되지 않은 클레임, 승인해야 할 고객, 추가해야 할 부정 키워드, 어떤 헤드라인에도 너무 긴 키워드, 분할할 광고그룹, 가정한 모든 것. 확인한 사항(확인 스크립트, URL 가져오기, 원시 HTML에서 클레임 grep)과 확인하지 않은 사항(워크북이 Excel에서 열리지 않음; 실행하지 않은 경우 커넥터 쿼리 실행 안 함)을 말하세요.
라이브 광고 새로 고침
커넥터가 광고그룹에 기존 RSA를 보여주는 경우 작업을 새로 고침으로 처리하세요. BEST 또는 GOOD으로 레이블이 지정된 애셋을 유지하고, LOW를 교체하고, LEARNING은 그대로 두며, 잘못되지 않은 한 핀을 유지하고, 교체한 항목을 노트 셀과 브리지에 나열하세요. 작동 중인 광고를 처음부터 다시 작성하지 마세요.