सेगमेंटेशन

सेगमेंटेशन, Google Ads के यूज़र इंटरफ़ेस (यूआई) में एक अलग मेन्यू के तौर पर उपलब्ध है. Google Ads API में सेगमेंटेशन लागू करने के लिए, किसी क्वेरी में सही फ़ील्ड जोड़ें. उदाहरण के लिए, मान लें कि आपने किसी क्वेरी में segments.device जोड़ा है. इससे एक रिपोर्ट मिलती है. इसमें डिवाइस और FROM क्लॉज़ में बताई गई संसाधन के हर कॉम्बिनेशन के लिए एक लाइन होती है. साथ ही, आंकड़ों की वैल्यू (इंप्रेशन, क्लिक, कन्वर्ज़न वगैरह) को उनके बीच बांटा जाता है.

Google Ads के यूज़र इंटरफ़ेस (यूआई) में, एक बार में सिर्फ़ एक सेगमेंट का इस्तेमाल किया जा सकता है. हालांकि, एपीआई की मदद से एक ही क्वेरी में कई सेगमेंट तय किए जा सकते हैं.

SELECT
  campaign.name,
  campaign.status,
  segments.device,
  metrics.impressions
FROM campaign

इस क्वेरी को GoogleAdsService.SearchStream पर भेजने से मिलने वाले नतीजे, इस JSON स्ट्रिंग की तरह दिखते हैं:

{
  "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"
      }
    }
  ]
}

इस सैंपल नतीजे में, पहले और दूसरे ऑब्जेक्ट के एट्रिब्यूट एक जैसे हैं. इनमें संसाधन का नाम भी शामिल है. इंप्रेशन को डिवाइस के हिसाब से सेगमेंट किया जाता है. इसलिए, एक ही कैंपेन के लिए दो या उससे ज़्यादा ऑब्जेक्ट दिखाए जा सकते हैं.

इंप्लिसिट सेगमेंटेशन

हर रिपोर्ट को शुरुआत में, FROM क्लॉज़ में बताए गए संसाधन के हिसाब से सेगमेंट किया जाता है. क्वेरी में resource_name साफ़ तौर पर शामिल न होने पर भी, FROM क्लॉज़ में मौजूद संसाधन का resource_name फ़ील्ड दिखता है. साथ ही, मेट्रिक को इसके हिसाब से सेगमेंट किया जाता है. उदाहरण के लिए, जब FROM क्लॉज़ में ad_group को संसाधन के तौर पर तय किया जाता है, तब ad_group.resource_name अपने-आप वापस आ जाता है. साथ ही, मेट्रिक ad_group लेवल पर इसके हिसाब से अपने-आप सेगमेंट हो जाती हैं.

इसलिए, इस क्वेरी के लिए:

SELECT metrics.impressions
FROM ad_group

आपको इस तरह की JSON स्ट्रिंग मिलती है:

{
  "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"
      }
    }
  ]
}

adGroup का resource_name फ़ील्ड हमेशा दिखता है, क्योंकि ad_group को FROM क्लॉज़ में संसाधन के तौर पर तय किया गया है.

search_term_view

search_term_view संसाधन को विज्ञापन ग्रुप के हिसाब से भी सेगमेंट किया जाता है. सिर्फ़ खोज के लिए इस्तेमाल किए गए शब्द के हिसाब से नहीं. यह बात, इसके संसाधन के नाम के स्ट्रक्चर से पता चलती है. इसमें विज्ञापन ग्रुप भी शामिल होता है. इसलिए, आपको एक जैसे खोज के लिए शब्दों वाली डुप्लीकेट लाइनें मिल सकती हैं. ऐसा तब होता है, जब वे लाइनें अलग-अलग विज्ञापन ग्रुप से जुड़ी हों:

{
  "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"
      }
    }
  ]
}

