📗 This content is the Smart Bidding Ninja Script user manual, the same one the script writes in the «Manual» tab of its spreadsheet. Here you can search it, listen to it, highlight it and save it to favourites.
These are limitations imposed by the Google Ads Scripts API, not by the design of the script. They are listed here for transparency:
| Limitation | Detail |
|---|---|
| Shopping + TARGET_ROAS | The target cannot be changed via Scripts. The script only manages the budget on these campaigns. |
| Display + TARGET_ROAS (pure) | Same case. Even if you change the strategy in the UI, internally the API still classifies them as untouchable. |
| Display + TARGET_CPA | The target CPA cannot be changed. Only the budget is managed. |
| Demand Gen (managed) | There is no AdsApp selector for Demand Gen: they are read through GAQL and WRITTEN through the API (mutate). Since v43.48 the script includes them in Day-Stats like any other campaign and adjusts their BUDGET (all of them) and their tCPA/tROAS TARGET (the Max Conversions/Value ones, budget only). It respects TEST mode: with TEST=ON it applies no changes (it only records them in the Log). |
| Video with Smart Bidding | Migrated to Demand Gen. No longer applicable. |
| Ad group level | The script works at campaign level. Target/budget adjustments are not applied to individual ad groups. |
💡 If you find a campaign that you think should behave differently, check the internal type first in column B of Day-Stats. Google sometimes keeps internal classifications that differ from the ones in the UI.