A downloaded ComfyUI workflow can reference custom nodes that are not installed on your computer. Install the exact missing package when it is available. If it is abandoned or unavailable, replace the node by matching its inputs, outputs, and job in the workflow.

Downloads and Official References#

Back up a working installation before updating ComfyUI, Python packages, or custom nodes.

Save the Evidence Before Installing Anything#

  1. Save a copy of the workflow JSON or source image.
  2. Record every missing node name exactly.
  3. Open the terminal or console used to start ComfyUI.
  4. Save the full import error, not only the red node title.
  5. Record the ComfyUI version and installation type.

A red node can be caused by a missing package, a failed import, an outdated core node, or an incompatible dependency.

Use ComfyUI Manager#

When the workflow opens:

  1. Open Manager.
  2. Choose the option to find or install missing custom nodes.
  3. Review the package name and repository before installing.
  4. Install one package group at a time.
  5. Restart ComfyUI.
  6. Reload the workflow.

Do not install every search result with a similar name. A node title is not always the package or repository name.

When Manager Finds Nothing#

Search the exact node class name together with ComfyUI on GitHub. Check:

  • whether the repository is the original source;
  • its installation instructions;
  • the last update date;
  • supported ComfyUI and Python versions;
  • additional model downloads;
  • open issues about the same node;
  • license and security concerns.

Some old workflows reference renamed or removed nodes. Look at the workflow author’s page for an updated workflow before reconstructing it manually.

Fix “Failed to Import”#

The folder may exist while the node is still unavailable. Read the startup log for:

  • ModuleNotFoundError;
  • version conflicts;
  • a missing wheel;
  • unsupported Python or PyTorch;
  • failed compiled extension;
  • syntax errors;
  • an unavailable model dependency.

Use the Python environment that belongs to your ComfyUI installation. For the Windows portable build, do not install packages into an unrelated system Python.

Follow the custom node’s own requirements command. Restart ComfyUI and confirm that its import line succeeds.

Find a Conflicting Custom Node#

If ComfyUI worked before the installation:

  1. Start ComfyUI with all custom nodes disabled, using the command documented for your installation.
  2. Confirm that the core interface works.
  3. Enable half of the custom nodes.
  4. Test again.
  5. Continue halving the suspect group until one package remains.

Comfy CLI also provides a node bisect workflow. Back up the custom_nodes folder before running bulk changes.

Replace an Unavailable Node#

Inspect the missing node’s connections:

  • What data type enters it?
  • What data type leaves it?
  • Does it load a model, transform an image, change conditioning, or save output?
  • Which settings were stored in the workflow?

Choose an installed node with compatible inputs, outputs, and behavior. Reconnect it manually and run a small test. A node with a similar name is not automatically equivalent.

If the missing node performs a specialized model operation, find the original package or an updated workflow. Replacing it with a generic image node may make the graph run while changing the result.

Distinguish Nodes From Models#

A workflow can load without missing nodes and still fail because checkpoint, VAE, LoRA, ControlNet, or upscale models are absent. Node Manager repairs node packages. It does not guarantee that every model file is installed.

Read loader-node errors separately and place each model in its correct folder.

Verify the Repair#

  1. Restart ComfyUI.
  2. Read the startup log and confirm that all intended custom nodes import.
  3. Reload the workflow.
  4. Confirm that no node remains red or missing.
  5. Queue a low-resolution, single-image test.
  6. Compare the output with the workflow author’s example when one exists.
  7. Save a repaired copy under a new filename.

The repair is complete only when the workflow loads, queues, and produces the expected kind of output after a restart. A clean canvas with changed behavior is not a confirmed repair.