Magnific Creative Upscale
It Invents the Detail, That's the Feature
- image
- provider
- image
Magnific has been the paid benchmark for "add detail that wasn't there" since before the local models caught up. SUPIR's entire launch framing was free local answer to Magnific's subscription - and when Comfy Org published their upscaling handbook in early 2026, Magnific was still one of the three image names they recommended. A couple of years of upscaling arguments later, it's still the thing people compare against.
This node is Magnific's creative engine inside ComfyUI. It's the wrong tool for "my image is too small"; it's the right tool for "my image is fine but flat."
What creative upscaling actually is
Worth being precise, because the word "upscale" covers three unrelated jobs: adding pixels to a sharp image (interpolation, free, can't hallucinate), adding detail that was never there (generation, and it will rewrite faces), and doing either across video frames. This node is squarely the second one. It resynthesises your image with more detail, guided by sliders that decide how much invention you'll tolerate.
That's not a caveat, it's the pitch - and it's also why a portrait of a real person can come back with a slightly different person in it. The KB's SUPIR section makes the mechanism plain: the model doesn't know the person, so it fits what it does know. Magnific has resemblance as an explicit dial for exactly this reason. Use it.
Inputs
- image - the image to process. Note this is a plain IMAGE input, not an autogrow socket; batch handling here is one image in, one out.
- model - dynamic combo. The Creative entry carries the parameters below;
Custom modelappears too, which is how you get at the same engine through a model ID. - filter_nsfw - boolean, off by default, marked advanced. Leave it off unless you want the service making that call for you.
- extra - JSON merged into the request, for anything not exposed as a field.
- retry_count - total attempts, ~3s apart.
- provider - optional; without it the node defaults to the Magnific provider, keyed from
api_key.json'smagnificentry orMAGNIFIC_API_KEY.
With Creative selected you also get the interesting half: scale_factor (2x/4x/8x/16x), optimized_for (portraits hard and soft, art and illustration, videogame assets, nature, film and photography, 3D renders, sci-fi and horror), an optional guidance prompt, the four -10..10 sliders - creativity, hdr, resemblance, fractality - and engine, choosing between magnific_illusio, magnific_sharpy, magnific_sparkle or letting it pick automatically.
Output: a single image.
Settings that actually change the result
creativity up, resemblance down is the deal you're making with any creative upscaler: more invented detail, less of the original. Start at a modest creativity and nudge. fractality is detail density per pixel - the slider most likely to produce that over-processed look people reject Magnific for. hdr is detail and contrast, which is either exactly what a flat render needs or the thing that blows it out. And optimized_for is not cosmetic: portraits and 3D renders want different treatment, and picking wrong gets you plastic skin.
Install
cd ComfyUI/custom_nodes
git clone https://github.com/yogurt7771/ComfyUI-YogurtNodes
cd ComfyUI-YogurtNodes
pip install -r requirements.txt
Or ComfyUI Manager, searching "YogurtNodes"; the canvas name is "Magnific Creative Upscale (Yogurt Nodes)".
{ "magnific": "your-api-key" }
That goes in custom_nodes/ComfyUI-YogurtNodes/yogurt_nodes/llm/api_key.json. For a dedicated Provider: Magnific node with the task-timeout dial and proxy settings, see the provider page - the two are interchangeable for a single-key setup.
The thing nobody warns you about
Magnific's API is a task API: you submit, then wait. The provider's task_timeout defaults to 900 seconds and goes up to 7200, which tells you how long these jobs can run. Big scale factors with high creativity on a large source are minutes, not seconds, and a queued job at the paid tier means longer still. Budget accordingly.
And one comparison worth making before you pay per image: for straight detail-on-degraded-source work, SeedVR2 has held the local detail rung since late 2025, and the modern open upscalers are genuinely competitive for a lot of jobs. Magnific's edge is still real - especially the sliders that let you aim the invention - but "I need Magnific" and "I need an upscaler" are different sentences, and the second one is often free.
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| image | IMAGE | Image to process. | |
| model | COMBO | Model version; the inputs below change with the selected model. | |
| filter_nsfw | BOOLEAN | false | Let the service filter NSFW content. |
| extra | STRING | Optional JSON object merged into the request (for parameters not exposed as inputs). | |
| retry_count | INT | 11–10 | Total attempts on failure. |
| provideropt | YOGURT_LLM_PROVIDER | Provider node. When unconnected, the official API is used with keys from api_key.json or environment variables. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | — |