EMAX Studio Blog
AI के साथ डेली Meta Ads हेल्थ चेक: सोने से पहले खराब विज्ञापन Auto-Pause करें
Manuel Mrosek · 2026-06-17 · — व्यू
AI के साथ डेली Meta Ads हेल्थ चेक: सोने से पहले खराब विज्ञापन Auto-Pause करें
AI के साथ एक डेली Meta ads हेल्थ चेक एक scheduled script है जो Marketing API से पिछले दिन के Insights खींचता है, fixed CTR, CPM और frequency thresholds लागू करता है, किसी भी ऐसे ad को auto-pause करता है जो उनसे नीचे गिरता है, और आपके laptop खोलने से पहले Telegram या Slack पर एक-स्क्रीन रिपोर्ट भेजता है। सही ढंग से किया जाए, तो इसकी लागत प्रति दिन लगभग तीन मिनट का compute है, सुबह 9 बजे तक बर्बाद ad spend में इससे ज़्यादा बचाता है, और Ads Manager में क्लिक करने और उन्हीं पाँच columns पर भेंगा करके देखने के सुबह के ritual को बदल देता है।
यदि आपने अभी तक अपने account पर Meta का Marketing API सेटअप नहीं किया है, तो Meta Ads CLI को step by step कैसे सेटअप करें से शुरू करें। और यदि आप अभी भी इस बात पर अनिश्चित हैं कि क्या एक AI agent पहले स्थान पर आपके ads चलाना चाहिए, तो व्यापक तर्क AI agents के साथ AI Facebook ads में है। यह पोस्ट मानता है कि आपके पास पहले से एक working CLI, एक system user token, और कम से कम एक live ad set है। हम वो हिस्सा उठा रहे हैं जिसे ज़्यादातर लोग skip करते हैं: वास्तव में हर एक दिन ads पर check करना।
क्यों एक Daily Health Check Weekly Review से बेहतर है
Meta का delivery algorithm हारने वाले ads को अपने पैर खोजने के लिए एक week नहीं देता। Decay curve तेज़ है। एक ad set जो 1.4 प्रतिशत CTR पर खुलता है और दूसरे दिन 0.4 प्रतिशत पर गिरता है, पहले से ही algorithm द्वारा throttle किया जा रहा है: कम delivery, उच्च CPM, खराब placements। तीसरे दिन तक budget अभी भी उसी daily rate पर निकल रहा है लेकिन ad उन लोगों को serve किया जा रहा है जिन्होंने click किया क्योंकि उनका thumb slip हो गया, इसलिए नहीं कि वे offer चाहते थे।
यहाँ जो मायने रखता है वह है financial math। एक $30-per-day ad set जो 0.3 प्रतिशत CTR पर पाँच अतिरिक्त दिन चलता है इससे पहले कि आप ध्यान दें, traffic पर $150 जला चुका है जो convert नहीं करता। दो campaigns में बीस ad sets चलाएँ और यह $3,000 प्रति माह बन जाता है flushed क्योंकि किसी इंसान ने Saturday morning को dashboard check नहीं किया। Weekly-review की आदत मानती है कि ads धीरे-धीरे मरते हैं। वे नहीं मरते। वे 24 से 48 घंटों में मरते हैं, और आपका budget funeral के लिए तब तक paying रहता है जब तक आप उन्हें off नहीं कर देते।
दूसरा कारण क्यों daily weekly से बेहतर है: creative fatigue। 7-day window में 4.0 से ऊपर की frequency का मतलब है कि वही व्यक्ति आपका ad चार से अधिक बार देख रहा है। Engagement गिरती है, ad relevance गिरती है, और Meta आपको compensate करने के लिए प्रति impression अधिक charge करना शुरू करता है। Fatigue को जल्दी पकड़ने का एकमात्र तरीका है हर दिन frequency देखना, न कि Friday afternoon को जब आप "do marketing" करने बैठते हैं।
एक Real Daily Health Check वास्तव में क्या करता है
"Ads dashboard" वाक्यांश लोगों को Ads Manager के बारे में सोचने पर मजबूर करता है। हम वह नहीं बना रहे हैं। हम एक small Python script बना रहे हैं जो sequence में चार चीज़ें करता है, कोई dashboard आवश्यक नहीं।
पहला, यह Meta के Marketing API के लिए एक never-expiring system user token के साथ authenticate करता है। कोई login नहीं, कोई two-factor prompt नहीं, कोई session timeout नहीं — token Sunday सुबह 7 AM पर उसी तरह काम करता है जैसे Tuesday दोपहर को करता है।
दूसरा, यह पिछले दिन के लिए हर active ad set से Insights खींचता है: impressions, clicks, CTR, CPM, spend, frequency, और कोई भी custom conversion events जो आपने configure किए हैं। अधिकांश accounts के लिए यह प्रति ad account एक API call है, जिसमें ad set और ad द्वारा breakdowns हैं।
तीसरा, यह आपके thresholds लागू करता है। Meta के recommended thresholds नहीं, कोई industry benchmark नहीं — आपके। वो thresholds जो आपने तय किए हैं वो "यह ad काम कर रहा है" और "यह ad पैसा जला रहा है" के बीच की रेखा हैं। यदि एक ad fail होता है, तो script इसे flag करता है। यदि यह वाकई fail होता है (हम नीचे cover करेंगे कि उसका क्या मतलब है), तो script इसे on the spot pause कर सकता है, जब आप सो रहे हों।
चौथा, यह वहाँ एक single message भेजता है जहाँ आप वास्तव में ध्यान देते हैं। अधिकांश operators के लिए वो Telegram या Slack है। Email नहीं — email वहाँ है जहाँ reports मरने जाते हैं। Message में एक-line summary, क्या pass हुआ और क्या fail हुआ की एक table, और कोई actions जो overnight auto-taken की गईं शामिल हैं।
बस इतना ही। कोई dashboard नहीं, कोई analytics suite नहीं, कोई daily login नहीं। पूरा loop 200 lines Python और एक cron entry है।
तीन Daily Trigger Rules जो वास्तव में काम करते हैं
वास्तविक EMAX Studio campaigns पर इसे चलाने और कुछ छोटे advertisers को ऐसा ही करने में मदद करने के बाद, तीन rules पता चलते हैं कि वो ज़्यादातर काम करते हैं। बाकी सब gravy है।
Rule 1: 100+ impressions के बाद 0.5 प्रतिशत से कम CTR = auto-pause।
यह single highest-leverage rule है। 100 impressions से कम पर आपके पास कोई signal नहीं है — पहले दिन pause करना amateur hour है। 100 impressions के बाद CTR statistically meaningful है निर्णय लेने के लिए। एक cold audience पर 0.5 प्रतिशत से कम CTR का मतलब है कि या तो creative गलत है, hook गलत है, या audience गलत है। उनमें से कोई भी उसी ad पर एक और $50 जलाकर बेहतर नहीं होता। Auto-pause करें और आगे बढ़ें।
Rule 2: लगातार 3 दिनों के लिए ad-set median से 2x से अधिक CPM = warning।
Auto-pause नहीं — warning। यदि एक ad set के अंदर एक single ad तीन दिनों के लिए अपने siblings के average CPM से दोगुना भुगतान कर रहा है, तो Meta आपको बता रहा है कि उस ad का relevance score कम है। कभी-कभी आप इसे वैसे भी रखते हैं क्योंकि conversions मज़बूत हैं; warning आपको देखने का मौका देता है। केवल CPM पर auto-pausing एक गलती है क्योंकि उच्च conversion rate के साथ उच्च CPM अभी भी एक profitable ad है।
Rule 3: 7-day window पर 4.0 से ऊपर Frequency = creative-fatigue flag।
Rule 2 के समान principle — एक flag, एक kill नहीं। 4 से ऊपर की Frequency का मतलब है कि आपकी audience एक week में चार या अधिक बार वही creative देख रही है। कभी-कभी वो intentional होता है (retargeting)। ज़्यादातर समय इसका मतलब है कि आपको अगले 48 घंटों में एक new creative variant की ज़रूरत है, वरना CPMs बढ़ते रहेंगे। Script ad को flag करता है और आदर्श रूप से उसे cc करता है जो creative बनाता है।
यही पूरी rulebook है। तीन thresholds, एक auto-action, दो warnings। आपको 20-rule rules engine की ज़रूरत नहीं है। आपको तीन rules चाहिए जिन पर आप trust करते हैं।
A Real Setup Walkthrough
यह दिखता है कि wired up होने पर यह कैसा लगता है। Manuel EMAX Studio पर यह exact stack चलाता है।
Script scripts/meta_daily_report.py पर रहता है। यह ~/.emax/automation-config.json (या production equivalent /opt/emaxstudio/.emax/) से credentials load करता है, System User token, Ad Account ID, और Telegram bot credentials पाने के लिए meta_ads section पढ़ता है। Marketing API endpoint https://graph.facebook.com/v23.0/act_<account_id>/insights है सही field set के साथ: impressions, clicks, ctr, cpm, spend, frequency, actions, ad_id और ad_name द्वारा broken down। प्रति ad account एक HTTPS request, एक Python dict में parse किया गया।
Script फिर उस data को EMAX Studio के internal Quick Scan event database के साथ join करता है — प्रत्येक ad के लिए, कितने लोगों ने click किया और वास्तव में एक Quick Scan शुरू किया। वह conversion column "यह ad clicks पाता है" और "यह ad सही clicks पाता है" के बीच का अंतर है। यदि आपके business का similar funnel event है (signup, demo booking, free trial start), तो उसे अपने database से खींचें और utm_campaign या एक custom URL parameter पर join करें। एक small daily window पर Meta की reported conversions पर trust न करें — वे noisy हैं।
Code में लागू Thresholds: यदि impressions >= 100 AND ctr < 0.005, script status=PAUSED के साथ POST /act_<id>/<ad_id> call करता है। Action logged की जाती है। यदि --auto-pause command line पर pass नहीं किया जाता है, तो script report में ad को flag करता है लेकिन वास्तव में pause नहीं करता — पहले week के लिए उपयोगी जब आप thresholds में trust build कर रहे हैं।
Delivery Telegram के माध्यम से है। Production Bot (ID 8569897179) operator chat (6301180951) में Markdown-formatted message post करता है। यदि Telegram किसी कारण से fail होता है — network glitch, rate limit, expired chat — तो script Resend के माध्यम से email पर fall back करता है ताकि आपको कभी silent morning न मिले।
Hetzner VPS पर Cron entry: 0 5 * * * cd /opt/emaxstudio && python3 scripts/meta_daily_report.py --auto-pause। वह 5:00 UTC है, जो 7:00 Berlin CEST है — पहली coffee से पहले phone पर report waiting होने के लिए जल्दी। --auto-pause flag वही है जो script को "warn-only" से "actually take action overnight" में flip करता है।
पूरी चीज़ को CLI के पहले से जगह पर होने के बाद wire up करने में एक afternoon लगा। मुश्किल हिस्सा code नहीं है। मुश्किल हिस्सा thresholds के लिए commit करना और उन पर trust करना है।
Health Check Output Format
जब यह आती है तो report कैसी दिखनी चाहिए। numbers की एक wall नहीं — एक one-screen summary जो आपको बताती है कि relax करें या laptop खोलें।
| Section | इसमें क्या है |
|---|---|
| Header | Date, कल कुल spend, currency |
| Auto-actions | Ads की list जो overnight auto-paused हुईं, reason के साथ ("CTR 0.31% after 142 imp") |
| Warnings | CPM 2x median से ऊपर या frequency > 4 वाले ads, कोई action नहीं |
| Top performers | Impressions >= 100 के साथ CTR के अनुसार Top 3 ads, एक sanity check कि algorithm winners ढूँढ रहा है |
| Funnel KPIs | कल शुरू हुए Quick Scans (या आपका equivalent conversion event), cost per scan, 7-day rolling average के मुकाबले |
| Footer | एक sentence: "All systems green" या "X items need attention" |
Telegram message को कभी भी एक phone screen पर बिना scrolling के fit होने वाले से अधिक नहीं होना चाहिए। यदि आप खुद को इसे लंबा बनाते पाते हैं, तो आप बहुत ज़्यादा metrics पढ़ रहे हैं। तीन rules, दो warnings, तीन top performers, एक funnel number। इससे अधिक एक Tuesday afternoon analysis problem है, 7 AM operator problem नहीं।
Threshold Table — Auto-Pause, Warn, या Ignore
उन लोगों के लिए जो एक copy-pasteable starting point चाहते हैं। अपनी CPM range, अपनी industry, और अपने conversion event के लिए adjust करें। ये gospel नहीं हैं; ये sensible defaults हैं।
| Metric | Min sample | Auto-pause | Warn | Ignore |
|---|---|---|---|---|
| CTR (link clicks) | 100 impressions | < 0.5% | 0.5%–0.8% | > 0.8% |
| CPM vs. ad-set median | 3 consecutive days | — | > 2.0x | < 2.0x |
| Frequency (7-day) | 7 days of delivery | — | > 4.0 | < 4.0 |
| Conversion rate (click → scan) | 50 clicks | < 1% | 1%–3% | > 3% |
| ROAS (if tracked) | $50 spend | < 0.5 | 0.5–1.0 | > 1.0 |
दो notes। एक: इसके minimum sample से नीचे एक metric पर कभी auto-pause न करें। 100 impressions से नीचे, 0 प्रतिशत CTR का कुछ भी मतलब नहीं है — बहुत जल्दी pause करने से Meta द्वारा सीखना शुरू करने से पहले ही ads मर जाते हैं। दो: छोटे daily windows पर auto-pause trigger के रूप में ROAS खतरनाक है। पहले दिन 0.4 का ROAS मौत का वारंट नहीं है; पाँचवें दिन यह है। किसी भी ROAS-based kill को automate करने से पहले एक multi-day check build करें।
Pitfalls
कुछ चीज़ें जो आपको काटेंगी यदि आप उन्हें skip करते हैं।
एक minimum impressions threshold के बिना auto-pause न करें। कारण कि एक brand-new ad कभी-कभी 8 impressions के बाद 0 प्रतिशत CTR दिखाता है इसलिए नहीं है कि creative खराब है। यह इसलिए है कि 8 impressions statistical noise हैं। हमेशा कम से कम 100 की आवश्यकता रखें — और higher-CPM verticals के लिए, 200 — किसी भी auto-pause निर्णय से पहले।
एक budget redistribution rule के बिना pause न करें। यदि आपका script $100/day campaign budget के साथ एक ad set में 10 ads में से 4 को pause करता है, तो वह budget 6 surviving ads में बहेगा — ठीक है यदि वे healthy हैं, भयानक यदि वे भी marginal हैं। समय से पहले तय करें कि paused budget campaign के भीतर redistribute होता है या account पर wapas rolls होता है, और इसे document करें।
एक active scaling phase के दौरान health check न चलाएँ। यदि आप जानबूझकर एक नई audience को 5x budget increase के साथ stress-test कर रहे हैं, तो पहले 48 घंटे ugly CTRs पैदा करेंगे जैसे Meta delivery re-learn करता है। उस window में एक auto-pause experiment को finish होने से पहले मार देता है। या तो tag के साथ campaign के लिए auto-pause disable करें, या एक "scaling mode" flag build करें जिसका आपका script सम्मान करता है।
Day-one numbers पर trust न करें। एक ad publish करने के बाद पहले 24 घंटों में algorithm का exploration phase शामिल है: यह जानबूझकर ad को आपके converters खोजने के लिए एक wider, weirder set of users को serve करता है। पहले दिन का CTR लगभग हमेशा तीसरे दिन से बदतर होता है। पहले दिन के CTR पर pause करें और आप वो ads pause करेंगे जो winners में स्थिर हो जाते।
Monday morning पर weekend lows auto-pause न करें। अधिकांश B2B और कई B2C verticals के लिए, Saturday-Sunday CTR weekday CTR से 30 से 50 प्रतिशत नीचे है। यदि आपकी Monday morning report हर ad को auto-pauses करती है जिसने weekend में underperform किया, तो आप एक campaign पर आएँगे जिसमें कोई live ads नहीं हैं। या तो weekends पर threshold को higher weight दें, या बस Mondays पर script को "warn only" पर set करें। इस तर्क का गहरा संस्करण AI के साथ marketing automation lead to customer में रहता है, जो cover करता है कि automated rules को calendar awareness की आवश्यकता क्यों है।
अक्सर पूछे जाने वाले प्रश्न
इसे प्रति माह चलाने में कितना खर्च होता है?
Pennies। Meta के standard rate limits के तहत Marketing API calls free हैं। Cron job को host करने के लिए एक cheap VPS लगभग $5 प्रति माह है — या $0 यदि आपके पास पहले से एक server है। Anthropic या OpenAI tokens, यदि आप summary text लिखने के लिए templating के बजाय एक LLM का उपयोग करते हैं, daily run के लिए लगभग $0.01 से $0.03 हैं। तो लगभग $5 से $7 प्रति माह all-in। पहले auto-paused $50/day ad पर बचत पूरे साल के लिए भुगतान करती है।
क्या यह Google Ads, LinkedIn Ads, या TikTok Ads के लिए काम करता है?
वही architecture उन सभी के लिए काम करता है। प्रत्येक platform में एक API है, लगभग वही KPIs returns करता है, और pause commands स्वीकार करता है। Thresholds अलग होते हैं — TikTok CTRs Meta से higher चलते हैं, LinkedIn CPMs Meta से 5 से 10x हैं। लेकिन script की संरचना (pull, threshold, act, report) समान है। अधिकांश operators Meta से शुरू करते हैं क्योंकि यह highest spend है और problems को जल्दी signal देने में सबसे खराब है। Meta humming होने के बाद एक बार में एक अन्य platforms जोड़ें।
मैं creative refresh कैसे संभालूँ — क्या AI अगला variant लिखता है?
Health check खुद creative नहीं लिखता। यह आपको बताता है कि कौन से ads मर रहे हैं, क्यों, और कब। अगला step — fresh creative generate करना — एक separate job है। Script द्वारा raised किया गया flag एक creative refresh के लिए trigger है, जिसे आप या तो manually कर सकते हैं या एक content generation tool में pipe कर सकते हैं जो upload करने के लिए तैयार new hooks, images, और copy produce करता है। EMAX Studio हमारे अपने ads के लिए यह end-to-end करता है: daily report fatigue को flag करती है, और अगली सुबह campaign queue में तीन नए variants तैयार होते हैं। दोनों को bridge करने वाला piece AI के साथ marketing automation lead to customer में describe किया गया है।
क्या AI वास्तव में decide कर सकता है कि अगला कौन सा creative लिखना है?
यह कर सकता है — और बढ़ते हुए करता है — लेकिन सावधान रहें कि आप इसे कहाँ जाने देते हैं। AI एक working idea के new hook variants produce करने में solid है (rephrasing, emphasis बदलना, angle swap करना)। यह decide करने में बहुत खराब है कि एक concept को entirely abandon करना और कुछ genuinely new try करना है। Variant generation के लिए AI का उपयोग करें; "क्या हमें इस offer को अभी भी चलाते रहना चाहिए" के लिए human judgment रखें। यही split हमारे लिए काम करता है।
क्या यह multiple ad accounts में काम करता है?
हाँ, और इसे करना चाहिए। हमारे ज्ञात अधिकांश operators 2 से 8 ad accounts के बीच चलाते हैं — प्रति client एक, या in-house teams के लिए प्रति brand एक। Script account IDs की एक list लेता है और प्रत्येक के खिलाफ वही pipeline चलाता है, या तो एक combined report या प्रति account एक report भेजता है। Agencies के लिए, प्रति client एक report समझ में आता है; in-house multi-brand teams के लिए, एक combined dashboard आमतौर पर scan करने में तेज़ है। किसी भी तरह, System User token उन सभी accounts को cover करता है जिन तक user की access है, इसलिए authentication एक one-time setup है।
यदि API down है या rate-limited क्या होता है?
Script exponential backoff (3 attempts, फिर bail) के साथ retry करता है। यदि यह अभी भी fail होता है, तो आपको एक Telegram message मिलता है: "Health check failed, manual review needed."। यही right behavior है। Wrong behavior silently fail करना है और आपको तीन दिन बाद discover करने के लिए छोड़ देना है कि कोई checks नहीं चले। Day one से failure mode build करें।
ईमानदार Bottom Line
AI के साथ एक daily Meta ads health check एक get-rich-fast tool नहीं है। यह एक losing campaign को winning campaign में नहीं बदलेगा। यह आपके लिए better hooks नहीं लिखेगा। यह आपके designer के साथ creative briefs पर negotiate नहीं करेगा।
जो यह करेगा वह है आपके ad operation में सबसे महंगे 24-to-48-hour decisions — एक ad पर budget जलाते रहना है या नहीं इसके बारे में decisions जिसका CTR collapse हो रहा है — को आपके सोते समय बनाना। यह Ads Manager खोलने और जो आप पाएँगे उसकी डर के सुबह के ritual को बदल देगा। यह आपको 7 AM पर आपके phone पर एक single number देगा जो आपको बताता है कि relax करें या laptop खोलें।
Meta पर $1,000 प्रति माह खर्च करने वाले एक solo operator के लिए, यह wasted budget को इतना बचाता है कि खुद के लिए दस गुना भुगतान करता है। पाँच clients में $50,000 प्रति माह manage करने वाली एक agency के लिए, यह एक junior media buyer के बीच का अंतर है जो दो clients manage कर सकता है और एक जो छह manage कर सकता है। Leverage spend के साथ scales करता है।
जिन agents को हम जानते हैं जो इसे consistently करते हैं — thresholds set करते हैं, उन पर trust करते हैं, script को overnight pause करने देते हैं, केवल flagged warnings पर हस्तक्षेप करते हैं — वो उन लोगों से बेहतर perform करते हैं जो manually manage करते हैं। एक small margin से नहीं। एक ही creative, एक ही budget, एक ही audience पर 30 से 50 प्रतिशत better ROAS से, क्योंकि bad ads जल्दी मरते हैं और budget जल्दी survivors में बहता है।
emax.studio पर एक free 90-second scan के माध्यम से अपनी marketing assets चलाएँ और देखें कि आपके funnel में bottleneck वास्तव में कहाँ है। यह free है, कोई signup आवश्यक नहीं है, और full report दो मिनट से कम में वापस आती है।
अपने AI वीडियो रील बनाने के लिए तैयार हैं?
5 मुफ़्त क्रेडिट। क्रेडिट कार्ड की आवश्यकता नहीं।
मुफ़्त में शुरू करें