Variables
Replace each placeholder before you run the prompt.
{{portfolio_data}}Per-account: name, monthly budget, MTD spend, CPL, conversion volume, ROAS or close-rate.See attached CSV — 12 accounts, total $145K/mo budget.
{{constraints}}Hard constraints — total budget cap, min spend per account, accounts that cannot be cut.Total budget cannot increase. Account "Industrial-A" must keep $25K/mo for relationship reasons. No account below $5K/mo.
Prompt
Propose a budget reallocation across the portfolio below. Optimize for total return (revenue per ad dollar) within the stated constraints.
PORTFOLIO:
{{portfolio_data}}
CONSTRAINTS:
{{constraints}}
OUTPUT:
1. A reallocation table: per-account, current budget → proposed budget → delta (in $ and %).
2. Per-account justification (2–3 sentences each): why are you cutting / increasing / holding this account?
3. A top-line summary: total expected change in conversions / revenue if proposed allocation runs for 30 days.
4. Risk callouts: which accounts in the proposal have weak data (low conversion volume, recent strategy change, etc.) and need a smaller move.
Do NOT cut any account by more than 30% in one move unless the data is overwhelming.
Do NOT increase any account by more than 50% in one move — Smart Bidding can't absorb that without going off the rails.
Stay within constraints exactly. If constraints make optimal allocation impossible, flag it explicitly.Expected output shape
A reallocation table, per-account justifications, top-line projection, and risk callouts.
Why we wrote it
Budget reallocation is one of the highest-leverage things an agency lead can do, and most teams do it by intuition. This prompt forces explicit reasoning and risk gating.
How to use
- Open Claude or ChatGPT. The recommended model for this prompt is
claude-opus-4-7— opus when the prompt requires deep reasoning, sonnet for the rest. - Replace every
{{variable}}with content specific to your account. The examples above are starting points, not templates to ship as-is. - Paste the prompt and run.
- Read the output against the expected shape above. If the model produced a structurally different response, re-prompt rather than accept the drift.