ControlNet fails or has no visible effect: check the base, control image and apply path
Diagnose ControlNet compatibility, control-image preparation and conditioning separately; node-link type errors need their own check.
Symptoms and scope
Separate an incompatible computation from an input that is not the required edge, pose or depth representation.
Error fragments for search; IDs, values and filenames may vary:
ControlNet
size mismatch
Source-supported context
Official ControlNet instructions distinguish control-image types and note that the core does not include every preprocessor. Preprocessor code, ControlNet weights and the base model are separate dependencies. A shape error alone does not identify which component is incompatible; keep the failing node and full traceback. Source 1 Source 2
The separate Return type mismatch between linked nodes validation compares a source output type with its destination input type; it does not establish a ControlNet weight/base-family mismatch. Inspect the named sockets first. Source 3
Cases to distinguish
1. The control model targets another base family or specialized variant.
2. A model expecting processed edges, depth or pose receives an ordinary photograph instead.
3. Apply outputs do not reach the actual conditioning path, or strength and timing make control negligible.
Diagnostic sequence
The sequence below is an editorial procedure based on the cited context, not a diagnosis already confirmed for your environment.
Step 1. Confirm the base workflow without ControlNet, then add one control branch in a saved copy.
Step 2. Match the author's base-model and input-type requirements and inspect the preprocessed image, not just the original.
Step 3. Trace the Apply output into the conditioning actually used for sampling, starting with the model example's strength and interval.
Step 4. Add additional controls only after one works. For a shape error, identify the failing node and component versions, then restore a documented compatible combination if the traceback points to a model architecture conflict. Do not change image size merely to hide it.
Completion check
The minimal flow runs, its control image is meaningful and a with/without comparison has an inspectable difference.
Limitations and cautions
If the message is Return type mismatch between linked nodes, follow the node-link type guide before investigating model weights. Control is not an exact-reproduction guarantee. Universal controls, specialized controls and adapters from different families are not interchangeable by name.
Original sources
- ComfyUI ControlNet example — checked 2026-09-25.
- ComfyUI model troubleshooting — checked 2026-09-25.
- ComfyUI v0.37.0 execution.py validation — checked 2026-09-25.
Sources and English wording rechecked 2026-09-25. No GPU run, minimum-memory measurement or runtime guarantee is supplied.
Related troubleshooting and guides
Was this page helpful?
Anonymous. Only a yes/no counter is stored; no account, IP address or device details.
Sources & references
Official ControlNet and model documentation plus pinned ComfyUI v0.37.0 validation code rechecked 2026-09-25. The diagnostic sequence is editorial guidance, not a tested repair; no GPU run.
01ComfyUI ControlNet exampleSource checked: 2026-09-2502ComfyUI model troubleshootingSource checked: 2026-09-2503ComfyUI v0.37.0 execution.py validationSource checked: 2026-09-25