Portfolio Status Digest
Weekly one-screen view of your rental portfolio + market activity.
What it does
Reads three Sheets (Tenants, RentRoll, ListingAlerts) and produces:
UNITS
Total: 12
Occupied: 11 (92% occupancy)
Vacating: 1
Vacant: 0
RENT
Past due: 2 unit(s), $4,200 outstanding
14d late 3B Maria Santos $2,100
5d late 7A Tom Lee $2,100
LEASE RENEWALS
Next 30 days: 2
Next 60 days: 1
Next 90 days: 3
Urgent (30-day):
1A Alice Chen ends 2026-06-08
4C Brian Murphy ends 2026-06-05
MARKET ACTIVITY
MLS alerts this week: 47
High-urgency alerts:
- 1245 Oak: price drop $25K (4.8%) on a buyer-tracked property
- 800 Pine: new listing matching saved search "3bd/2ba under $500K"
Companion workflows
lease-renewal-remindermaintains theTenantsSheet (or you do, by hand).rent-payment-trackerreads theRentRollSheet (or you maintain it).listing-change-watcherpopulates theListingAlertsSheet (skip if you're not running it).
If you don't have one of the companion workflows running, the corresponding section just shows zeros.
Pattern
Strict hybrid — three google_workspace reads, one runtimeenv compute, one message send. 5 tasks, each with a single purpose. No outbound action; just internal reporting.
Setup
1. Sheets
If you have the companion workflows running, the Sheets already exist. Otherwise create them with the headers documented in those workflows' READMEs.
2. Credential + placeholders
Replace in workflow.yaml:
- <<GOOGLE_WORKSPACE_CREDENTIAL>>
- <<TENANTS_SHEET_ID>>, <<RENT_ROLL_SHEET_ID>>, <<LISTING_ALERTS_SHEET_ID>>
- <<OWNER_PUBLISHER>>
3. Schedule
Weekly. Suggested: Monday 6:30 AM.