इस उदाहरण में, दिखाए गए दो ऑब्जेक्ट डुप्लीकेट लग सकते हैं. हालांकि, इनके संसाधन के नाम अलग-अलग हैं. खास तौर पर, विज्ञापन ग्रुप आईडी वाले हिस्से में. इसका मतलब है कि खोज क्वेरी "google photos" को एक ही तारीख (2024-06-15) को दो विज्ञापन ग्रुप (आईडी 2222222222 और 33333333333) के लिए एट्रिब्यूट किया गया है. इसलिए, एपीआई ने सही तरीके से काम किया और इस मामले में डुप्लीकेट ऑब्जेक्ट नहीं दिखाए.

चुने जा सकने वाले सेगमेंट फ़ील्ड

FROM क्लॉज़ में, किसी संसाधन के लिए सभी सेगमेंट फ़ील्ड नहीं चुने जा सकते. उदाहरण के लिए, मान लें कि आपको ad_group संसाधन से क्वेरी जारी रखनी है. ad_group रिसॉर्स से किसी सेगमेंट फ़ील्ड को चुना जा सकता है. इसके लिए, उस फ़ील्ड का ad_group की सूची में मौजूद होना ज़रूरी है.Segments Segments लिस्ट, ad_group संसाधन के मेटाडेटा पेज पर मौजूद, उपलब्ध फ़ील्ड टेबल का पीला हिस्सा है.

सेगमेंट के संसाधन

कुछ संसाधनों में से चुनने पर, आपके पास उनसे जुड़े संसाधनों को अपने-आप शामिल करने का विकल्प होता है. इसके लिए, FROM क्लॉज़ में संसाधन के फ़ील्ड के साथ-साथ उनके फ़ील्ड भी चुनें. इनसे जुड़े संसाधन, FROM क्लॉज़ के मेटाडेटा पेज पर मौजूद Attributed Resources सूची में देखे जा सकते हैं. ad_group संसाधन के मामले में, आपको दिखेगा कि campaign संसाधन से भी फ़ील्ड चुने जा सकते हैं. अगर किसी Attributed Resources के resource_name फ़ील्ड में SELECT क्लॉज़ में कम से कम एक फ़ील्ड मौजूद है, तो वह अपने-आप दिख जाता है. भले ही, resource_name फ़ील्ड को क्वेरी में साफ़ तौर पर शामिल न किया गया हो.

Attributed Resource फ़ील्ड चुनने की तरह ही, Segmenting Resource फ़ील्ड भी चुने जा सकते हैं. अगर किसी संसाधन के मेटाडेटा पेज पर Segmenting Resources की सूची मौजूद है, तो सूची में शामिल किसी संसाधन से फ़ील्ड चुनने पर, क्वेरी को उस Segmenting Resource के दिखाए गए resource_name के हिसाब से सेगमेंट किया जाता है. उदाहरण के लिए, आपको दिखेगा कि campaign संसाधन को campaign_budget संसाधन के लिए Segmenting Resource के तौर पर लिस्ट किया गया है. campaign_budget रिसॉर्स से campaign.name जैसे किसी कैंपेन फ़ील्ड को चुनने पर, न सिर्फ़ campaign.name फ़ील्ड की वैल्यू मिलती है, बल्कि campaign.resource_name फ़ील्ड की वैल्यू भी मिलती है और उसे सेगमेंट किया जाता है.

सेगमेंट और मेट्रिक के बीच चुनने की सुविधा

ऐसा हो सकता है कि कोई सेगमेंट फ़ील्ड, कुछ अन्य सेगमेंट फ़ील्ड या कुछ मेट्रिक फ़ील्ड के साथ काम न करे. यह पता लगाने के लिए कि कौनसे सेगमेंट फ़ील्ड एक-दूसरे के साथ काम करते हैं, SELECT क्लॉज़ में मौजूद सेगमेंट की selectable_with सूची देखें.

