A lead-routing workflow creates the CRM record, assigns the owner, and then fails while sending the internal alert. The run is red. Two business actions have already happened.
Retry the whole workflow without checking and the recovery can create a second lead, overwrite the assignment, or send another message. Ignore the failure and the sales team may never get the alert.
A failed automation run can leave completed work behind. The operator has to find out what happened before choosing the next action.
A failed run can leave completed work behind
Automation platforms report execution state. That state is useful, but it does not reverse completed work in the systems the workflow touched.
Zapier makes the boundary explicit. A run can contain successful steps even when the overall run errors. Deleting a completed run removes its history; it does not undo the action. HubSpot says the same about unenrollment: it prevents future workflow actions, but it does not undo actions that already executed.
The practical consequence is simple. Treat a failed run as a partial record until you inspect it. The CRM write, email, payment request, task creation, file update, or webhook call before the error may still be real.
Use the run status as the starting point, then confirm whether a retry is safe.
Know what the platform will repeat
Recovery controls behave differently across platforms. The label on the button is not enough. You need to know where the resumed work begins and which workflow version and input it will use.
Zapier can replay errored steps or replay an entire run. An entire replay is a new run that repeats every step, including steps that succeeded before. It reuses the earlier trigger data and can use the current published workflow if the Zap has since been edited and published.
n8n lets an operator retry with the original workflow or the currently saved workflow, using the previous execution data. That choice can change the structure being run while keeping the old input. The operator still has to decide whether earlier side effects can be repeated.
Make's incomplete executions take a narrower path. A retry starts at the module that failed, using the configuration from the failed run. Make also exposes commit settings because completed changes and rollback behavior depend on how the scenario and connected modules are configured.
HubSpot re-enrollment takes a record through the workflow again from the beginning and completes the actions again. That can be the right operating choice. It should not be mistaken for continuing at the point of failure.
Classify each side effect before retrying
Start with the failed run and list every step that could have changed a system or contacted a person. Put each one into one of three states:
- Confirmed done. The destination shows the intended record, message, charge, assignment, or update, with a usable reference.
- Confirmed not done. The platform and destination both show that the action did not happen.
- Unknown. The request timed out, the response was lost, the logs are incomplete, or the destination cannot yet confirm the result.
Unknown is the dangerous state. A timeout can mean the destination rejected the request, or it can mean the destination accepted it and the response never made it back. Calling it failed does not resolve that ambiguity.
Check the system that owns the result. Search the CRM for the source record. Check the message ID, provider reference, payment key, task ID, or last-modified time. If the action supports an idempotency key or another stable external reference, use the same one to reconcile the earlier attempt rather than inventing a new operation.
Choose the smallest recovery action
Once the side effects are classified, recover only the work that remains.
Resume from the failed step when the platform supports it, the earlier actions are confirmed, and the remaining path still matches the approved scope. Replay the entire run only when every earlier action is safe to repeat, protected against duplicates, or deliberately reversed first. Repair one destination manually when that creates a clearer record than sending the whole workflow through again.
Do not solve an unknown outcome by running faster. Hold the item, name an owner, and investigate. A recent n8n community report described customer records being processed before a later API failure, leaving the operator unsure whether to retry the entire execution. That is one practitioner example, not proof of how common the problem is. It is still a useful recovery test for your own workflows.
For each material workflow, decide in advance which steps are safe to repeat, which need a stable operation key, and which require a person to inspect the destination. That preparation turns a red run from a guess into a bounded recovery decision.
Close the recovery record
A later green run does not explain the failed attempt. Keep the original run or execution ID, workflow version, affected input, confirmed side effects, recovery decision, new run reference, and destination check together.
Then give the client the short version: what stopped, what had already completed, what the team repeated or repaired, what was verified afterward, and whether any exception remains. If a duplicate was created, say so and record how it was resolved.
AgentHub can keep the request, owner, approval, implementation note, verification result, and client brief together. It does not replay, roll back, inspect, or monitor the workflow. The operator uses n8n, Make, Zapier, HubSpot, and the destination systems to make and verify the recovery decision.
Sources reviewed
These sources support the platform claims and practitioner example in this note:
- Zapier Help, “Replay Zap runs,” updated May 29, 2026: errored-step replay, entire-run replay, prior trigger data, current published versions, and separate replay run records.
- Zapier Help, “View specific Zap run details” and “View and manage your Zap history,” updated May and June 2026: step-level status, run version and ID, replay links, and the fact that deleting completed run history does not undo the action.
- n8n Docs, “All executions”: retrying with the original or currently saved workflow and previous execution data.
- Make Help Center, “Manage incomplete executions” and “Scenario settings”: retry from the failed module, original input and configuration, and commit and rollback boundaries.
- HubSpot Knowledge Base, “Add re-enrollment triggers to a workflow” and “Manually unenroll records from workflows,” reviewed September 15, 2026: re-enrollment from the beginning and the limit that unenrollment does not undo completed actions.
- n8n Community, “Retry Failed n8n Workflows Without Duplicating Data,” September 13, 2026: one practitioner report of partial processing and retry risk, used as discovery rather than demand proof.
Treat recovery as a decision
A failed run is not a clean slate. Find the actions that completed, separate confirmed outcomes from unknown ones, and choose the smallest safe recovery path.
Then verify the destination and leave a record another operator can follow. The red status may be gone before the recovery is complete. Confirm the approved client outcome and make sure the recovery did not create another problem.