Scheduled flow alerts
A scheduled flow is a flow that runs on a daily schedule instead of firing the moment an event happens. It's the way to alert on the absence of something — a contact whose site activity dropped to zero, an account that went quiet — where there's no event to react to because nothing happened.
Scheduled flows are built in the same place as every other flow: Flows → New Flow.
Why a separate trigger type
Hydra's normal flows are event-triggered. They fire the instant something happens — a ticket is created, a lead is captured, a visitor fires a custom event. Each of those has a moment in time Hydra can hang a trigger on.
"A contact's activity dropped to zero" has no such moment. Nothing fired. The signal is that an expected event didn't arrive. There's nothing for an event trigger to listen for, so Hydra evaluates these conditions on a daily schedule instead — it wakes up once a day, counts each subject's recent activity, and runs the flow for anyone who's below the line.
That daily cadence is the defining characteristic of a scheduled flow, and it's the thing most people misjudge. A scheduled flow is not real-time. More on that under Cadence below.
Building one
You don't pick "scheduled trigger" from a menu. You describe the alert you want in plain language in the Flow Designer, and it recognizes the time-based or threshold-based intent and proposes a scheduled flow.
- Go to Flows and click New Flow.
- In the design chat, describe the alert. For example:
- "Email me when a contact's site activity drops below 10 for a day"
- "Alert me when an account has zero activity"
- The Designer recognizes the threshold-over-a-window intent and proposes a scheduled flow — subject (contact or account), the activity condition, who to email.
- Review the plan and refine it in the conversation if the subject, threshold, or scope isn't right.
- Click Deploy to Production.
Once deployed, the flow runs on the daily schedule. There's nothing else to start.
These flows skip the in-designer dry test
Event flows run a dry-run simulation in the design chat before you deploy — they replay a real data snapshot through the trigger. Scheduled flows don't, because there's no event to simulate. There's no "a contact dropped below 10" snapshot to replay; the condition only resolves against real activity counts on the daily run. So a scheduled flow goes straight from plan to deploy, and the first time it actually evaluates is the next morning's run.
The anatomy of a scheduled flow
Subject
A scheduled flow runs over a population, once per day. The subject is either:
- Every contact in the workspace, or
- Every account in the workspace.
The flow evaluates its condition against each subject independently and runs the action for every one that matches.
The activity threshold
For each subject, Hydra counts that subject's site-activity events over a trailing window — by default, the previous one day — and you set a condition on that count.
The count includes pageviews, clicks, custom events, and identifies — every tracked site-activity event except session markers (session-start / session-end). Examples of conditions you can set:
activity is 0— the subject had no tracked activity at all.activity is below 10— the subject had fewer than 10 events.
Scoping to avoid noise
A bare activity is 0 flow fires for every quiet contact or account in the workspace — which, on most days, is a lot of them, and most of them you don't care about. To keep the alert useful, add conditions that narrow the population to the subjects you actually want to watch:
- Only contacts at a certain lifecycle stage.
- One specific account.
- Any other condition the Designer supports on the subject record.
Scoping is the difference between a useful "an account I care about went quiet" alert and an inbox full of noise about contacts who were never active to begin with.
Who gets emailed
The send-email action on a scheduled flow can route to:
- The contact — when the alert is meant for the subject themselves.
- The account owner — when you want the owner pinged about their own account going quiet.
- A fixed address — most commonly your own ops inbox. This is the everyday "email me when…" case.
Cadence — it's a daily check, not instant
This is the part to internalize before you build one.
Scheduled flows are evaluated once per day, against the previous complete day. "The moment activity drops" really means "the next morning, if the prior day was below the threshold." If a contact goes silent on Tuesday, you'll find out on Wednesday's run — not Tuesday afternoon.
Two consequences fall out of that:
- Today is never counted. The current day is always partial, and a partial day would read as artificially low and fire false alerts every morning. So the window evaluates the most recent complete day, not the day in progress.
- It's not a replacement for real-time triggers. If you need to react the instant something happens, that's an event flow, not a scheduled one. Scheduled flows exist specifically for the cases where there's no event to react to.
What gets counted as activity
A subject's activity count only includes site-activity events that Hydra actually tracked. That requires two things to be true:
- The Hydra widget with Site Activity tracking is installed on the page the subject visited. Site Activity is per-widget and off by default — see Site Activity privacy controls.
- The visitor was stitched to the contact or account record, so the events land on that subject rather than on an anonymous visitor.
A contact who's never been tracked — no widget on their pages, or never stitched to a known record — reads as zero activity every day. That's worth keeping in mind when you scope an activity is 0 flow: it'll match every untracked contact in the population, not just the ones who used to be active and went quiet. Narrow the scope to subjects you know are tracked, or the alert will fire on contacts who were never measurable in the first place.
Frequently asked questions
How quickly will I hear about a drop in activity? The morning after. Scheduled flows evaluate once per day against the previous complete day, so a drop that happens today surfaces on tomorrow's run. They are not real-time — if you need an instant reaction, that's an event-triggered flow, not a scheduled one.
Why does a contact who's clearly been active show up as zero? Almost always because their activity isn't being tracked. Site Activity is per-widget and off by default, and events only land on a contact once the visitor is stitched to that contact's record. If the widget on their pages doesn't have tracking on, or the visitor was never identified, the contact reads as zero regardless of what they actually did. See Site Activity tracking.
Does today's activity count? No. The window evaluates the most recent complete day. The current day is always partial, so counting it would make every subject look artificially quiet and fire false alerts each morning. Today is excluded by design.
Can I run a scheduled flow more than once a day? No. Scheduled flows are evaluated once per day. The daily cadence is fixed — there's no hourly or real-time option for this trigger type. If you need finer timing, model the signal as a custom event from your site code and use an event-triggered flow instead (see Trigger flows from visitor events).
Why did my activity is 0 flow email me about hundreds of contacts?
Because a bare zero-activity condition matches every quiet contact in the workspace — including every contact that was never tracked. Add scoping conditions (a lifecycle stage, a specific account, or another filter on the subject) so the flow only watches the subjects you actually care about.
Can a scheduled flow watch a single account instead of all of them? Yes. Set the subject to accounts and add a condition that pins it to the one account you want — then the daily run only evaluates and alerts on that account. The same approach works for narrowing contacts to a lifecycle stage or any other condition the Designer supports.
Why didn't the design chat run a test before I deployed? Scheduled flows skip the in-designer dry test that event flows run. There's no event to simulate — the condition only resolves against real activity counts on the daily run. The flow goes straight from plan to deploy, and its first real evaluation is the next scheduled run.