ad_group संसाधन के लिए, 50 से ज़्यादा सेगमेंट उपलब्ध हैं. इनमें से किसी को भी चुना जा सकता है. हालांकि, segments.hotel_check_in_date के लिए selectable_with सूची, काम करने वाले सेगमेंट का एक छोटा सेट है. इसका मतलब है कि अगर आपने segments.hotel_check_in_date फ़ील्ड को SELECT क्लॉज़ में जोड़ा है, तो आपके पास चुनने के लिए उपलब्ध सेगमेंट की संख्या कम हो जाएगी. ये सेगमेंट, इन दोनों सूचियों के इंटरसेक्शन के बराबर होंगे.

मिले-जुले सेगमेंट से जुड़ी शर्तें

कुछ सेगमेंट फ़ील्ड के लिए, साफ़ तौर पर चुनने की पाबंदियां होती हैं. इसलिए, SELECT क्लॉज़ में पैरंट सेगमेंट के साथ उनका अनुरोध करना ज़रूरी होता है:

  • segments.ad_sub_network_type (इससे YouTube के विज्ञापन सब-नेटवर्क, जैसे कि इन-स्ट्रीम, फ़ीड में विज्ञापन, और Shorts का ब्रेकडाउन मिलता है) चुनने के लिए, आपको segments.ad_network_type भी चुनना होगा.
  • v25 और इसके बाद के वर्शन में, segments.ad_sub_format_type (इससे YouTube पर स्किप न किए जा सकने वाले इन-स्ट्रीम विज्ञापनों को अवधि के हिसाब से बांटा जाता है) को चुनने के लिए, आपको segments.ad_format_type को भी चुनना होगा.

सेगमेंट चुनने पर अपने-आप फ़िल्टर होने की सुविधा

क्वेरी में कुछ सेगमेंट फ़ील्ड चुनने पर, Google Ads API नतीजों को अपने-आप फ़िल्टर कर सकता है. ऐसा सिर्फ़ उन लाइनों को शामिल करने के लिए किया जाता है जहां वह सेगमेंट लागू होता है और उसकी कोई वैल्यू होती है.

segments.keyword.* का असर

इस व्यवहार का एक सामान्य और ज़रूरी उदाहरण तब दिखता है, जब segments.keyword में मौजूद किसी फ़ील्ड को चुना जाता है. जैसे, segments.keyword.info.text और segments.keyword.ad_group_criterion:

  • कीवर्ड के अलावा अन्य ट्रैफ़िक को बाहर रखना: अगर आपने अपने SELECT क्लॉज़ में कोई segments.keyword.* फ़ील्ड शामिल किया है, तो इससे नतीजे सिर्फ़ उन लाइनों तक सीमित हो जाते हैं जो Search Network कीवर्ड विज्ञापन ग्रुप के मानदंड से सीधे तौर पर जुड़ी होती हैं.
  • जिन कैंपेन टाइप पर असर पड़ा है: इसलिए, जिन कैंपेन टाइप या विज्ञापन ग्रुप के लिए सर्च कीवर्ड का इस्तेमाल नहीं किया जाता है उनके डेटा को नतीजों से बाहर रखा जाता है. इसमें ये शामिल हैं, लेकिन इनके अलावा और भी चीज़ें शामिल हो सकती हैं:
    • डाइनैमिक सर्च विज्ञापन (डीएसए): ऐसा इसलिए, क्योंकि डीएसए टारगेट, कीवर्ड के बजाय वेबसाइट के कॉन्टेंट पर आधारित होते हैं.
    • शॉपिंग कैंपेन: इनमें कीवर्ड के बजाय प्रॉडक्ट ग्रुप का इस्तेमाल किया जाता है.
    • परफ़ॉर्मेंस मैक्स कैंपेन: परफ़ॉर्मेंस मैक्स कैंपेन के विज्ञापन, Search Network पर दिखाए जा सकते हैं. हालांकि, इनकी रिपोर्टिंग को आम तौर पर कीवर्ड के हिसाब से सेगमेंट नहीं किया जाता.
  • Display Network: segments.keyword.* फ़ील्ड, Search Network पर इस्तेमाल किए गए कीवर्ड से जुड़े होते हैं. इन्हें Display Network के कीवर्ड या डिसप्ले टारगेटिंग के अन्य तरीकों के हिसाब से सेगमेंट नहीं किया जाता.

