Technical Documentation

Optimization Methodology

A deep dive into the algorithms, statistical models, and decision frameworks that power BidHelm's autonomous optimization engine.

1

Core Savings Calculation

How we calculate projected savings from optimization actions.

BidHelm calculates savings using a forward-projection model based on historical spend velocity. When we pause a wasteful keyword, we project how much it would have continued to waste.

Primary Savings Formula

S = Vspend x Tproj x Cconf

SProjected Savings ($)
VspendSpend Velocity ($/day)
TprojProjection Window
CconfConfidence (0-1)

Spend Velocity

Vspend = Σ Costi ÷ ndays

Where Cost_i is daily spend and n_days is the lookback window (typically 30 days).

Worked Example

A keyword spent $150 over 30 days with 0 conversions. BidHelm pauses it.

Vspend = $150 ÷ 30 = $5.00/day
Tproj = 30 days
Cconf = 0.85
S = $5.00 x 30 x 0.85 = $127.50 saved
2

ROAS Efficiency Scoring

Multi-factor scoring for campaign prioritization.

BidHelm uses a composite efficiency score to rank campaigns. This score weighs multiple performance factors with statistical normalization.

Composite Efficiency Score

E = ω1Rn + ω2Cn + ω3Vn

EEfficiency (0-100)
RnNormalized ROAS
CnNormalized CPA
VnVolume Factor

Min-Max Normalization

Xn = (X − Xmin) ÷ (Xmax − Xmin)

Ensures all metrics are on a 0-1 scale before applying weights.

45% — ROAS Weight

ROAS directly measures return on investment and carries the highest weight in the composite score.

35% — CPA Weight

Cost per acquisition captures cost efficiency, ensuring each conversion is achieved economically.

20% — Volume Weight

Volume factor ensures scale is not sacrificed when optimizing for efficiency metrics.

Why These Weights?

ROAS (45%) directly measures ROI. CPA (35%) captures cost efficiency. Volume (20%) ensures scale isn't sacrificed.

3

Anomaly Detection System

Statistical monitoring for performance deviations.

BidHelm continuously monitors performance using Z-score analysis to detect statistically significant deviations from baseline.

Z-Score Detection

Z = (X − μ) ÷ σ

ZStandard Score
XCurrent Value
μHistorical Mean
σStd Deviation
Z-ScoreStatusAction
Z > +2.0Above normalScale budget up
-2 ≤ Z ≤ +2Normal (95% CI)Continue monitoring
-3 ≤ Z < -2Moderate dropEnter Safe Mode
Z < -3.0CriticalPause + Alert

Conversion Rate Deviation

ΔCR = (CRnow − CRbase) ÷ CRbase x 100

ΔCR < -60% triggers Safe Mode. ΔCR < -80% triggers Critical Alert.

4

Dynamic Budget Allocation

Intelligent reallocation based on performance.

BidHelm uses a proportional allocation algorithm that redistributes budget from underperformers to top performers.

Budget Adjustment

Bnew = Bcur x (1 + δ x M)

BnewNew Budget
BcurCurrent Budget
δDirection (±1)
MMode Multiplier
10%

Conservative mode — minimal changes, maximum safety.

20%

Balanced mode — moderate adjustments for steady growth.

30%

Aggressive mode — maximum optimization velocity.

Budget Tier Classification

Classify budget tier

if (budget < $10) tier = "micro"

Apply tier constraints

micro: max_Δ = 10%, floor = $5

Calculate performance score

score = E (Section 2)

Apply bounded adjustment

B = clamp(B, min, max)
TierRangeMax ΔFloor
Micro$1-$1010%$5
Small$10-$10015%$10
Medium$100-$1K20%$50
Large$1K-$10K25%$100
Enterprise$10K+30%$500
5

Time-Decay Weighting

Prioritizing recent data in analysis.

Recent performance is more predictive. BidHelm applies exponential time-decay weighting to ensure recent signals carry more weight.

Exponential Decay

Wt = e−λt

WtWeight at time t
eEuler's (~2.718)
λDecay constant (0.1)
tDays ago

Time-Weighted Performance

Pw = Σ(Pt x Wt) ÷ Σ(Wt)

Yesterday = ~90% weight. 7 days = ~50%. 30 days = ~5%.

Decay Examples

Day 0: e-0 = 1.000 (100%)
Day 1: e-0.1 = 0.905 (90.5%)
Day 7: e-0.7 = 0.497 (49.7%)
Day 30: e-3 = 0.050 (5.0%)
6

Statistical Confidence

Ensuring decisions are data-backed.

BidHelm requires minimum sample sizes before taking action. This prevents over-optimization based on noise.

Minimum Sample Size

nmin = (Zα2 x p x (1 − p)) ÷ E2

Zα1.96 for 95% CI
pExpected proportion
EMargin of error
nminMin sample size

Confidence Factor Scaling

C = min(0.95, 0.5 + (n ÷ nt) x 0.45)

50% min for sparse data, scaling to 95% max for high-volume.

50%

Minimum confidence threshold for any optimization action.

95%

Maximum confidence cap to prevent overconfidence bias.

100+

Clicks target for full statistical significance.

7

Decision Thresholds

Configurable optimization triggers.

Evidence-based thresholds derived from millions of ad interactions. All configurable in your dashboard.

ActionTrigger Condition
Pause KeywordCost ≥ $25 AND Conv = 0
Pause (Alt)Clicks ≥ 100 AND Conv = 0
Scale UpROAS ≥ 400% AND Conv ≥ 5
Reduce BudgetROAS < 100% AND Cost ≥ $50
Add NegativeN-gram Cost ≥ $30, Conv = 0
Safe ModeΔCR ≤ -60%
Critical AlertΔCR ≤ -80% OR Z < -3

Optimization Frequency

BidHelm runs optimization cycles every 30 minutes. Each cycle evaluates campaigns, applies time-decay weighting, and executes changes within safety bounds.

8

Known Limitations

What we can and cannot guarantee.

Important Disclaimers

Savings projections are estimates based on historical patterns. Actual results depend on market conditions, competition, and campaign quality. Past performance does not equal future results.

Projection Limitations: Our calculations assume paused entities would continue spending at historical rates. Market dynamics could alter this.

Attribution Uncertainty: Some paused keywords might have eventually converted. We use 30-day lookback windows.

External Factors: BidHelm cannot account for website changes, landing page issues, pricing changes, or economic conditions.

Learning Periods: New campaigns need 2-4 weeks before algorithms reach full effectiveness.

No Guaranteed ROI: We track efficiency improvements but cannot guarantee specific outcomes. Results vary by industry.

Questions about our methodology?

Alex can find and eliminate that waste automatically.