קל לארגן דפים בעזרת אוספים
אפשר לשמור ולסווג תוכן על סמך ההעדפות שלך.
בדף הזה מפורטות מגבלות שונות בסקריפטים של Google Ads שכדאי להכיר. המגבלות האלה יכולות להשתנות בכל שלב ללא אזהרה, ולכן חשוב לוודא שהסקריפטים שלכם גמישים וכוללים טיפול בשגיאות.
מגבלות זמן הביצוע
סקריפטים של Google Ads
סקריפטים של Google Ads בחשבונות מפרסמים יכולים לפעול למשך 30 דקות לכל היותר, ולאחר מכן הם יבוטלו. כל השינויים שבוצעו לפני ביטול הסקריפט יחולו.
סקריפטים של Ad Manager
בדרך כלל, סקריפטים ב-Ads Manager יכולים לפעול עד 30 דקות, ואז הם יבוטלו. עם זאת, אם סקריפט ב-Ads Manager משתמש בשיטה executeInParallel כדי לעבד חשבונות במקביל, ומציין שיטת קריאה חוזרת, הוא יכול לפעול עד מקסימום 60 דקות לפני שהוא מבוטל. הדבר מודגם באיור הבא, שבו processAccount היא הפונקציה המקבילה ו-allFinished היא שיטת הקריאה החוזרת כשמפעילים את executeInParallel.
כל השינויים שבוצעו לפני ביטול הסקריפט יחולו.
מגבלות על ישויות
סקריפטים של חשבונות Google Ads
כברירת מחדל, iterator יחיד יחזיר לכל היותר 50,000 תוצאות. אפשר לשנות את זה על ידי קריאה ל-withLimit() בבורר.
סלקטור אחד יכול לטפל ב-10,000 מזהים לכל היותר ב-selector.withIds().
אם מציינים 10,000 מזהים או יותר, הפונקציה selector.get() תחזיר שגיאת זמן ריצה. באופן דומה, אפשר לציין תנאי Id IN [LIST] עם רשימה של מזהים
הערך 10,000 יגרום לשגיאת זמן ריצה.
הפלט של הרישום ביומן יקוצץ ב-100KB. אם זה יקרה, תירשם אזהרה ביומן.
סקריפטים של חשבונות ניהול
לכל חשבון שעובר עיבוד על ידי סקריפט של חשבון ניהול ב-Google Ads יש מכסה משלו, כפי שמפורט למעלה.
כשמשתמשים בשיטה executeInParallel, סקריפט יכול לעבד עד 50 חשבונות.
השיטה processAccount מ-executeInParallel יכולה להחזיר עד 10MB של נתונים.
מגבלות על העלאה בכמות גדולה
גודל קובץ ההעלאה מוגבל ל-50MB ולמיליון שורות, והמערכת תדחה אותו אם הוא חורג מהמגבלות האלה.
הזמן הקצוב לתפוגה של עבודת העלאה הוא שעתיים, והעיבוד של הנתונים שנותרו בקובץ שהועלה יופסק.
פרוטוקול OAuth2 משמש לאישור סקריפטים. בכל חשבון אפשר להשתמש בעד 250 סקריפטים מורשים. מעבר למגבלה הזו, אחד מהסקריפטים שאושרו בעבר יבוטל. זהו רק מצב זמני, ואפשר לתת הרשאה מחדש לסקריפט בפעם הבאה שפותחים אותו.
אם אתם נתקלים במגבלה הזו לעיתים קרובות, כדאי לשקול שימוש בכמה חשבונות משתמשים כדי לאשר קבוצות שונות של סקריפטים.
קמפיינים של מודעות וידאו וקמפיינים של שופינג
הכלי לבחירת קמפיינים רגילים (AdsApp.campaigns().get()) יסנן את התוצאות ויציג רק קמפיינים מסוג וידאו ושופינג. במקום זאת, אפשר להשתמש בבוררי הקמפיינים הייעודיים:
[null,null,["עדכון אחרון: 2025-08-27 (שעון UTC)."],[[["\u003cp\u003eGoogle Ads scripts have an execution time limit of 30 minutes, while Ads Manager scripts can run for up to 60 minutes when using \u003ccode\u003eexecuteInParallel\u003c/code\u003e with a callback method.\u003c/p\u003e\n"],["\u003cp\u003eScripts for advertiser accounts have entity limits, including a 50,000 result limit per iterator, a 10,000 ID limit per selector, and a 100Kb logging output limit.\u003c/p\u003e\n"],["\u003cp\u003eAds Manager scripts have additional limits for processing accounts in parallel, with a maximum of 50 accounts and a 10MB data return limit for the \u003ccode\u003eprocessAccount\u003c/code\u003e method.\u003c/p\u003e\n"],["\u003cp\u003eBulk uploads are restricted to files under 50MB and one million rows, with a two-hour timeout for processing.\u003c/p\u003e\n"],["\u003cp\u003eEach Google Ads account can authorize up to 250 scripts, and exceeding this limit will temporarily deauthorize older scripts.\u003c/p\u003e\n"]]],[],null,["# Limits\n\nThis page outlines various limits and limitations in Google Ads scripts that you\nshould be aware of. These limits can change at any time without warning, so\nensure that your scripts are flexible and contain error handling.\n\nExecution time limits\n---------------------\n\n### Google Ads scripts\n\nGoogle Ads scripts for advertiser accounts can execute for a **maximum of 30\nminutes**, after which they will be cancelled. All of the changes made\nbefore the script was cancelled will be applied.\n\n### Ads Manager scripts\n\nAds Manager scripts can normally execute for a **maximum of 30 minutes** after\nwhich they will be cancelled. However, if an Ads Manager script uses the\n[`executeInParallel`](/google-ads/scripts/docs/reference/adsmanagerapp/adsmanagerapp_managedaccountselector#executeInParallel_2)\nmethod to process accounts in parallel, and specifies a callback method, then it\ncan execute up to a **maximum of 60 minutes** before being cancelled. This is\nillustrated in the following figure, where `processAccount` is the parallel\nfunction, and `allFinished` is the callback method when calling\n[`executeInParallel`](/google-ads/scripts/docs/reference/adsmanagerapp/adsmanagerapp_managedaccountselector#executeInParallel_2).\n\nAll of the changes made before the script was cancelled will be applied.\n\nEntity limits\n-------------\n\n| **Note:** [Reports](/google-ads/scripts/docs/features/reports) are not subject to any entity limits.\n\n### Scripts of Google Ads accounts\n\n- A single **iterator** will default to at most 50,000 results returned. You\n can modify this by calling `withLimit()` on the selector.\n\n- A single **selector** can handle at most 10,000 IDs in `selector.withIds()`.\n If 10,000 or more IDs are specified, `selector.get()` will throw a runtime\n error. Similarly, specifying an `Id IN [LIST]` condition with a list of IDs\n\n \u003e 10,000 will result in a runtime error.\n- Logging output will be truncated at 100Kb. A warning will be logged if that\n happens.\n\n### Scripts of manager accounts\n\n- Each account processed by an Ads Manager script gets its own quota as [listed\n above](#scripts_of_google_ads_accounts).\n\n- When using the `executeInParallel` method, a script can process up to **50**\n accounts.\n\n- The `processAccount` method from `executeInParallel` can return up to\n **10MB** of data.\n\nBulk upload limits\n------------------\n\n- The upload file is limited to 50MB and one million rows, and will be rejected\n upon submission if it exceeds these limits.\n\n- An upload job times out after two hours and the job will stop processing any\n remaining data from the uploaded file.\n\nQuotas for Google services\n--------------------------\n\nThe underlying Google Apps Script services impose daily quotas and hard limits\non some features. See a list of these\n[quotas and accompanying exception messages](/apps-script/guides/services/quotas).\n| **Key Point:** To get around the \"Exceeded maximum execution time\" error, you can reschedule your script under multiple user accounts to extend the script's quota.\n\nAuthorized scripts\n------------------\n\nOAuth2 is used to authorize scripts. Each account has a limit of **250**\nauthorized scripts. Beyond that limit, one of the previously authorized\nscripts will be deauthorized. This is only temporary, and the script can be\nreauthorized the next time it is opened.\n\nIf you are frequently running into this limit, you should consider using\nmultiple user accounts to authorize different sets of scripts.\n\nVideo and shopping campaigns\n----------------------------\n\nThe standard campaign selector (`AdsApp.campaigns().get()`) will filter\nout [video](//support.google.com/google-ads/answer/2375497) and\n[shopping](//support.google.com/google-ads/answer/3455481) campaigns\nfrom the results. Use the dedicated campaign selectors instead:\n\n- [`videoCampaignSelector.get()`](/google-ads/scripts/docs/reference/adsapp/adsapp_videocampaignselector)\n- [`shoppingCampaignSelector.get()`](/google-ads/scripts/docs/reference/adsapp/adsapp_shoppingcampaignselector)"]]