WHERE क्लॉज़ में सेगमेंट के लिए नियम

अगर कोई सेगमेंट WHERE क्लॉज़ में है, तो वह SELECT क्लॉज़ में भी होना चाहिए. इस नियम के अपवाद के तौर पर, तारीख के ये सेगमेंट इस्तेमाल किए जा सकते हैं. इन्हें तारीख के मुख्य सेगमेंट कहा जाता है:

  • segments.date
  • segments.week
  • segments.month
  • segments.quarter
  • segments.year

तारीख के मुख्य डेटा सेगमेंट फ़ील्ड के लिए नियम

सेगमेंट segments.date, segments.week, segments.month, segments.quarter, और segments.year इस तरह काम करते हैं:

  • इन सेगमेंट को WHERE क्लॉज़ में फ़िल्टर किया जा सकता है. हालांकि, ये SELECT क्लॉज़ में नहीं दिखेंगे.
  • अगर इनमें से कोई भी सेगमेंट SELECT क्लॉज़ में है, तो WHERE क्लॉज़ में तारीख की एक तय सीमा दी जानी चाहिए. इसमें तारीख के मुख्य सेगमेंट शामिल होने चाहिए. यह ज़रूरी नहीं है कि तारीख के सेगमेंट, SELECT में बताए गए सेगमेंट के जैसे ही हों.

उदाहरण

अमान्य: segments.date, SELECT क्लॉज़ में है. इसलिए, आपको segments.date, segments.week, segments.month, segments.quarter या segments.year के लिए, WHERE क्लॉज़ में तारीख की एक तय सीमा बतानी होगी.
SELECT
  campaign.name,
  metrics.clicks,
  segments.date
FROM campaign
मान्य: इस क्वेरी से, कैंपेन के नाम और तारीख की चुनी गई सीमा के दौरान मिले क्लिक की जानकारी मिलती है. ध्यान दें कि segments.date को SELECT क्लॉज़ में शामिल करना ज़रूरी नहीं है.
SELECT
  campaign.name,
  metrics.clicks
FROM campaign
WHERE segments.date >= '2024-01-01'
  AND segments.date <= '2024-01-31'
मान्य: यह क्वेरी, तारीख के हिसाब से सेगमेंट किए गए कैंपेन के नाम और क्लिक दिखाती है. ये क्लिक, तारीख की चुनी गई सीमा के सभी दिनों के लिए होते हैं.
SELECT
  campaign.name,
  metrics.clicks,
  segments.date
FROM campaign
WHERE segments.date >= '2024-01-01'
  AND segments.date <= '2024-01-31'
मान्य: यह क्वेरी, तारीख की चुनी गई सीमा में आने वाले सभी दिनों के लिए, कैंपेन के नाम और महीने के हिसाब से सेगमेंट किए गए क्लिक दिखाती है.
SELECT
  campaign.name,
  metrics.clicks,
  segments.month
FROM campaign
WHERE segments.date >= '2024-01-01'
  AND segments.date <= '2024-01-31'
मान्य: इस क्वेरी से, कैंपेन के नाम और क्लिक की जानकारी मिलती है. इन्हें तिमाही के हिसाब से और फिर साल की सभी महीनों के हिसाब से सेगमेंट किया जाता है.
SELECT
  campaign.name,
  metrics.clicks,
  segments.quarter,
  segments.month
FROM campaign
WHERE segments.year >= 2020
  AND segments.year <= 2024