Inside the Spend Concentration Engine
Every metric in your Spend Concentration audit is derived from documented formulas. This page explains the Gini Index calculation, overfed/starved thresholds, rebalance matrix logic, and budget transfer simulation — so you can verify every verdict.
Jump to metric
Data Sources
read-only OAuth · no campaign changes everAll data is read via Google Ads API and GA4. Derived intelligence tables are pre-computed in our pipeline before your audit runs.
Google Ads API — Campaign Performance
google_ads_campaign_performance
Campaign spend, ROAS, conversions, impression share metrics, bidding strategy type per day
Google Ads API — Change Events
google_ads_change_events
Budget change timestamps and operations for identifying concentration shift triggers
Derived Intelligence — Campaign Maturity
campaign_maturity_daily
Learning stage, readiness score, cum_spend, is_protected flag per campaign
Derived Intelligence — Campaign Intelligence
campaign_intelligence_daily
Pacing score, forecast spend, efficiency tier, and recommended actions
Gini Index
The mathematical measure of budget inequality
The standard Gini coefficient applied to campaign spend. All campaigns are ranked by spend ascending, then the coefficient is calculated using the formula below. A score of 0 means every campaign gets equal budget. A score of 1 means all budget goes to one campaign. Most healthy accounts fall between 0.3 and 0.6.
Why this matters: The Gini Index turns a subjective feeling ('this account seems top-heavy') into a precise, trackable number. You can measure it weekly to see if your rebalancing efforts are working, and compare across accounts to identify which ones need attention first.
In plain English: Think of it like income inequality for your campaigns. If one campaign is a billionaire and the rest are broke, the Gini Index is close to 1. If all campaigns get roughly equal budget, it's close to 0. Above 0.6 means your account is dangerously concentrated.
Overfed Campaign Detection
Campaigns consuming more than 2x the average spend
Average spend across all campaigns is calculated, then any campaign exceeding 2x this average is classified as 'overfed'. Being overfed isn't automatically bad — if ROAS is strong, the concentration is justified. But overfed + below-average ROAS = the algorithm is coasting on momentum.
Why this matters: Overfed campaigns create fragility. If your top campaign absorbs 60% of budget and its performance degrades by 20%, your entire account drops by 12% — and there's no backup campaign to absorb the slack.
In plain English: We calculate the average spend across all campaigns, then flag any campaign that spends more than double the average. These are your budget hogs. If they're also your best performers, fine. If not, they're consuming budget that would work harder elsewhere.
Starved Campaign Detection
Efficient campaigns denied the budget to scale
Campaigns with CPA below account average AND search_budget_lost_impression_share above 5%. These campaigns have proven conversion efficiency but can't show ads for all qualifying searches because their daily budget runs out. This is the highest-leverage budget action: more budget here = more conversions at proven CPA.
Why this matters: Starved campaigns are the audit's biggest opportunity. Unlike CUT recommendations (which save money), SCALE recommendations for starved campaigns actively generate new revenue. Every percentage point of recovered impression share translates to proportional conversion volume.
In plain English: We find campaigns that convert cheaply but run out of budget before the day ends. These are your best performers being throttled. Giving them more budget is the safest possible investment — you already know they can convert.
Rebalance Matrix (SCALE / CUT / HOLD / UNDERFUND)
The decision framework for every campaign
Every campaign gets one of four verdicts based on two inputs: ROAS relative to account-weighted average, and budget constraint level (impression share lost). The weighted average uses roas × conversions to prevent low-volume campaigns from skewing the benchmark. The matrix turns a complex portfolio decision into four clear action categories.
Why this matters: Most managers rebalance by gut feel — cutting campaigns that 'look bad' and scaling campaigns that 'look good'. The matrix encodes specific thresholds so the same criteria are applied consistently, and the maturity guard prevents premature cuts.
In plain English: Every campaign gets a grade: SCALE (outperforming and budget-limited — give more money), CUT (underperforming and taking too much — reduce), UNDERFUND (decent performance, severely budget-limited), or HOLD (everything else). The rules are simple and consistent.
Budget Transfer Simulation
What happens if you move the money from CUT to SCALE?
A simulation that takes total cuttable spend (from CUT campaigns), multiplies by the weighted average ROAS of SCALE campaigns, and projects the conversion value gain. The net lift subtracts what CUT campaigns currently generate — giving the true incremental gain, not just the gross projection.
Why this matters: This is the business case for rebalancing. Without a projected outcome, budget reallocation feels risky. The simulation gives stakeholders a concrete number: 'Moving $X from losers to winners projects $Y in additional conversion value — a net lift of $Z.'
In plain English: We take the money you'd save from cutting underperformers, calculate what it would earn if given to your top performers (at their current efficiency), and subtract what the underperformers currently generate. The result is your projected net gain from rebalancing.
Maturity Rebalance Guard
Campaigns you must NOT cut yet
From campaign_maturity_daily: campaigns in EXPLORATION or CALIBRATION stages. These campaigns have not accumulated enough conversion data to be fairly evaluated. Cutting them wastes the learning investment already made — the algorithm was partway through building a model, and cutting resets to zero.
Why this matters: Without this guard, the rebalance matrix would recommend cutting campaigns that are still learning. That's like firing an employee during their training week. The guard adds a critical safety layer: 'This campaign is in learning mode — protect its budget until readiness exceeds 80.'
In plain English: Some campaigns are still learning — the algorithm hasn't had enough time or data to perform at its best. We flag these campaigns as 'protected' so you don't accidentally cut them before they've had a fair chance. Wait until they graduate to the exploitation stage before making budget decisions.
Weekly Gini Trend
Is concentration improving or worsening over time?
Gini Index calculated per week using the same formula, plotted as a trend. A rising line means the algorithm is progressively consolidating spend into fewer campaigns. A declining line means rebalancing efforts are working. The direction matters more than the absolute value.
Why this matters: A single Gini snapshot is useful but doesn't tell you if the problem is getting better or worse. The weekly trend reveals whether your budget structure is drifting toward concentration (algorithm-driven consolidation) or diversity (your rebalancing working).
In plain English: We calculate the Gini Index every week and plot it over time. A line going up means the account is getting more concentrated (worse). A line going down means your budget is getting more evenly distributed (better). The direction tells you if your changes are working.
Proprietary notice: The methodology, scoring models, waste classification logic, and recovery projections are proprietary to ClickCatalyst Digital and provided for informational purposes only. Results are subject to standard market volatility. Recovery projections are estimates, not guarantees. Contact us within 14 days if any metric appears inaccurate.
Also worth reading
How to Read Your Spend Concentration Report →
Every section explained with exact action steps
See these metrics applied to your account
Run My Free Spend Concentration Audit