सेगमेंटेशन

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

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

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 क्लॉज़ में संसाधन के तौर पर तय किया गया है.

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

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

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

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

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

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

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

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

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

segments.keyword.* का असर

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

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

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

सबसे सही तरीका: अगर आपको अपने विश्लेषण में डीएसए, शॉपिंग या खोजशब्दों पर आधारित नहीं होने वाले अन्य सोर्स से परफ़ॉर्मेंस डेटा शामिल करना है, तो अपनी क्वेरी में segments.keyword.* से फ़ील्ड शामिल न करें. सबसे पहले, सभी कैंपेन टाइप के डेटा का विश्लेषण करें. इसके बाद, कीवर्ड सेगमेंटेशन सिर्फ़ तब लागू करें, जब आपको सर्च कीवर्ड की परफ़ॉर्मेंस पर फ़ोकस करना हो.

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-02-01'
मान्य: इस क्वेरी से, तारीख की सीमा में आने वाले सभी दिनों के लिए, तारीख के हिसाब से सेगमेंट किए गए कैंपेन के नाम और क्लिक की जानकारी मिलती है.
SELECT
  campaign.name,
  metrics.clicks,
  segments.date
FROM campaign
WHERE segments.date > '2024-01-01'
  AND segments.date < '2024-02-01'
मान्य: यह क्वेरी, तारीख की सीमा में आने वाले सभी दिनों के लिए, महीने के हिसाब से सेगमेंट किए गए कैंपेन के नाम और क्लिक दिखाती है.
SELECT
  campaign.name,
  metrics.clicks,
  segments.month
FROM campaign
WHERE segments.date > '2024-01-01'
  AND segments.date < '2024-02-01'
मान्य: इस क्वेरी से, साल की तय सीमा के सभी महीनों के लिए, कैंपेन के नाम और क्लिक की जानकारी मिलती है. यह जानकारी, क्वार्टर और फिर महीने के हिसाब से सेगमेंट की जाती है.
SELECT
  campaign.name,
  metrics.clicks,
  segments.quarter,
  segments.month
FROM campaign
WHERE segments.year > 2019
  AND segments.year < 2024

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) के लिए एट्रिब्यूट किया गया है. इसलिए, हम यह कह सकते हैं कि एपीआई ने सही तरीके से काम किया और इस मामले में डुप्लीकेट ऑब्जेक्ट नहीं दिखाए.