A budget rule raises a campaign's daily budget once, then finds the same qualifying condition at the next check. If that condition stays true, the rule may keep increasing the budget before the team has enough new performance data to judge the first change. Testing the first adjustment alone misses this cumulative exposure.
Quick take: Ad automation cooldown testing should replay several evaluations, including checks during the cooldown, a proposed change beyond the budget cap, and the next-day reset. Calculate each adjustment from an explicit starting value and record why each action executes or waits. A cooldown controls timing; a cap bounds the setting; a reset restores a baseline. Test all three together before enabling repeated changes.
This worksheet covers repeated execution within the broader ad automation rule validation process. Its numbers are hypothetical test inputs, not recommended budget increases, bid changes, or performance thresholds.
Separate evaluation frequency, cooldown and limits
Frequent checks can help a team notice a condition sooner. They also create more opportunities to repeat an action while the underlying evidence remains unchanged. Choose the evaluation cadence and cooldown separately, based on how quickly the relevant data becomes useful and how much change the business can tolerate.
XMP's Smart Assistant automation overview documents a standard shortest evaluation interval of 15 minutes and 5-minute enterprise configurations. It also lists cooldowns, minimum and maximum bid and budget limits, percentage and absolute adjustments, and a daily budget reset. These are documented capabilities; the worksheet below is an editorial testing method.
| Control | What it governs | What to verify |
|---|---|---|
| Evaluation interval | How often the rule checks conditions. | Actual configured cadence; 5 minutes is an enterprise configuration, not the standard minimum. |
| Cooldown | When another action becomes eligible. | No interval, X hours, 1 natural day or X natural days; confirm the timer's starting event and scope. |
| Minimum and maximum | The permitted bid or budget setting. | Whether an adjustment crossing a boundary is skipped or limited to that boundary. |
| Daily budget reset | Restoration to the original budget next day. | What counts as original, which timezone applies, and how reset interacts with cooldown. |
| Channel and object | Whether the requested action is supported. | Budget and bid changes at the selected campaign or ad set level, subject to platform constraints. |
The overview does not specify every execution detail in the last column. Resolve those details for the configuration being tested instead of treating a spreadsheet assumption as XMP behavior. A maximum budget setting also does not, by itself, establish an account-wide actual-spend guarantee.

