Two trigger types, one quality test

Every automation trigger is either time-based or event-based. Both require the same check.

Time-based triggers

The automation fires when a duration has passed.

Three days after a proposal is sent. Fourteen days since the last recorded activity. Seven days before a contract renewal date. Time-based triggers are often the simplest to define, the condition is a calculation, not a field lookup, and they are easy to test in isolation.

The most common failure is the reference point. Three days after what, exactly? If the "proposal sent" date is not consistently recorded, the trigger has no reliable anchor. The trigger condition is valid; the data it depends on is not.

Event-based triggers

The automation fires when something changes.

A deal moves to a new stage. A form is submitted. A contact is created. A status field is updated. Event-based triggers fire in response to a specific change in the system rather than time passing.

Event-based triggers are more exposed to data quality problems. If the triggering event can happen in multiple ways, a stage change through the UI, through an import, or through another automation, some paths may bypass the trigger entirely. Understanding all the ways the event can occur is part of defining the trigger correctly.

The quality test

Can you write the condition as a rule without judgment?

"When a deal moves to Proposal Sent and the contact has an email address on file" is a trigger. It is written as a rule, testable, unambiguous.

"When a prospect seems ready for follow-up" is not a trigger. It describes a judgment call that still needs to be made before the automation can fire. Turning it into a trigger means identifying what observable conditions actually correlate with that judgment, stage, last activity date, owner, and encoding those instead.

Field completeness

The trigger is only as reliable as the data beneath it.

An automation trigger is only as reliable as the fields it reads. If a required field is often missing, the automation will behave inconsistently even when the tool is behaving exactly as configured.

Before building, inspect the completion and meaning of every field the trigger depends on. If the source data cannot support a dependable rule, fix the data path before adding automation.

Make a misfire traceable

The fix for a rule you stopped trusting is knowing which rule fired.

The failure above is a team quietly losing trust in an automation. The way back is not a smarter trigger, it is a traceable one: every firing attributed to the rule that caused it, and new rules off until someone turns them on.

Attribute every firing. Record which rule fired and why, so a wrong result points at one rule you can fix or disable, not at "the automation" you switch off entirely.

Default new rules to off. A rule that ships enabled fires on day one, before anyone has watched it. Opt-in with a safe default lets a new trigger prove itself on a few real cases before it acts unattended.

Prefer an authoritative field over a guess. When the trigger reads a category, take it from an explicit field the system owns, not by inferring it from free text. An exact key that exists beats a fuzzy guess that is usually right.

Where ambiguous triggers go

An ambiguous trigger does not fail visibly. It produces inconsistent output until the team stops trusting it.

A trigger on a poorly defined condition does not crash, it runs, sometimes right, sometimes not, until the team stops trusting it and does the work by hand. Fixing it up front costs an hour; finding it six months in costs the rebuild plus the cleanup.