Scheduled Triggers: Your Agents Now Run on a Clock
Until now, every Macha agent was reactive. Something happened — a ticket was created, a customer messaged, a webhook fired — and an agent woke up to handle it. That covers most of support, but it leaves a whole class of work uncovered: the jobs that aren't triggered by an event at all, just by time. The 9 a.m. summary. The Monday report. The hourly check for a spike. Nobody filed a ticket to ask for those; they just need to happen, on schedule, forever.
As of the April 9, 2026 release, they can. Macha's scheduled triggers let you put any agent on a clock — hourly, daily, or a custom cron expression — and it runs on its own, pulls live data from the tools you've connected, takes actions, and reports back. No ticket required. No human kicking it off. This is the difference between an agent that answers and an agent that shows up to work every morning whether or not you do.
This post covers what scheduled triggers do, how the cron model works, the guardrails that keep a clock-driven agent from running away, and the handful of recurring jobs they're genuinely good at — plus where you should not reach for them.
What a scheduled trigger actually is
A trigger is the thing that decides when an agent runs. Macha already had event triggers — Zendesk and Freshdesk ticket events, Slack mentions and DMs, and universal custom webhooks. A scheduled trigger is a new kind of trigger keyed on the clock instead of an event. You attach it to an agent, give it a recurrence, and from then on Macha fires that agent on schedule.
Under the hood it's a standard cron model. A scheduled trigger runs on a recurring interval — pick a friendly preset (hourly, daily) or write a five-field cron expression for anything more specific. The five fields are minute, hour, day-of-month, month, day-of-week, so 0 9 1 reads as "minute 0, hour 9, every day-of-month, every month, day-of-week 1 (Monday)" — i.e. 9:00 a.m. every Monday. If you've ever scheduled a backup or a report, this is the exact mental model, now pointed at an AI agent.
The important part is what the agent does when it fires. A scheduled run is a full agent run: it has its instructions, its model, its connected tools, and its knowledge sources. So "run every morning" isn't just a reminder — it's "every morning, go query Zendesk for yesterday's tickets, compute the numbers, and post them to Slack." The clock is the trigger; the agent is still the worker.
The guardrails (the boring part that matters)
A clock-driven agent that loops or fails silently is worse than no automation at all — it quietly burns credits or, worse, quietly stops and nobody notices. Macha ships scheduled triggers with guardrails baked in, and they're worth understanding before you build one.
| Guardrail | Value | Why it exists |
|---|---|---|
| Polling loop | 60 seconds | Macha checks for due schedules every minute, so a "9:00" job fires within the minute — you don't need sub-minute precision. |
| Minimum interval | 1 hour | The fastest a scheduled trigger can run is once an hour. Anything that needs to react faster than that should be an event trigger, not a scheduled one. |
| Daily cap | 24 runs/day | A hard ceiling per trigger, so a misconfigured schedule can't fire hundreds of times. |
| Concurrency | 3 per org | At most three scheduled runs execute at once for an organization, so a bunch of 9 a.m. jobs queue instead of stampeding your connected tools. |
| Auto-disable | 5 consecutive failures | If a trigger fails five times in a row, Macha disables it and emails you — a broken job stops costing credits instead of retrying forever. |
| Stale lock cleanup | 30 minutes | If a run hangs, its lock is released after 30 minutes so the schedule can recover on its own. |
Two of these deserve emphasis. The 1-hour minimum is a deliberate design line: scheduled triggers are for periodic work, not real-time work. If you want an agent to respond the instant a VIP ticket lands, that's an event trigger (new-ticket and ticket-updated triggers already do this); scheduled triggers are for the report that runs at 9, not the alert that has to fire at 9:01.
The auto-disable-on-failure behavior is the one that separates a toy scheduler from a production one. A scheduled agent that depends on a Zendesk token that later expires shouldn't keep firing into the void — it should stop and tell you. Five strikes and it's paused, with an email so a dead automation surfaces as a notification instead of a mystery.
What scheduled agents are genuinely good at
The pattern that pays off is always the same: pull live data on a cadence, turn it into something a human reads, deliver it where they already look. Here are the recurring jobs that fit scheduled triggers cleanly, drawn straight from how teams use them.
Daily support summary in Slack
The flagship use. Every morning, an agent queries the previous day's Zendesk tickets — created, solved, average response time, CSAT, top topic — and posts a clean digest to a Slack channel. Leadership and the team start the day aligned on the numbers without anyone building a report.
📊 Daily Support Summary — March 4 • Tickets created: 47 · Tickets solved: 52 • First response time (avg): 12 min · Resolution time (avg): 2.4 hours • CSAT: 94% · Top topic: Order tracking (18 tickets) ✅ Cleared backlog — 5 more solved than created
That's two connected tools (Zendesk to read, Slack to write) and one schedule. See the full build in the daily support metrics summary use case. Because Macha sits on top of your helpdesk, the agent reads the same Zendesk you already run on — it isn't a separate analytics product you have to feed.
Weekly reports — to Slack or as a spreadsheet
Bump the cadence to 0 9 1 and you get the Monday report. A weekly refund report agent lists the last seven days of Stripe payments, totals the refunds, ranks the reasons, and posts the trend to Slack. Or push it further: a weekly support report agent uses the File Tools connector to generate an actual .xlsx with Summary, Tickets, Agent Performance, and Topics sheets and shares the file — the manual Monday-morning spreadsheet, gone.
Hourly trend / spike detection
Set the interval to hourly and an agent can watch for problems. A trending-topics agent compares the last couple of hours of ticket volume against the baseline and pings Slack when something spikes — "Login issues" up 300% in the last 2 hours, customers reporting a "502 error" — giving you an early warning before a trickle becomes a flood. This is the practical ceiling of the 1-hour minimum, and it's plenty for catching emerging issues.
Keeping knowledge in sync
Less glamorous, equally valuable: a scheduled agent that re-syncs knowledge sources on a cadence — Zendesk Help Center articles, Notion pages, Google Docs — so your other agents are always answering from current content instead of last month's. Stale knowledge is one of the quietest causes of bad AI answers; a nightly sync trigger is the cheap fix.
Where NOT to use a scheduled trigger
Scheduled triggers are a hammer, and not everything is a nail. Be honest about these:
- Anything that needs to be real-time. The 1-hour floor means a scheduled agent is the wrong tool for "reply the moment a ticket arrives" or "alert us within seconds of a failed payment." Those are event triggers — Stripe's
Payment Failedevent, Zendesk'sTicket Createdevent. Don't poll for what you can subscribe to. - High-frequency polling to fake real-time. Setting an hourly job to simulate live behavior wastes credits and still lags by up to an hour. If you're tempted to run something every hour to catch events fast, you want an event trigger instead.
- Jobs with no clear owner of the output. A daily summary nobody reads is just recurring credit spend. Point the output at a channel or person who acts on it, or don't schedule it.
- Work that legitimately runs longer than a tight window. Scheduled runs are for bounded jobs — pull, compute, deliver. A massive batch analysis belongs in Studies, Macha's bulk-analysis tool, not a recurring trigger.
And the cost reality: a scheduled run spends credits like any other agent run — credits are charged per AI action (0.5–9 by model, default GPT-5.4 Mini = 1), so a daily agent runs ~30 times a month and bills accordingly. That's usually trivial next to the human time it replaces, but it's real, and the 24-runs/day cap plus the 1-hour minimum exist precisely so a schedule can't surprise you.
Plans and limits
Scheduled triggers are a paid-plan feature. Professional includes 3 scheduled triggers; Enterprise includes 20. (Event triggers and custom webhooks aren't capped the same way — this limit is specifically about clock-driven jobs, which is the right place to put a ceiling since each one runs unattended.) Exact plan inclusions are on the pricing page, and you can build and test the whole flow during a 7-day free trial, no credit card required.
FAQ
What schedules can a Macha agent run on? Friendly presets (hourly, daily) or a custom five-field cron expression for anything specific — for example 0 9 1 runs at 9:00 a.m. every Monday. The minimum interval is once per hour.
How fast does a scheduled trigger fire? Macha polls for due schedules every 60 seconds, so a job set for 9:00 runs within that minute. For anything that must react faster than hourly, use an event trigger instead.
What happens if a scheduled agent keeps failing? After five consecutive failures, Macha auto-disables the trigger and emails you, so a broken job stops spending credits instead of retrying silently. Re-enable it once you've fixed the cause.
Do scheduled runs cost credits? Yes — a scheduled run is a normal agent run and spends credits per AI action by the model you choose. A daily job runs about 30 times a month. There's a hard 24-runs/day cap per trigger.
Which plans include scheduled triggers? Professional includes 3, Enterprise includes 20. See the pricing page for current details.
Is this a replacement for my helpdesk's automations? No. Macha's scheduled agents run on top of the helpdesk you already use (Zendesk, Freshdesk, and more) — they read from and write back into it (and Slack, Stripe, Notion, Google), rather than replacing your native triggers and SLAs.
Put an agent on the clock
If there's a report you build by hand every Monday, a number you copy into Slack every morning, or a knowledge sync you keep forgetting, that's a scheduled trigger waiting to happen. Start a 7-day free trial, no credit card required, connect your helpdesk, build the agent once, and give it a cadence — then read the triggers docs for the full setup. The work still gets done; you just stop being the one who remembers to do it.
Written by Abbas (Customer Support & AI, Macha) · Reviewed by Ankeet Guha (Co-founder & CTO) · Published 2026-06-24 · Last updated 2026-06-24.
Resolve tickets automatically with AI agents
Macha's AI agents work on top of the help desk you already use — no code.
Shopify
Stripe
Slack
Notion
Google Workspace
Confluence

