इस गाइड में बताया गया है कि Google Ads API की रिपोर्ट में, शून्य मेट्रिक वाली लाइनें क्यों दिखती हैं. साथ ही, अपनी क्वेरी में उन्हें शामिल न करने या मैनेज करने का तरीका भी बताया गया है.
खोज के नतीजों में शून्य मेट्रिक
कोई क्वेरी चलाने पर, आपको ऐसी इकाइयों की मेट्रिक दिख सकती हैं जिनकी वैल्यू शून्य है. इसकी ये वजहें हो सकती हैं:
- इकाइयां, डिसप्ले के लिए ज़रूरी शर्तें पूरी नहीं करती हैं.
- उन्हें रिपोर्ट की तारीख की सीमा के दौरान रोका गया था.
क्वेरी के नतीजों से, आपको अक्सर यह जानकारी मिलती है कि आपके कैंपेन कैसा परफ़ॉर्म कर रहे हैं. इस संदर्भ में, शून्य मेट्रिक की ज़रूरत नहीं हो सकती. ज़्यादा काम की रिपोर्ट बनाने के लिए, शून्य मेट्रिक को साफ़ तौर पर बाहर रखा जा सकता है.
प्रेडिकेट की मदद से, शून्य मेट्रिक को बाहर रखना
प्रेडिकेट एक ऐसा एक्सप्रेशन है जो TRUE, FALSE या UNKNOWN का आकलन करता है.
Google Ads क्वेरी लैंग्वेज में, WHERE क्लॉज़ की खोज की शर्त में प्रेडिकेट का इस्तेमाल किया जाता है.
नीचे दी गई क्वेरी से पता चलता है कि प्रेडिकेट का इस्तेमाल करके, शून्य मेट्रिक को साफ़ तौर पर कैसे हटाया जा सकता है:
SELECT
campaign.id,
metrics.impressions
FROM campaign
WHERE metrics.impressions > 0
सेगमेंट करके, शून्य मेट्रिक को बाहर रखना
किसी रिपोर्ट को सेगमेंट में बांटते समय, शून्य मेट्रिक को हमेशा बाहर रखा जाता है. हालांकि, इसके लिए ज़रूरी है कि चुनी गई सभी मेट्रिक शून्य हों. इसके बारे में ज़्यादा जानने के लिए, शून्य मेट्रिक वाली पंक्तियां देखें.
रिपोर्ट को सेगमेंट में बांटने के लिए, सर्च क्वेरी के SELECT क्लॉज़ में कोई भी segments फ़ील्ड शामिल किया जाता है. SELECT में चुने बिना, WHERE में मुख्य डेट सेगमेंट पर फ़िल्टर करने से रिपोर्ट सेगमेंट में नहीं बंटती. उदाहरण के लिए, अगर किसी रिपोर्ट को segments.date के हिसाब से सेगमेंट किया जाता है, तो मेट्रिक को हर तारीख के लिए एक लाइन में बांटा जाता है. इस तरह की रिपोर्ट में, ऐसी तारीखें शामिल नहीं की जातीं जिनके लिए कोई मेट्रिक मौजूद नहीं होती.
यहां दी गई क्वेरी के लिए, रिपोर्ट में शून्य मेट्रिक वाली लाइनें शामिल नहीं होंगी:
SELECT
campaign.name,
metrics.impressions,
segments.date
FROM campaign
WHERE segments.date DURING LAST_30_DAYS
शून्य मेट्रिक वाली पंक्तियां दिखाना
सेगमेंट करते समय, ऐसी लाइनें नहीं दिखेंगी जिनकी चुनी गई सभी मेट्रिक शून्य हैं. उदाहरण के लिए, इस क्वेरी को देखें जो metrics.impressions, metrics.clicks, और metrics.conversions को चुनती है:
SELECT
ad_group_criterion.criterion_id,
metrics.impressions,
metrics.clicks,
metrics.conversions,
segments.date
FROM keyword_view
WHERE segments.date BETWEEN '2026-01-01' AND '2026-01-31'
नतीजे के तौर पर मिलने वाली रिपोर्ट में ऐसी कोई लाइन नहीं होगी जिसमें चुनी गई तीनों मेट्रिक की वैल्यू शून्य हो. हालांकि, इसमें ऐसी लाइनें होंगी जिनमें चुनी गई तीनों मेट्रिक में से कम से कम एक की वैल्यू शून्य से ज़्यादा हो.
डेटा के रखरखाव की अवधि के बाद का पुराना डेटा क्वेरी करने पर, 37 महीने से ज़्यादा पुराना डेटा उपलब्ध नहीं होता. साथ ही, कोई पंक्ति नहीं दिखती. अगर 37 महीने से ज़्यादा पुरानी तारीख के लिए, ज़्यादा जानकारी वाले डेटा सेगमेंट (segments.date, segments.week, और segments.hour) के अनुरोध किए जाते हैं, तो वर्शन 24 और उसके बाद के वर्शन में DateRangeError.REQUESTED_DATE_GRANULARITY_NOT_SUPPORTED (या वर्शन 23 में DateRangeError.UNKNOWN) दिखता है. हाई-लेवल का कुल डेटा (segments.month, segments.quarter, और segments.year) 11 साल तक सेव रखा जाता है. यह डेटा, अगले कैलेंडर पीरियड की शुरुआत से सेव रखा जाता है. उदाहरण के लिए, अगर 11 साल के लुकबैक कटऑफ़ की तारीख 2015-03-22 (या 2015-03-01) है, तो कटऑफ़ (2015-04-01) के बाद के पहले पूरे कैलेंडर महीने से हर महीने का डेटा उपलब्ध होगा. ज़्यादा जानकारी के लिए, तारीख की सीमाएं देखें.
रीच मेट्रिक को छिपाना और शून्य वैल्यू
इंप्रेशन न दिखाने वाली इकाइयों के अलावा, रीच मेट्रिक (जैसे, metrics.unique_users और फ़्रीक्वेंसी बकेट मेट्रिक metrics.unique_users_two_plus से metrics.unique_users_ten_plus तक) शून्य के तौर पर दिख सकती हैं या रीच डेटा को छिपाने पर, उन्हें हटाया जा सकता है. metrics.unique_users मेट्रिक (और metrics.unique_users_info) का इस्तेमाल, डिसप्ले, वीडियो, मांग बढ़ाने में मदद करने वाले कैंपेन, और ऐप्लिकेशन कैंपेन में किया जा सकता है. वहीं, metrics.unique_users_*_plus फ़्रीक्वेंसी बकेट मेट्रिक (और metrics.unique_users_*_plus_info) का इस्तेमाल, वीडियो कैंपेन में किया जा सकता है.
रीच कम होने की कई वजहें हो सकती हैं:
- निजता थ्रेशोल्ड: जब उपयोगकर्ताओं की संख्या, निजता थ्रेशोल्ड (जैसे, k-anonymity) को पूरा नहीं करती, तो उपयोगकर्ता की पहचान को सुरक्षित रखने के लिए, रीच डेटा को छिपा दिया जाता है.
- क्वालिटी थ्रेशोल्ड: अगर डेटा, क्वालिटी के मानकों को पूरा नहीं करता है, तो रीच डेटा को रोका जा सकता है.
- डेटा का रखरखाव: रीच का पुराना डेटा तीन साल (36 महीने) तक सेव रखा जाता है. डेटा के रखरखाव के लिए तय की गई तीन साल की अवधि से ज़्यादा पुरानी तारीखों की क्वेरी के लिए, रीच मेट्रिक का डेटा नहीं दिखाया जा सकता. 36 से 37 महीने पहले की तारीखों को कवर करने वाली क्वेरी, पिछले सेक्शन में बताए गए
DateRangeError.REQUESTED_DATE_GRANULARITY_NOT_SUPPORTEDको दिखाए बिना ही पूरी हो जाती हैं. हालांकि, वे रीच मेट्रिक को छोड़ देती हैं. साथ ही, कंपैनियन रीच मेटाडेटा चुने जाने परDATE_RANGE_BEYOND_RETENTIONदिखाती हैं.
v26 और इसके बाद के वर्शन में, हर यूनीक उपयोगकर्ता की रीच मेट्रिक के साथ ReachMetricInfo टाइप का एक मेटाडेटा फ़ील्ड होता है. जैसे, metrics.unique_users_info और metrics.unique_users_two_plus_info से लेकर metrics.unique_users_ten_plus_info तक.
Google Ads क्वेरी लैंग्वेज (GAQL) में, कंपैनियन रीच फ़ील्ड, MESSAGE मेट्रिक होती हैं. इन्हें सीधे SELECT क्लॉज़ में चुना जाता है. उदाहरण के लिए, metrics.unique_users_info.
SELECT क्लॉज़ में .reach_metric_states को न जोड़ें, क्योंकि GAQL में नेस्ट किए गए मैसेज फ़ील्ड चुनने पर, UNRECOGNIZED_FIELD गड़बड़ी होती है. इसके बजाय, metrics.unique_users_info को चुनने पर, ReachMetricInfo मैसेज दिखता है. इसमें ReachMetricState टाइप का बार-बार इस्तेमाल होने वाला enum फ़ील्ड reach_metric_states शामिल होता है. इससे पता चलता है कि मेट्रिक को दबाया गया था या वह पूरी है.
जब भी कोई रीच मेट्रिक, डेटा को सेव करके रखने की समयसीमा (PRIVACY_SUPPRESSION, QUALITY_SUPPRESSION या DATE_RANGE_BEYOND_RETENTION) से बाहर होती है या उसे दबा दिया जाता है, तो Metrics पर उसका optional int64 फ़ील्ड अनसेट हो जाता है. अगर फ़ील्ड की मौजूदगी की जांच नहीं की जाती है, तो इसकी वैल्यू 0 हो जाती है. हालांकि, LOW_QUALITY अब भी न्यूमेरिक मेट्रिक को पॉप्युलेट करता है:
COMPLETE: रीच मेट्रिक का पूरा डेटा प्रोसेस हो गया है और इसमें कोई डेटा छिपाया नहीं गया है.PRIVACY_SUPPRESSION: निजता की वजह से, 'पहुंच' मेट्रिक का डेटा छिपा दिया गया था.QUALITY_SUPPRESSION: डेटा क्वालिटी की वजह से, रीच डेटा को छिपा दिया गया था.LOW_QUALITY: रीच मेट्रिक का हिसाब लगाया गया था, लेकिन इसे खराब क्वालिटी के तौर पर फ़्लैग किया गया है.DATE_RANGE_BEYOND_RETENTION: रीच मेट्रिक का डेटा उपलब्ध नहीं है, क्योंकि चुनी गई तारीख की सीमा, रीच डेटा के रखरखाव के लिए तय की गई तीन साल की अवधि से ज़्यादा है.
रीच मेट्रिक और उससे जुड़े मेटाडेटा फ़ील्ड, दोनों को चुनकर आपका ऐप्लिकेशन, असल में शून्य रीच और छिपाई गई रीच वैल्यू के बीच अंतर कर सकता है:
SELECT
campaign.id,
campaign.name,
metrics.unique_users,
metrics.unique_users_info,
metrics.unique_users_two_plus,
metrics.unique_users_two_plus_info,
metrics.unique_users_ten_plus,
metrics.unique_users_ten_plus_info
FROM campaign
WHERE campaign.advertising_channel_type = 'VIDEO'
AND segments.date DURING LAST_30_DAYS