Segmentasyon, Google Ads kullanıcı arayüzünde ayrı bir menü olarak sunulur. Google Ads API'de segmentasyonu, sorguya uygun alanı ekleyerek uygulayabilirsiniz. Örneğin, bir sorguya segments.device eklediğinizi varsayalım. Bu, her cihaz kombinasyonu için bir satır ve FROM ifadesinde belirtilen kaynak ile aralarında bölünmüş istatistiksel değerleri (gösterimler, tıklamalar, dönüşümler vb.) içeren bir rapor oluşturur.
Google Ads kullanıcı arayüzünde aynı anda yalnızca bir segment kullanılabilir ancak API ile aynı sorguda birden fazla segment belirtebilirsiniz.
SELECT
campaign.name,
campaign.status,
segments.device,
metrics.impressions
FROM campaign
Bu sorguyu GoogleAdsService.SearchStream adresine göndermenin sonuçları şu JSON dizesine benzer:
{
"results":[
{
"campaign":{
"resourceName":"customers/1234567890/campaigns/111111111",
"name":"Test campaign",
"status":"ENABLED"
},
"metrics":{
"impressions":"10922"
},
"segments":{
"device":"MOBILE"
}
},
{
"campaign":{
"resourceName":"customers/1234567890/campaigns/111111111",
"name":"Test campaign",
"status":"ENABLED"
},
"metrics":{
"impressions":"28297"
},
"segments":{
"device":"DESKTOP"
}
}
]
}
Bu örnek sonuçta, kaynak adı da dahil olmak üzere birinci ve ikinci nesnelerin özellikleri aynıdır. Gösterimler cihaza göre segmentlere ayrılır ve bu nedenle aynı kampanya için iki veya daha fazla nesne döndürülebilir.
Örtük segmentasyon
Her rapor başlangıçta FROM yan tümcesinde belirtilen kaynağa göre segmentlere ayrılır. FROM yan tümcesindeki kaynağın resource_name alanı döndürülür ve metrikler, resource_name alanı sorguya açıkça dahil edilmediğinde bile bu alana göre segmentlere ayrılır. Örneğin, FROM ifadesinde kaynak olarak ad_group değerini belirttiğinizde ad_group.resource_name otomatik olarak döndürülür ve metrikler ad_group düzeyinde dolaylı olarak buna göre segmentlere ayrılır.
Bu sorgu için:
SELECT metrics.impressions
FROM ad_group
Şuna benzer bir JSON dizesi alırsınız:
{
"results":[
{
"adGroup":{
"resourceName":"customers/1234567890/adGroups/2222222222"
},
"metrics":{
"impressions":"237"
}
},
{
"adGroup":{
"resourceName":"customers/1234567890/adGroups/33333333333"
},
"metrics":{
"impressions":"15"
}
},
{
"adGroup":{
"resourceName":"customers/1234567890/adGroups/44444444444"
},
"metrics":{
"impressions":"0"
}
}
]
}
ad_group, FROM ifadesinde bir kaynak olarak belirtildiğinden adGroup öğesinin resource_name alanı her zaman döndürülür.
search_term_view
search_term_view kaynağı, yalnızca arama terimine göre değil, reklam grubuna göre de örtük olarak segmentlere ayrılır. Bu durum, reklam grubunu da içeren kaynak adının yapısına yansıtılır.
Bu nedenle, farklı reklam gruplarına ait olan satırlar söz konusu olduğunda, sonuçlarınızda aynı arama terimlerinin yer aldığı yinelenen satırlar görebilirsiniz:
{
"results":[
{
"searchTermView":{
"resourceName":"customers/1234567890/searchTermViews/111111111~2222222222~Z29vZ2xlIHBob3RvcyBpb3M",
"searchTerm":"google photos"
},
"metrics":{
"impressions":"3"
},
"segments":{
"date":"2024-06-15"
}
},
{
"searchTermView":{
"resourceName":"customers/1234567890/searchTermViews/111111111~33333333333~Z29vZ2xlIHBob3RvcyBpb3M",
"searchTerm":"google photos"
},
"metrics":{
"impressions":"2"
},
"segments":{
"date":"2024-06-15"
}
}
]
}
Bu örnekte döndürülen iki nesne kopya gibi görünse de kaynak adları aslında farklıdır. Özellikle reklam grubu kimliği bölümünde farklılık vardır.
Bu, "google photos" arama teriminin aynı tarihte (2024-06-15) iki reklam grubuna (kimlik 2222222222 ve 33333333333) atandığı anlamına gelir. Dolayısıyla API, amaçlandığı gibi çalıştı ve bu durumda yinelenen nesneler döndürmedi.
Seçilebilir segment alanları
FROM yan tümcesinde belirli bir kaynak için tüm segment alanları seçilemez.
Örneğin, ad_group kaynağından sorgulamaya devam ettiğinizi varsayalım. Bir segment alanının ad_group kaynağından seçilebilmesi için bu alanın ad_group için Segments listesinde bulunması gerekir. Segments listesi, ad_group kaynağının meta veri sayfasındaki kullanılabilir alanlar tablosunun sarı kısmıdır.
Segment kaynakları
Bazı kaynaklardan seçim yaparken, FROM yan tümcesindeki kaynağın alanlarıyla birlikte ilgili kaynakların alanlarını seçerek ilgili kaynaklara dolaylı olarak katılma seçeneğiniz olabilir. Bu ilgili kaynaklar, FROM yan tümcesinin meta veri sayfasındaki kaynakta bulunan Attributed Resources listesinde yer alır. ad_group kaynağında, campaign kaynağından da alanlar seçebileceğinizi göreceksiniz. SELECT yan tümcesinde en az
bir alan içeren tüm Attributed Resources nesnelerinin resource_name alanı, sorguya açıkça dahil edilmese
resource_name bile otomatik olarak döndürülür.
Attributed Resource alanlarını seçmeye benzer şekilde, Segmenting Resource alanlarını da seçebilirsiniz. Belirli bir kaynağın meta veri sayfasında Segmenting Resources listesi varsa bu listelenen kaynaklardan birindeki alanların seçilmesi, sorgunun döndürülen resource_name değerine göre daha fazla segmentlere ayrılmasına neden olur.Segmenting Resource. Örneğin, campaign kaynağının, campaign_budget kaynağı için Segmenting
Resource olarak listelendiğini göreceksiniz.
campaign_budget kaynağından campaign.name gibi bir kampanya alanı seçildiğinde yalnızca campaign.name alanı döndürülmez, aynı zamanda campaign.resource_name alanı da döndürülür ve segmentlere ayrılır.
Segmentler ve metrikler arasında seçim yapabilme
Belirli bir segment alanı, diğer segment alanlarından bazılarıyla veya metrik alanlarından bazılarıyla uyumlu olmayabilir. Hangi segment alanlarının birbiriyle uyumlu olduğunu belirlemek için SELECT yan tümcesindeki segmentlerin selectable_with listesini inceleyin.
ad_group kaynağı için seçebileceğiniz 50'den fazla segment vardır. Ancak segments.hotel_check_in_date için selectable_with listesi, çok daha küçük bir uyumlu segment grubudur. Yani SELECT ifadesine segments.hotel_check_in_date alanını eklerseniz seçebileceğiniz segmentleri bu iki listenin kesişimiyle sınırlamış olursunuz.
Ortak segment kısıtlamaları
Bazı segment alanlarında, SELECT yan tümcesinde bir üst segmentle birlikte istenmelerini gerektiren açık seçim kısıtlamaları vardır:
segments.ad_sub_network_type(Yayın içi, feed içi ve Shorts gibi YouTube reklam alt ağlarını ayırır) seçeneğini belirlediğinizdesegments.ad_network_typeseçeneğini de belirlemeniz gerekir.- v25 ve sonraki sürümlerde,
segments.ad_sub_format_type(YouTube yayın içi atlanamayan reklamları süreye göre ayırır) seçeneğini belirlemek içinsegments.ad_format_typeseçeneğini de belirlemeniz gerekir.
Segment seçimine göre örtük filtreleme
Sorgunuzda belirli segment alanlarını seçtiğinizde Google Ads API, sonuçları yalnızca ilgili segmentin geçerli olduğu ve bir değere sahip olduğu satırları içerecek şekilde dolaylı olarak filtreleyebilir.
segments.keyword.* etkisi
Bu davranışın yaygın ve önemli bir örneği, segments.keyword altındaki herhangi bir alan (ör. segments.keyword.info.text ve segments.keyword.ad_group_criterion) seçildiğinde görülür:
- Anahtar Kelime Olmayan Trafiğin Hariç Tutulması:
SELECTyan tümcenize herhangi birsegments.keyword.*alanı eklerseniz sonuçlar yalnızca doğrudan bir Arama Ağı anahtar kelime reklam grubu ölçütüyle ilişkili satırlarla kısıtlanır. - Etkilenen Kampanya Türleri: Bu nedenle, arama ağı anahtar kelimelerini kullanmayan kampanya türlerinden veya reklam gruplarından elde edilen veriler sonuçlara dahil edilmez.
Bu politika aşağıdakileri kapsar ancak bunlarla sınırlı değildir:
- Dinamik Arama Ağı Reklamları (DSA): DSA hedefleri anahtar kelimelere değil, web sitesi içeriğine dayalıdır.
- Alışveriş kampanyaları: Anahtar kelimeler yerine ürün gruplarını kullanır.
- Maksimum Performans kampanyaları: Maksimum Performans kampanyaları Arama Ağı'nda yayınlanabilse de raporları genellikle aynı anahtar kelime ölçütlerine göre segmentlere ayrılmaz.
- Görüntülü Reklam Ağı:
segments.keyword.*alanları, Arama Ağı'nda kullanılan anahtar kelimelerle ilgilidir. Görüntülü Reklam Ağı anahtar kelimelerine veya diğer görüntülü reklam hedefleme yöntemlerine göre segmentlere ayrılmazlar.
WHERE yan tümcesindeki segmentlerle ilgili kurallar
Bir segment WHERE yan tümcesinde olduğunda SELECT yan tümcesinde de olmalıdır.
Bu kuralın istisnası, temel tarih segmentleri olarak adlandırılan aşağıdaki tarih segmentleridir:
segments.datesegments.weeksegments.monthsegments.quartersegments.year
Temel tarih segmenti alanlarıyla ilgili kurallar
segments.date, segments.week, segments.month, segments.quarter ve segments.year segmentleri şu şekilde çalışır:
- Bu segmentler,
SELECTibaresinde görünmedenWHEREibaresinde filtrelenebilir. - Bu segmentlerden herhangi biri
SELECTyan tümcesindeyseWHEREyan tümcesinde temel tarih segmentlerinden oluşan sınırlı bir tarih aralığı belirtilmelidir. Tarih segmentlerininSELECTiçinde belirtilenlerle aynı olması gerekmez.
Örnekler
Geçersiz: segments.date, SELECT yan tümcesinde olduğundan segments.date, segments.week, segments.month, segments.quarter veya segments.year için WHERE yan tümcesinde sınırlı bir tarih aralığı belirtmeniz gerekir.
|
SELECT campaign.name, metrics.clicks, segments.date FROM campaign |
Geçerli: Bu sorgu, kampanya adlarını ve dahil edilen tarih aralığında tahakkuk eden tıklamaları döndürür. segments.date ifadesinin SELECT yan tümcesinde görünmesi gerekmez.
|
SELECT campaign.name, metrics.clicks FROM campaign WHERE segments.date >= '2024-01-01' AND segments.date <= '2024-01-31' |
| Geçerli: Bu sorgu, dahil edilen tarih aralığındaki tüm günler için tarihe göre segmentlere ayrılmış kampanya adlarını ve tıklamaları döndürür. |
SELECT campaign.name, metrics.clicks, segments.date FROM campaign WHERE segments.date >= '2024-01-01' AND segments.date <= '2024-01-31' |
| Geçerli: Bu sorgu, kapsayıcı tarih aralığındaki tüm günler için aya göre segmentlere ayrılmış kampanya adlarını ve tıklamaları döndürür. |
SELECT campaign.name, metrics.clicks, segments.month FROM campaign WHERE segments.date >= '2024-01-01' AND segments.date <= '2024-01-31' |
| Geçerli: Bu sorgu, kampanya adlarını ve tıklamaları, dahil edilen yıl aralığındaki tüm aylar için önce çeyreğe, ardından aya göre segmentlere ayrılmış olarak döndürür. |
SELECT campaign.name, metrics.clicks, segments.quarter, segments.month FROM campaign WHERE segments.year >= 2020 AND segments.year <= 2024 |