Morning-After Flow

SheetFlow Architecture - Forecast Accuracy Tracking

1
🌐
Google Ads API
Query yesterday's actual hourly spend (24 hours)
2
📊
SDLY Sheet
Capture forecast state before refresh (cutoff detection)
3
⚙️
Cutoff Logic
Hours < cutoff: Actual SDLY!C
Hours ≥ cutoff: SDLY!D × (1 + Δ%)
4
📋
Yesterday Sheet
Col C: SDLY Forecast (values)
Col D: Real Spend (values)
Cols E-F: Delta calculations
📈
L52W (H)
Forecast models:
L1HR, L3HR, L6HR, Cumulative
5
🗄️
Historical Log
Row 5: Auto-populates
Row 6+: Saved as values
→ ML Training Data
External API
Google Sheet
Processing Logic
Data Storage

⏰ Timing Window

11 PM
Yesterday ends
Data finalizing
6-9 AM
Morning window
Run workflow
~10 AM
SDLY refresh
Data lost
All Day
Today tracking
New data

📦 Data Written to Yesterday Sheet

Column C: SDLY Forecast

  • Range: C6:C29 (24 values)
  • Hours 0-16: Actual SDLY!C values
  • Hours 17-23: SDLY!D × (1 + cumChange%)
  • Written as VALUES (not formulas)

Column D: Real Spend

  • Range: D6:D29 (24 values)
  • Source: Google Ads API
  • Yesterday's actual hourly spend
  • Written as VALUES

Forecast Comparison (B35:B38)

  • B35: L1HR Forecast
  • B36: L3HR Forecast
  • B37: L6HR Forecast
  • B38: Cumulative Forecast

Historical Log Output

  • Row 5: Auto-populates (formulas)
  • Copy Row 5 → Paste VALUES → Row 6+
  • Each row = 1 day of accuracy data
  • Used for ML model training

🖥️ SheetFlow Dashboard

Checking status...

Click to run the morning-after workflow