Compare

Iterable monitoring options compared

Iterable gives you three ways to monitor what your workflows are doing. Native workflow analytics show what Iterable dispatched. Data-warehouse exports let you query raw events. Receive-side monitoring confirms what actually arrived. Each approach catches different failure modes.

The three approaches

Where each monitoring layer looks

1

Native workflow metrics

The analytics dashboard inside Iterable. Tracks sends, opens, clicks, conversions per workflow. Real-time, no setup. Blind to triggers that stop firing, suppression rules that silently block every user, or messages that leave Iterable but never arrive.

2

Data-warehouse export

Raw event streams piped to your warehouse. Lets you write custom queries for timing drift, volume drops, suppression pattern changes. Catches more than native dashboards, but still reports what Iterable saw, not what the inbox received.

3

Receive-side monitoring

A test identity inside each workflow that confirms arrival, timing, and rendering from the inbox perspective. Catches sends that left Iterable but broke in transit, workflows that stopped triggering, and timing drift that warehouse queries might miss if you do not know where to look.

Native workflow analytics

What Iterable's built-in metrics tell you

The workflow summary in Iterable shows sends, opens, clicks, and conversions for messages that entered the workflow. If a user qualifies for the trigger, the platform dispatches the message, and the receiving server accepts it, Iterable logs a successful send. The metric increments.

This works for campaign performance. It does not work for detecting silent sends. A silent send is a workflow that should have fired but did not, or a message that Iterable dispatched but the inbox never received. Native metrics only track what Iterable dispatched. If the workflow trigger itself stops firing, or if a new suppression rule blocks every eligible user, the send count stays at zero and the dashboard shows no error. The absence of activity looks identical to a workflow with no eligible users.

I have seen this pattern twice in production. The first was a broadcaster's Saturday-morning newsletter that failed to send for the first hour of the send window. The platform reported success. The inbox stayed empty. The send metric ticked up on schedule, but the messages were stuck in a queue somewhere between Iterable and the mailbox provider. By the time the delay surfaced, the send window had already passed and half the audience had moved on.

The second was a post-purchase workflow that stopped firing after a CDP field rename. The workflow trigger depended on an event property that no longer existed. Iterable logged zero sends because zero users qualified. The native dashboard showed a clean zero with no error flag. The absence looked like a quiet weekend, not a broken integration.

When native metrics are enough

If you are running promotional campaigns where timing tolerance is loose and the send volume is high enough that a drop would be visible in the dashboard, native metrics give you what you need. You can spot a campaign that underperformed by comparing the send count to your historical baseline.

For low-volume transactional workflows, or for workflows where the commercial cost of a missed send is high, native metrics leave a gap. The gap is the difference between what Iterable dispatched and what the inbox actually received.

Data-warehouse export

What warehouse queries add

A data-warehouse export gives you raw event data. You write SQL queries to track send volume over time, spot timing drift, flag suppression pattern changes, or compare current performance to a historical baseline. The flexibility is higher than native dashboards. The visibility is still limited to what Iterable logged.

A warehouse export catches things that do not surface in the workflow summary. If a workflow's average send time shifts by twenty minutes over three weeks, a weekly query will flag it. If a suppression rule starts blocking ten percent more users than last month, the raw event count will show the change even if the workflow summary does not.

The limitation is the same as native metrics. The warehouse only knows what Iterable reported. If Iterable logs a successful send and the message gets stuck in a relay queue, or if it arrives in the spam folder instead of the inbox, the warehouse export will not tell you. The event stream records what left the platform, not what the recipient saw.

When warehouse exports are worth the build

If you already have a warehouse and a team that can write the queries, exporting Iterable's event stream is a low-friction way to add custom alerting for volume drops, timing drift, or suppression changes. The build cost is a few hours. The value depends on how tightly you can define the normal range for each workflow.

The gap that warehouse queries do not close is the inbox-side gap. You can track what Iterable dispatched, but you cannot confirm that it arrived, rendered correctly, or landed in the inbox instead of spam. That requires a receive-side check.

Receive-side monitoring

What inbox-side checks catch

A receive-side monitor seeds a test identity into each workflow and watches the inbox for the expected message. If the message arrives on time, the monitor stays quiet. If it arrives late, duplicates, or does not arrive at all, the monitor alerts within minutes.

This is the only monitoring layer that catches the inbox-side failures. A workflow that stops firing, a message that Iterable dispatched but a relay queue dropped, a send that landed in spam instead of inbox, or a merge tag that broke rendering. All of these leave a clean trace in Iterable's analytics and all of them break the customer experience.

The setup is straightforward. You add a monitored email address to the workflow as if it were a real subscriber. The monitor polls the inbox on a schedule that matches the workflow's expected timing. If the message does not arrive within the window, the alert fires. For high-frequency workflows, the polling interval can be as tight as five minutes. For daily or weekly workflows, hourly checks are usually enough.

The timing nuance most teams miss

Late arrival in the first thirty minutes of a send window is almost always a scheduling or timezone issue, not a genuine breakage. If a workflow is scheduled to fire at 09:00 UTC and the message arrives at 09:22, the delay is usually a queue backlog or a time-zone mismatch in the workflow configuration. The message is late, but the workflow itself is functioning.

A receive-side monitor running in heartbeat mode catches the more serious failure. Heartbeat mode expects a send within a specific window every day, or every week, or every hour. If the window closes and no message arrived, the monitor alerts. This is how you catch the scenario where the symptom is not an error event in Iterable, but the complete absence of the expected send.

When receive-side monitoring justifies the cost

If the workflow carries commercial risk, regulatory requirements, or high brand exposure, receive-side monitoring is the only layer that gives you inbox-level confirmation. Order confirmations, password resets, booking confirmations, account security alerts. These are the workflows where a missed send has a measurable cost and where catching the failure before the customer does is worth the monitor.

For promotional workflows where timing tolerance is loose and the commercial impact of a single missed send is low, native metrics or warehouse queries are usually enough. The decision comes down to the ratio between the cost of the failure and the cost of running the monitor.

Side by side

What each approach detects

Failure mode Native metrics Warehouse export Receive-side
Workflow trigger stops firing No Partial Yes
Suppression rule blocks all users No Partial Yes
Message dispatched but never arrives No No Yes
Send timing drifts over time No Yes Yes
Merge tag breaks rendering No No Yes
Message lands in spam instead of inbox No No Partial
Send volume drops below baseline Partial Yes Yes

How to choose

Match the monitoring layer to the risk

Start with native metrics for all workflows. Add warehouse exports if you have the infrastructure and the team to write custom queries. Add receive-side monitoring for the workflows where a missed send has a measurable cost. The three layers are complements, not substitutes. A mature Iterable program runs all three.

Where Telltide fits

Receive-side monitoring for Iterable workflows

Telltide is the receive-side layer. It runs alongside Iterable's native analytics and your warehouse exports. The setup is one monitor per workflow, an expected arrival window, and an alert channel. The monitor polls the inbox and alerts within minutes if the expected message does not arrive. The concepts behind it are covered in the Iterable monitoring guide and the silent send definition.