Skip to content
checkaifree

Practical guide

Compare two saved ComfyUI graphs without rounding seeds or matching by guesswork

Compare two documents in the same saved representation. The result identifies changed stored values under explicit ID and ordering rules; it does not predict a rendered image or establish that two different node IDs mean the same thing.

18 October 2026 · Check AI Free

Start with one defined edit pair

Download diff-before.json and diff-after.json, or use Try synthetic workflow pair in the comparer. Both are self-authored API prompts. The before file has KSampler node 1, fictional ProjectInventedNode 2 and one model connection. The after file reorders object keys, changes four stored input values and adds PreviewImage node 3.

The comparison aligns nodes using typed saved IDs and connections using their stored identity. Object key order and node/link list order do not count as changes. Other arrays keep their order, and numeric tokens retain their exact spelling; an equivalent-looking numeric rewrite can therefore be reported. A number ID and the same text as a string ID remain distinct.

  • Download the before JSON — Two self-authored API nodes, one conventional connection and a greater-than-53-bit seed. Unknown node fields are intentional.
  • Download the changed JSON — Changes seed, steps, a connection slot and an unknown custom value, and adds PreviewImage. All content is fictional; no generation is performed.
  • RFC 8259: JSON objects and numeric interoperability — Primary JSON syntax reference. This implementation retains numeric tokens rather than rounding large seeds through JavaScript Number; the comparison rules below describe this site's behavior.

Locate the exact changes and download them

  1. Step 1

    Read the actual pair

    Open Compare two saved graphs and click Try synthetic workflow pair. For your own files, choose Before JSON file and After JSON file, then click Compare JSON. Inputs must use the same supported shape: 0.4 with 0.4, 1.0 with 1.0, or API prompt with API prompt.

    Open the saved-graph comparer

  2. Step 2

    Inspect node 1

    With Browse set to Nodes, find string:"1". Its changes are /inputs/seed from 18446744073709551615 to 18446744073709551614, /inputs/steps from 20 to 24, and /inputs/model/1 from 0 to 1. Both seeds exceed JavaScript's safe integer range and remain exact in the displayed field values and full report.

  3. Step 3

    Inspect the unknown node and connection separately

    Node 2 changes /inputs/custom/value from 1 to 2 even though its class is outside the catalog. Node 3 is added. Switch Browse to Connections to see the existing model reference's output slot change from 0 to 1. The connection is also stored inside node 1, so the node and connection views describe overlapping saved evidence rather than two independent edits.

  4. Step 4

    Save the complete difference

    Expect two changed nodes, one added node, no removed nodes and one changed connection. Expand Difference JSON preview and click Download difference JSON. The full comfyui-workflow-diff.json includes raw before/after field values; inspect prompts, paths and custom fields before sharing it.

Test the two controls that change the interpretation

Test the two controls that change the interpretation
Before / afterExpected resultWhat it establishes
diff-before.json / key-reordered.jsonidentical; 2 unchanged nodes and 1 unchanged connectionThe defined object-key and stored-list ordering rules do not create a value change.
diff-before.json / renumbered.json2 removed and 2 added nodes; 1 removed and 1 added connectionDifferent saved IDs are not automatically matched by appearance or inferred purpose.
Try identical pairNo differences under the stated rulesThis is a stored-data comparison, not runtime or visual equivalence.
Try empty pairSupported empty graphs; no node or connection inventoryWorkflow-level fields still have a separate comparison result.

Stop when identities or input shapes are ambiguous

Try malformed JSON to see a syntax failure. Duplicate JSON keys, duplicate typed node/link IDs, unsupported entries or mixed UI/API representations stop comparison rather than producing a guessed partial pairing. Return to the static checker or ask for intact exports when these occur.

Limits include 5 MiB per JSON, 1000 nodes, 10000 links and 10000 changed fields. The full output may contain sensitive original values; display shortening does not mean the download has been shortened or sanitized. A seed change proves that stored text changed, not that an image was generated or that its appearance must differ.

Sources and reproducible inputs

Continue with your file