Outcome. A ticket status change to "Waiting on contact" only counts as a real response when an actual outbound reply went to the customer, so a custom SLA-adjacent timestamp never gets stamped off the back of an internal note alone.
flowchart TD
A[Ticket status becomes Waiting on contact] --> B[Custom code: check most recent engagement type]
B --> C{Genuine outbound reply found?}
C -->|yes| D[Stamp last_outbound_reply_time]
C -->|no, note only| E[Alert owner, create task, add to review list]

When to use it, when not to
- UseUse it if your portal runs any custom timestamp or reporting
workflow that reacts to
Ticket statusbecomingWaiting on contact(for example tickets-sla-020) and a rep occasionally moves a ticket into that status right after logging an internal note, without actually sending a reply. - UseUse it when the team has been burned at least once by a ticket that looked "responded to" in reporting because the status flipped, when in fact no message reached the customer.
- SkipDo not use it as a claim that HubSpot's native SLA pause (tickets-sla-020) is itself unreliable; the native pause is tied to the pipeline's status category mapping, not to this workflow, and keeps working with or without this fiche (check in your portal: confirm current behavior, HubSpot has adjusted conversation-to-ticket status automation before).
- SkipDo not use it if your team never manually changes ticket status by hand, for example if status only ever changes automatically when a reply is sent or received through the connected inbox; in that case there is nothing for this workflow to catch.
or the tickets and sla pack, 39 EUR
One-time, excl. VAT. 30-day refund, no questions asked. Founding prices until 31 October, then 199 and 59 EUR. Includes every spec added later, up to the full 500, and the one-click installer on the full library. Building on client portals? The agency licence at 449 EUR covers unlimited client portals.





