Inside the AI Max Signal Engine
Every metric in your AI Max Signal audit is derived from a documented formula and a specific BigQuery table. This page explains the exact calculation logic, thresholds, and data sources — so you know precisely what each number means before acting on it.
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
Click, view-through, cross-device conversions, cost, revenue, and all_conversions per campaign per day
Google Ads API — Search Terms
google_ads_search_terms_historical
Search term match types, cost, conversions for machine vs human trust score calculation
Google Ads API — Ads
google_ads_ads
Ad-level performance with added_by_google_ads flag for creative trust score
Google Ads API — AI Max Combinations
google_ads_ai_max_combinations
Search term + AI-generated headline pairs with impressions and CPA
Google Ads API — AI Max Landing Pages
google_ads_ai_max_landing_pages
Dynamic landing page routing with CPA and ROAS per page
Google Ads API — Ad Groups
google_ads_ad_groups
Target CPA settings and disable_search_term_matching flags
Google Ads API — Ads Conversions
google_ads_ads_conversions
Conversion action names, categories, click vs modeled split per action
Google Ads API — Audience Performance
google_ads_audience_performance
Audience list spend, CPA, and signal quality per segment
Derived Intelligence — Signal Health
signal_health_intelligence_daily
Pre-calculated attribution drift, signal_health_score, and signal_status per campaign
Derived Intelligence — Campaign Maturity
campaign_maturity_daily
Learning stage, readiness score, marginal ROAS, volatility per campaign
Derived Intelligence — Campaign Intelligence
campaign_intelligence_daily
Pacing score, budget forecasts, recommended actions per campaign
Derived Intelligence — Waste Management
waste_management_intelligence_daily
Pre-classified waste categories, subcategories, recovery potential, and priority action list
Derived Intelligence — Search Terms
search_terms_intelligence_daily
Match quality scores and demand type classification for harvesting vs expansion analysis
Derived Intelligence — Geographic
geographic_intelligence_daily
Market classification, location scores, and geographic recommendations
Derived Intelligence — Temporal
temporal_intelligence_daily
Peak hour analysis, hourly consistency, and temporal recommendations
Signal Health Score
The single number that tells you if your conversion data is trustworthy
A composite 0–100 score per campaign from the signal_health_intelligence_daily table. It combines attribution drift (how far Ads and GA4 disagree), conversion density (conversions per click), and signal status classification. The account-level KPI averages this across all campaigns weighted equally.
Why this matters: Smart Bidding treats every conversion signal as equally reliable. If 40% of your campaigns have corrupted signal, the algorithm makes 40% of its bid decisions on data it shouldn't trust — and the damage spreads to healthy campaigns through shared audience models.
In plain English: We compare what Google Ads reports as conversions against what GA4 independently confirms. The bigger the gap, the lower the score. Below 60 means the algorithm is making decisions on data it shouldn't trust.
Attribution Drift
The percentage gap between what Google Ads claims and what GA4 confirms
Calculated from signal_health_intelligence_daily by comparing ads_conversions_30d against ga4_conversions_30d at the campaign level. The absolute value of the difference is divided by the larger of the two numbers to normalize across campaign sizes. The signal_status field is pre-classified in the pipeline.
Why this matters: A 30% drift means for every 10 conversions Ads claims, GA4 only sees 7. The bidding algorithm uses the Ads number — so it thinks this campaign converts 43% more often than it actually does, and bids accordingly.
In plain English: We take the conversion count from Google Ads and the conversion count from GA4, calculate the percentage difference, and classify each campaign as HEALTHY (under 15%), WARNING (15–40%), or CRITICAL (over 40%).
Conversion Signal Composition
Breaking total conversions into click, view-through, cross-device, and modeled
Four UNION ALL queries against google_ads_campaign_performance summing conversions, view_through_conversions, cross_device_conversions, and the remainder as Modeled/Other. The click-attributed slice is the only segment the algorithm can directly verify — everything else is an estimate.
Why this matters: If view-through and modeled conversions make up 50%+ of your total, your ROAS and CPA numbers are significantly more optimistic than reality. The algorithm optimizes on all conversion types equally — it cannot distinguish hard evidence from statistical inference.
In plain English: We count four types of conversions separately: users who clicked then bought (strongest signal), users who saw your ad but didn't click (weaker), users who clicked on their phone but bought on desktop (modeled), and everything else Google estimates. The bigger your click-attributed slice, the more trustworthy your data.
Training Data Pollution (Modeled %)
How much of each campaign's data is estimated rather than observed
Per campaign from google_ads_campaign_performance: the share of all_conversions that are not click-attributed. Campaigns exceeding 50% are classified as HIGH POLLUTION — the bidding algorithm is learning from statistical inference rather than observed behavior.
Why this matters: When the algorithm trains on polluted data, it learns wrong patterns — bidding aggressively on audiences that appear to convert but only do so in Google's model, not in reality. Each polluted campaign doesn't just waste its own budget; it corrupts shared audience signals across the account.
In plain English: We calculate what percentage of each campaign's conversions are estimated by Google rather than directly observed from a click. Above 50% means the campaign is teaching the algorithm more fiction than fact.
Algorithm Maturity Stages
Where each campaign sits in the learning lifecycle
From campaign_maturity_daily using the latest calculation_date. Each campaign is classified into CALIBRATION (establishing baselines), EXPLORATION (testing audiences), EXPLOITATION (performing efficiently), or DEGRADATION (declining performance). The spend distribution across stages reveals account-level readiness.
Why this matters: Campaigns in EXPLOITATION are ready to scale — budget increases produce predictable returns. Campaigns in EXPLORATION are burning money to learn. Campaigns in DEGRADATION are actively getting worse. Knowing the distribution tells you whether to invest, hold, or restructure.
In plain English: Each campaign is placed into one of four stages based on how much conversion data it has accumulated versus how much it needs. Think of it like a student: Calibration = first week of school, Exploration = studying, Exploitation = acing exams, Degradation = performance slipping.
Machine vs Human Trust Score
The definitive CPA comparison between AI expansion and manual control
From google_ads_search_terms_historical, splitting all traffic by search_term_match_type: EXACT/PHRASE = Human Control, BROAD/AUTO/SMART_MATCH = Machine Control. Brand terms are excluded from both buckets using a keyword filter to ensure a fair comparison. CPA is calculated per bucket.
Why this matters: This is the clearest answer to 'should I trust the algorithm?'. If machine-controlled CPA is 2x higher than human-controlled, the algorithm is finding volume at a premium that may not be justified. If they're equal or machine wins, the algorithm earns its expansion.
In plain English: We split all your search traffic into two groups: keywords you chose (exact and phrase match) vs keywords Google chose (broad and auto match). We remove brand terms from both groups so neither has an unfair advantage. Then we compare CPA. Higher AI CPA = the algorithm is over-expanding into low-intent queries.
Creative Trust Score (AI vs Manual Copy)
Should you leave Automatically Created Assets turned on?
From google_ads_ads, splitting by added_by_google_ads flag: TRUE = Machine Generated Copy, FALSE = Human Written Copy. Compares ROAS, CPA, CTR, and CVR between the two groups. This directly answers whether Google's auto-created headlines and descriptions outperform yours.
Why this matters: Google enables Automatically Created Assets by default in many campaign types. If your manual copy outperforms AI copy, leaving ACA on actively degrades performance — the algorithm serves worse ads because it has the option to.
In plain English: We separate ads Google wrote automatically from ads you wrote manually, then compare conversion rates and ROAS. If your manual ads win, you should turn off auto-created assets and control your own messaging.
Waste Exposure by Category
Classifying the AI's failures into actionable buckets
From waste_management_intelligence_daily using the latest calculation_date. Waste is pre-classified into categories (QUERY, EXPLORATION, CREATIVE, TEMPORAL, GEOGRAPHIC) and subcategories. Each category requires a completely different fix — query waste needs negative keywords, exploration waste needs tighter targeting, creative waste needs asset refresh.
Why this matters: Knowing the total waste is useless without knowing the type. A $10,000 waste figure could be 80% query waste (fixable in 10 minutes with negatives) or 80% exploration waste (requires structural campaign changes over weeks). The category determines the fix path and timeline.
In plain English: We group all wasted spend into categories based on WHY it was wasted: bad search terms, algorithm exploration that didn't pay off, weak creative assets, wrong time of day, or wrong geography. Each category has a different fix — this tells you which fix to start with.
Override Action Checklist
The highest-ROI feature — sorted hit-list of immediate fixes
From waste_management_intelligence_daily filtered to action_priority ≤ 3 (Priority 1, 2, and 3 = immediate action required). Each row is a specific entity (search term, campaign, ad) with the entity_type, waste_subcategory as the issue, exact wasted_spend amount, and the recommended_action to take.
Why this matters: This is not a chart or a score — it's an operational task list. Each row is something you can do right now in Google Ads to recover specific dollars. Working top-down through this list is the single highest-ROI activity available in the audit.
In plain English: We rank every wasteful search term, campaign, and ad by how much money it's losing, and give you the exact action to take for each one. Start from the top — each fix takes 2–5 minutes, and the cumulative savings add up fast.
Demand Harvesting vs Expansion
Is the AI finding new customers or capturing existing demand?
From search_terms_intelligence_daily, splitting by match_type and match_quality_score. EXACT match with 100% quality = Core/Brand Harvesting (user searched for exactly what you targeted). BROAD/AUTO = Generic/New Demand Expansion. PHRASE = Mixed.
Why this matters: An account that's 90% harvesting looks efficient (low CPA, high ROAS) but isn't growing. The algorithm captures people who already know your brand. True growth comes from the expansion slice — finding users who didn't know you yet.
In plain English: We classify your conversions into two buckets: people who were already looking for you (harvesting) and people the algorithm found who weren't (expansion). If harvesting dominates, your account is efficient but not growing — you're paying Google to intercept traffic you already own.
Campaign Readiness Scores
Which campaigns are safe to scale and which need protection
From campaign_maturity_daily: readiness_score (0–100) based on accumulated conversions vs the MVS (Minimum Viable Spend) target. Campaigns in EXPLOITATION with high readiness are green-lit for scaling. Early-stage campaigns with low readiness need budget protection — cutting them wastes the learning investment.
Why this matters: Scaling a campaign that hasn't accumulated enough data is like stepping on the gas before the engine warms up. You'll spend more but the algorithm can't optimize efficiently. Readiness score tells you exactly when it's safe to push budget.
In plain English: Each campaign gets a score based on how many conversions it has accumulated versus how many it statistically needs to bid confidently. High score = safe to give more budget. Low score = let it learn, don't cut it yet.
Pacing & Volatility Matrix
Is the algorithm spending smoothly or in erratic bursts?
Joins campaign_intelligence_daily (pacing data) with campaign_maturity_daily (volatility metric). Pacing score measures whether the campaign is on track for its monthly budget. Volatility measures how erratically daily spend oscillates. High volatility + overpacing = the algorithm is burning through budget in unpredictable bursts.
Why this matters: Erratic pacing makes performance unpredictable and planning impossible. The algorithm alternates between aggressive bidding and pulling back, which means your daily CPA swings wildly. Stable pacing is a prerequisite for reliable scaling.
In plain English: We check whether each campaign is spending its budget smoothly throughout the month (good pacing) or burning through it in unpredictable bursts (bad volatility). High volatility means you can't trust yesterday's CPA to predict tomorrow's.
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 AI Max Signal Report →
Every section explained with exact action steps
See these metrics applied to your account
Run My Free AI Max Signal Audit