Morning Setup Flow

SheetFlow Architecture - Initialize Today's Tracking

1
POST
/api/morning-setup
Initialize tracker for today's monitoring
|
2
API
SDLY Refresh
Query Google Ads: Today vs Same Day Last Year
SDLY
SDLY Sheet
C6:C29 = Today's hourly spend
D6:D29 = SDLY hourly spend
|
3
B2
Day of Week
SDLY!B2 = =TEXT(C2, "dddd")
Returns: "Sunday", "Monday", etc.
|
4
API
L52W Query
Last 365 days filtered by day
~52 weeks of historical data
24h
Hourly Aggregation
Sum cost by hour (0-23)
Calculate weekly averages
|
5
CFG
Config (D)
D60:D83 = 24 hourly cost totals
E59 = Date range note
Historical averages for forecasting
API Trigger
Google Ads API
Google Sheet
Data Processing
Logic/Formula

Morning Setup vs Morning Flow

Aspect Morning Setup Morning Flow
Purpose Initialize TODAY's tracking Capture YESTERDAY's accuracy
When to Run Start of day (anytime) 6-9 AM (before SDLY refresh)
Data Source Today vs Same Day Last Year Yesterday's actual spend
Output Config (D) hourly totals Yesterday sheet + Historical Log
API Endpoint /api/morning-setup /api/morning-flow

Data Flow Details

SDLY Refresh

  • Today: SDLY!C2 = current date
  • SDLY: SDLY!D2 = same day last year
  • Hourly: C6:C29 (today) vs D6:D29 (SDLY)
  • Change: F4 = cumulative % change

L52W Historical Query

  • Date range: Last 365 days (ending yesterday)
  • Filter: segments.day_of_week
  • Group by: segments.hour (0-23)
  • Result: ~52 data points per hour

Config (D) Output

  • Range: D60:D83 (24 cells)
  • Row 60 = Hour 0 total cost
  • Row 83 = Hour 23 total cost
  • E59 = Date range (e.g., "2023-12-25 to 2024-12-23")
  • Used for forecast calculations

Day of Week Formula

  • Cell: SDLY!B2
  • Formula: =TEXT(C2, "dddd")
  • Output: "Sunday", "Monday", etc.
  • Drives L52W filter selection

SheetFlow Dashboard

Ready to initialize

Click to initialize today's tracking (SDLY + L52W)