PMax N-Gram Lens paketin Performance Max uzmanıdır. PMax kampanyalarının gerçek arama terimlerini maliyetle birlikte campaign_search_term_view kaynağından okur, n-gramlara böler, marka trafiğini genel trafikten ayırır ve kampanya düzeyinde sıralı eşleme negatifi olarak yapıştırabileceğin negatif adaylarını sıralar.

Nasıl çalışır

Pencere içinde gösterim alan etkin (isteğe bağlı olarak duraklatılmış da) PMax kampanyaları seçilir. Terimler 200 kampanyalık parçalar hâlinde gösterim, tıklama, maliyet, dönüşüm ve değerle sorgulanır; bu görünümde anahtar kelimeyle ilişkili segment yoktur, dolayısıyla hiçbir şey karışmaz. Negatifler kampanya düzeyinde, bağlı paylaşımlı listelerde (ID ile) ve hesap düzeyinde kontrol edilir. brand_terms doluysa her terim marka ya da genel olarak sınıflandırılır ve tıklama payı raporlanır. campaign_search_term_insight kaynağından isteğe bağlı kategori toplamı (include_categories) yalnızca kategori toplamlarını yazar ve terim satırlarıyla asla birleştirilmez; kampanya başına bir ek sorgu gerektirir. Negatif adayları israf edilen tıklama, dönüşüm oranı oranı ve CPA katına göre sıralanır.

Sheet’e ne yazar

  • Summary — kapsamdaki PMax kampanyaları, analiz edilen ve negatiflerle hariç tutulan benzersiz (kampanya, terim) satırları, n-gram boyutları, toplamlar, marka / genel tıklama payı, negatif aday sayısı, negatif adaylarının üzerindeki maliyet, notlar ve ⚠ uyarıları.
  • Account n-grams, Campaign n-grams — hesap genelinde ve kampanya bazında öbek düzeyi metrikler.
  • Categories — 8 sütunlu kategori toplamları; yalnızca include_categories true ise.
  • Brand split — marka / genel segment metrikleri.
  • Suggestions — kampanya, “Paste as”, tahmini israf edilen tıklama ve “Why” sütunlarıyla negatif adayları.
  • Terms — write_raw_terms true ise “Blocked by negative” sütunuyla ham (kampanya, terim) satırları.

Kurulum

  1. Scripti yetkilendireceğin Google hesabıyla yeni ve boş bir Google Sheet oluştur, adresini kopyala. Başka bir scriptin Sheet’ini kullanma; her Sheet tek bir scripte ve tek bir Google Ads hesabına bağlanır.
  2. Google Ads’te Araçlar → Komut Dosyaları bölümünü aç, yeni bir script oluştur, kodun tamamını yapıştır ve bir ad ver.
  3. CONFIG.spreadsheet_url değerine Sheet adresini yaz. Scripti yönetici (MCC) hesabından çalıştırıyorsan CONFIG.account_id alanına müşteri hesabı kimliğini (örn. 123-456-7890) yaz; yazılmazsa script açık bir hata mesajıyla durur.
  4. İsteğe bağlı: CONFIG.email (virgülle ayrılmış alıcılar) ve/veya CONFIG.slack_webhook alanlarını doldur. Webhook yalnızca kodda kalır, Sheet’e hiçbir zaman yazılmaz.
  5. Scripti yetkilendir, günlüğü kontrol etmek için bir kez Önizle, sonra Çalıştır. İlk çalışma sekmeleri, başlık satırlarını ve _settings sekmesini oluşturur.
  6. Zamanla: haftalık, pazartesi hesap saatiyle 04:00 veya sonrası.
  7. İsteğe bağlı: Excel dashboard’unu indir (yukarıdaki buton), Read me sekmesini aç ve Sheet sekmelerini orada anlatıldığı gibi yapıştır; sütun düzeni script çıktısıyla birebir aynıdır.

Parametreler

ParametreAçıklamaVarsayılan
spreadsheet_urlScriptin yazacağı boş Google Sheet’in adresi.'YOUR_SPREADSHEET_URL'
account_idMüşteri hesabı kimliği; yalnızca yönetici (MCC) hesabından çalıştırırken gerekir.''
daysAnaliz penceresinin gün cinsinden uzunluğu.30
min_ngram / max_ngramEn küçük ve en büyük n-gram boyutu (1 = tek kelime, 3 = üç kelimelik öbek).1 / 3
campaign_containsYalnızca adında bu metin geçen kampanyalar.''
campaign_not_containsAdında bu metin geçen kampanyaları dışarıda bırak.''
enabled_campaigns_onlytrue = yalnızca etkin kampanyalar; false = etkin ve duraklatılmış.true
min_query_impressionsBir arama teriminin okunması için gereken en az gösterim.1
check_negativesTerimleri mevcut negatiflerle eşleştir (reklam grubu, kampanya, paylaşımlı liste, hesap düzeyi).true
brand_termsMarka kelime ya da öbekleri; boş = marka ayrımı kapalı.[]
languageKelime ayırıcı dili; varsayılan olarak derleme dili (en / tr / de).L.text_lang
stopwordsN-gram oluştururken yok sayılacak ek kelimeler.[]
include_categoriescampaign_search_term_insight kaynağından kategori toplamı; kampanya başına bir ek sorgu, büyük hesaplarda RESOURCE_EXHAUSTED hatasına yol açabilir.false
write_raw_termsHam satırlarla Terms sekmesini yaz.true
max_rows_writtenTablo başına satır sınırı; aşılırsa kesilme notu eklenir.20000
thresholdsBir n-gramın listelenmesi için en az sorgu sayısı / gösterim / tıklama / maliyet.1 / 20 / 0 / 0
suggestionsnegative_min_clicks, negative_max_cr_ratio, negative_max_cpa_multiple, list_size.20 / 0.25 / 3 / 100
Tüm değerler scriptin başındaki CONFIG bloğunda bulunur; _settings sekmesinde de olan anahtarlar oradan değiştirilebilir.

_settings sekmesi

İlk çalışmada script bir _settings sekmesi (Key / Value / Notes) oluşturur. Buradaki değerler ilgili CONFIG girdilerini ezer; günlük ince ayar kodu düzenlemeden Sheet üzerinden yapılır. Sayılar binlik ayraç olmadan ve en fazla iki ondalıkla yazılmalıdır (0.5 veya 0,5). script ve account satırları Sheet’in sahibini işaretler: aynı Sheet’i başka bir script ya da başka bir hesap açarsa hiçbir şey yazmadan durur. Alt çizgiyle başlayan iç sekmeler (_settings, _history, _snapshot, _state, _baseline) dilden bağımsızdır; EN/TR/DE sürümleri arasında geçiş yapıldığında kayıtlı durum korunur.

Bildirimler

Bu scriptte e-posta ya da Slack seçeneği yoktur; çıktı Sheet ve dashboard’dur.

Notlar ve sınırlar

  • Negatifler asla otomatik uygulanmaz; Suggestions sekmesini incele, sonra kampanyaya sıralı eşleme negatifi olarak ekle.
  • Terim sorgusu başarısız olur ya da okuma sınırına takılırsa Summary sessizce eksik veri döndürmek yerine ⚠ satırı gösterir.
  • Her rapor sekmesinde küçük bir atıf hücresi (H1:K1, yalnızca uyarı veren koruma) ve kod başlığında bir telif satırı bulunur; kaynağı düzenleyen herkes ikisini de kaldırabilir.