Build a worksheet that preserves state between checks
Use one row per evaluation, including evaluations that make no change. Otherwise, a sheet containing only successful actions cannot show whether the cooldown actually prevented repetition. Begin with a manual replay; use a separately authorized controlled test to compare the model with actual behavior.
First record the product, connected account, channel, object ID, currency, timezone, rule version, condition and metric window. If the selected objects are uncertain, complete rule scope testing before modeling their repeated changes.
| Worksheet field | How to fill it |
|---|---|
| Evaluation time and signal | Write the timestamp, condition result and source-data timestamp. Mark missing or stale data explicitly. |
| Value before the check | Carry forward the previous confirmed value; record any intervening reset or manual edit. |
| Last action and next eligibility | Record the relevant action timestamp and calculate eligibility using the verified cooldown semantics. |
| Proposed value | Apply the percentage or absolute change to the stated calculation base. |
| Boundary decision | Compare the proposal with the floor or ceiling and record the expected handling. |
| Expected and observed result | Keep separate columns for the model and the confirmed setting or action result. Leave observation marked untested until checked. |
| Reason and evidence | Record executed, condition false, cooling down, boundary blocked, failed or unresolved; attach the supporting record. |
Do not carry a proposed value into the next row merely because an action was submitted. If success is uncertain, reconcile the actual setting before continuing the replay. This prevents a failed write from becoming an imaginary increase in the worksheet.
Replay percentage budget increases and bid reductions
Hypothetical budget example: Start with a USD 1,000 daily budget setting, increase it by 20% of the current setting, evaluate every 15 minutes, use a one-hour cooldown and set a USD 1,500 ceiling. Assume the condition remains true, actions complete immediately, and cooldown starts after a successful change. For this model only, skip any proposal above the ceiling. These assumptions must be checked against actual behavior.
Without a cooldown or cap, three successful increases produce USD 1,000 → 1,200 → 1,440 → 1,728. That is a calculated 72.8% increase over the initial setting, rather than 60%, because each percentage applies to a larger base. By comparison, three absolute USD 200 increases produce USD 1,600. Neither sequence predicts actual spend or revenue.
| Time, UTC | Budget before | Decision | Budget after |
|---|---|---|---|
| 09:00 | USD 1,000 | Eligible: 1,000 × 1.20 = 1,200. | USD 1,200 |
| 09:15 | USD 1,200 | Cooldown active; no change. | USD 1,200 |
| 09:30 | USD 1,200 | Cooldown active; no change. | USD 1,200 |
| 09:45 | USD 1,200 | Cooldown active; no change. | USD 1,200 |
| 10:00 | USD 1,200 | Eligible: 1,200 × 1.20 = 1,440. | USD 1,440 |
| 10:15–10:45 | USD 1,440 | Three checks remain inside cooldown. | USD 1,440 |
| 11:00 | USD 1,440 | Proposal is USD 1,728; skip under this model's ceiling policy. | USD 1,440 |
The grouped row saves space here; keep individual evaluation rows in your working sheet. If the verified implementation instead limits the crossing adjustment to the ceiling, the expected 11:00 result would be USD 1,500. Record which behavior applies, then test a further eligible check to establish that the setting cannot continue rising.
Changing this model to a 5-minute evaluation interval adds checks inside the same one-hour cooldown. Under the stated assumptions, it does not permit another increase before 10:00. Evaluation frequency is also separate from data freshness: more checks do not create more conversions or mature a revenue cohort.
Apply the same arithmetic to a bid floor
Hypothetical bid example: A USD 2.00 bid reduced by 15% of its current value becomes USD 1.70, then USD 1.445, then USD 1.22825 before rounding. With a hypothetical USD 1.40 floor, the third proposal crosses the boundary. Verify whether it is skipped or limited to USD 1.40, and use the channel's actual precision rules when calculating expected accepted values.
Repeated reductions can restrict delivery even when each individual change seems modest. A successful floor test proves that the setting stays bounded; it does not prove the reduction is commercially sensible.
Test the moments when further adjustment should stop
Automated budget rule limits need tests at the boundary, not only comfortably below it. Repeat the same condition while changing one input at a time, so an unexpected result has a clear explanation.
| Boundary case | Expected evidence |
|---|---|
| Just before and exactly at cooldown expiry | No early action; the expiry check matches the verified eligibility rule. |
| Proposal equals the ceiling | The exact-boundary result matches the configured policy and accepted precision. |
| Proposal exceeds the ceiling | The confirmed value stays within the ceiling, with skip or limiting behavior explained. |
| Already at the ceiling or floor | A further eligible evaluation produces no movement beyond the boundary. |
| Condition becomes false after cooldown | Eligibility alone does not cause an adjustment. |
| Action fails or confirmation is delayed | The next calculation uses a reconciled value; retry and cooldown behavior are understood. |
| Manual edit or another rule intervenes | The changed value and responsible actor are visible before the next calculation. |
Replay the day boundary separately
A next-day reset can reduce tomorrow's starting budget while leaving today's repeated increases untouched. It can also allow the same climb to happen again the next day if the condition remains true. Include both the reset and the first evaluation afterward.
For a separate hypothetical test, place a successful adjustment at 23:45 UTC, specify a reset to USD 1,000 at 00:00 UTC, and retain a one-hour cooldown. If reset preserves that timer, another increase remains ineligible until 00:45. If reset changes eligibility, the sequence differs. The supplied overview establishes next-day restoration, but does not resolve this interaction or promise a midnight execution time; verify both before writing an expected result.
Likewise, test a natural-day cooldown separately from an elapsed-hours cooldown. Record the actual day boundary and timezone rather than treating “1 natural day” as automatically equivalent to 24 hours.

A single-rule replay cannot establish how several rules interact. If another rule changes the same object, extend the test to combined execution order and shared limits before rollout. Keep that conflict review separate from the basic cooldown calculation.
Use the replay to choose the next action
Finish with a recorded decision, supported by the completed worksheet:
- Validate measurement and state. Confirm the condition's source, window and freshness, plus the actual bid or budget after each attempted action.
- Check maturity and sample sufficiency. Ensure the performance evidence can support another adjustment. An expired cooldown is permission to reevaluate, not evidence that the last change worked.
- Connect exposure with business value. Compare the modeled budget path with authorized funding and the campaign's downstream value. Keep budget settings, actual spend and revenue separate.
- Choose the next action. Correct unexplained timing or boundary behavior, defer changes when evidence is immature, or proceed to a bounded rollout when the replay and controlled observations agree.
Keep the rule version, assumptions, expected sequence and observations together. A useful test establishes both when the rule can act again and when repeated execution must stop changing the setting.