How to progress (resume) a stuck or hung ServiceNow workflow Issue <!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } When a legacy Workflow stalls and will not move to the next activity, you can manually resume it by adding a new Workflow Executing Activity record that points back to the activity you want to re-run, and then nudging the workflow. This article walks through how to do that safely. A workflow can become “stuck” (also called hung or hanging) and stop progressing in scenarios such as: A Switch activity ended but none of its conditions were met. A catalog task was closed but none of the custom conditions were satisfied. A user cancelled a transaction (for example, because it was taking too long), leaving the workflow with nowhere to go. In each case, the workflow context (wf_context) sits idle after you have fixed the underlying issue, and you need a way to push it forward. Facts<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } Before you start These steps modify workflow engine records directly, so test in a sub-production instance first and confirm you understand which activity should resume. You will temporarily disable a system UI policy and list control — remember to revert those changes when you are done.Always resolve the root cause first. Nudging or resuming is a recovery step, not a fix for the condition that caused the stall. Release<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } All Releases Resolution<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } Resolution — step by step Expose the “New” button on Workflow Executing Activities. Open the affected [wf_context] record. In the Workflow Executing Activities related list, right-click a column header and select Configure > List Control, then clear (uncheck) Omit new button and save. A New button now appears on the related list.Find the activity you want to resume from. In the Workflow Activity History (Transition History) related list, locate the activity you want the workflow to go back to.Copy the activity’s sys_id (not the history record’s sys_id). Open that history record, choose Show XML, and copy the sys_id from the activity field. This is a common trap — you need the sys_id of the activity, not of the Workflow Activity History record itself. Create a new Workflow Executing Activity record. Go back to the context and click New. Because all fields are read-only by default, disable the UI policy “Default read only” (set it to false) so you can edit the form.Point the new record at your activity and set it to Executing. In the Activity reference field, search for and select the sys_id you copied in Step 3. Make sure the record’s state = Executing, then submit.Nudge the workflow. Use the Nudge button on the workflow context, or update the record the workflow is running against, to prompt the engine to re-evaluate and continue.Revert your temporary changes. Re-enable the “Default read only” UI policy and re-check Omit new button so the configuration returns to its normal state. Tip — if the context is in a Cancelled state: you may also need to set the workflow context to state = executing and active = true (for example, by exporting the context XML, editing those two fields, and re-importing) before the activity will run. Important: If you are on Flow Designer (not legacy Workflow) The steps above apply to the legacy Workflow engine (wf_context). If your process runs in Flow Designer, the equivalent recovery is different: open the Flow Context [sys_flow_context] record, copy its Sys ID, then run the nudge API from Scripts – Background: sn_fd.FlowAPI.nudgeFlow('<sys_flow_context.sys_id>', 1); The second parameter is the number of seconds to wait before resuming. This works for wait for condition actions and approvals in all versions, and for timers. For business-critical automations that stall repeatedly, ServiceNow’s guidance is to migrate legacy Workflows to Flow Designer, which uses trigger-based re-evaluation. Related Links<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } How to retrigger a workflow activity or resume a canceled workflow (KB0713154) — a fuller walkthrough, including copying the Workflow Version sys_id and handling cancelled contexts. How to resume a stuck flow (KB0957784) — using the sn_fd.FlowAPI.nudgeFlow() script for Flow Designer flows.