Appearance
budget_pacing_platform_v2
Compares quarterly budget allocations per ad platform against actual spend from unified_performance_v2. Calculates pacing ratios, projections, and remaining budget.
View Details
| Property | Value |
|---|---|
| Full path | paidteam-data-warehouse.customer_ads_suse.budget_pacing_platform_v2 |
| Architecture | CTEs for quarter dates + actual spend aggregation, joined with budget final table |
| Budget source | suse_budget_platform_final_v2 (from Google Sheets via external table) |
| Planned source | suse_budget_planned_final_v2 (granular media plan budgets) |
| Spend source | unified_performance_v2 (all 6 platforms) |
| Created | 2026-02-08 |
Columns
| Column | Type | Description |
|---|---|---|
Platform | STRING | Ad platform (e.g., "Google Ads", "LinkedIn Ads") |
Quarter | STRING | Fiscal quarter (e.g., "2026-Q1") |
QuarterStart | DATE | First day of the quarter |
QuarterEnd | DATE | Last day of the quarter |
QuarterBudget | FLOAT64 | Total budget for this platform/quarter in USD |
PlannedBudget | FLOAT64 | Sum of planned/forecasted spend from media plan (0 if no plan) |
UnplannedMargin | FLOAT64 | QuarterBudget - PlannedBudget (unallocated budget) |
PctPlanned | FLOAT64 | PlannedBudget / QuarterBudget (0.0 to 1.0) |
QTD_Spend | FLOAT64 | Quarter-to-date actual spend |
MTD_Spend | FLOAT64 | Month-to-date actual spend |
BudgetRemaining | FLOAT64 | QuarterBudget - QTD_Spend |
DaysElapsed | INT64 | Days elapsed in the quarter so far |
DaysInQuarter | INT64 | Total days in the quarter |
DaysRemaining | INT64 | Days left in the quarter |
PctBudgetConsumed | FLOAT64 | QTD_Spend / QuarterBudget (0.0 to 1.0) |
PctTimeElapsed | FLOAT64 | DaysElapsed / DaysInQuarter (0.0 to 1.0) |
PacingRatio | FLOAT64 | PctBudgetConsumed / PctTimeElapsed. 1.0 = on pace, >1 = overspending, <1 = underspending |
ProjectedSpend | FLOAT64 | Linear projection of total quarter spend based on daily rate |
ProjectedVariance | FLOAT64 | ProjectedSpend - QuarterBudget. Negative = projected under budget |
How Pacing Ratio Works
PacingRatio = (% of budget spent) / (% of time elapsed)
Example: 8 days into a 89-day quarter
- Google Ads: spent $29K of $500K budget
- PctBudgetConsumed = 29K / 500K = 5.8%
- PctTimeElapsed = 8 / 89 = 9.0%
- PacingRatio = 5.8% / 9.0% = 0.65 (underspending)| Pacing Ratio | Meaning |
|---|---|
| 1.0 | Perfectly on pace |
| > 1.0 | Overspending (burning budget too fast) |
| 0.8 - 1.0 | Slightly under, acceptable |
| < 0.8 | Significantly underspending |
| 0.0 | No spend at all |
Sample Query
sql
-- Current quarter platform pacing
SELECT
Platform,
ROUND(QuarterBudget, 0) AS Budget,
ROUND(QTD_Spend, 0) AS Spent,
ROUND(PctBudgetConsumed * 100, 1) AS PctSpent,
ROUND(PacingRatio, 2) AS Pacing,
ROUND(ProjectedVariance, 0) AS Variance
FROM `paidteam-data-warehouse.customer_ads_suse.budget_pacing_platform_v2`
WHERE Quarter = '2026-Q2'
ORDER BY PacingRatio DESC;Notes
- SUSE fiscal year starts November 1. Quarter dates come from
suse_budget_config_v2. - Budget data is maintained in a Google Sheet and refreshed daily via external tables + scheduled query.
- All division uses
SAFE_DIVIDEto handle zero/null edge cases (e.g., day 0 of a quarter).