Daily Addepar cash drift sweep to Sheets and Slack
Every weekday morning, catch households with idle cash or drawdown risk, log them to a shared Google Sheet, and post a summary to your Slack ops channel.
Every weekday at 8am, sweep Addepar for cash-position drift across every household I cover and drop the exceptions into a Google Sheet plus a Slack summary for our ops channel. This is a deterministic pipeline — list, filter by threshold, dedupe, append, notify — so build it as a code workflow with a cron trigger.
Expose these as workflow inputs so ops can tune them without editing the workflow: the saved Addepar portfolio view slug or ID, the upper cash-dollar threshold (idle-cash trigger), the lower cash-dollar threshold (drawdown-risk trigger), the target Google Sheet ID and tab name, and the target Slack channel ID.
Step 1: pull the data. Call Addepar's Get Portfolio View Results against the configured saved view. The view is set up in Addepar to include columns for Household, Advisor, Total Value, Cash Balance, and Cash Percent.
Step 2: drop closed or dormant entities. Call Addepar's List Entities for the households referenced in the view results and skip any whose status is closed or dormant before applying thresholds.
Step 3: filter deterministically. For each remaining household, flag it as an idle-cash exception if Cash Balance is above the upper dollar threshold, or as a drawdown-risk exception if Cash Balance is below the lower dollar threshold. Households inside the band produce no row.
Step 4: dedupe against yesterday's rows. Before writing, use Google Sheets Get Values to read the existing rows in the log tab. If a household already has a row from yesterday with the same Reason (idle cash vs drawdown risk), skip it. If the reason flipped, or the household is new, write a fresh row.
Step 5: append. Use Google Sheets Append Values to add one row per new exception with columns Household, Advisor, Cash Balance, Cash Percent, Reason (idle cash or drawdown risk), and Date (today, in the firm's time zone).
Step 6: post one summary. Use Slack Send a Message to post a single message to the configured ops channel with the count of idle-cash exceptions, the count of drawdown-risk exceptions, the total households scanned, and a link to the Google Sheet. If there are zero new exceptions, still post a short 'all clear' message so the team knows the sweep ran.
Keep everything human-readable: format dollar amounts with commas, format percentages to one decimal, and never post per-household details in Slack — the sheet is the source of truth, Slack is just the heads-up.
Additional information
What does this prompt do?
- Runs a saved Addepar portfolio view each weekday at 8am and pulls cash balances for every household you cover
- Flags households whose cash sits above the upper dollar threshold (idle cash) or below the lower dollar threshold (drawdown risk)
- Appends each new exception to a Google Sheet with household, advisor, cash balance, cash percent, reason, and date
- Skips closed or dormant households and avoids re-flagging the same household unless its state actually changed
- Posts a single Slack summary to your ops channel with counts by exception type and a link back to the sheet
What do I need to use this?
- An Addepar login with access to the household portfolios you cover
- A saved Addepar portfolio view whose columns include household, advisor, total value, cash balance, and cash percent
- A Google Sheet you can edit, with a header row for household, advisor, cash balance, cash percent, reason, and date
- A Slack workspace and the channel where the ops team should see the daily summary
How can I customize it?
- Set your upper and lower cash thresholds (in dollars) so the workflow matches your firm's cash-management policy
- Swap in a different saved portfolio view, Google Sheet, or Slack channel without touching the underlying logic
- Change the schedule (e.g. Monday only, or twice a day) or the wording of the Slack summary
Frequently asked questions
What counts as a cash-drift exception?
Will the same household get flagged in the sheet every single day?
What happens with closed or dormant households?
Does this touch client-facing communications?
Do we need to be on any specific Addepar plan?
Related templates
Stop chasing cash drift by hand.
Let the sweep run each morning so advisors can focus on client conversations, not spreadsheet reconciliation.