Sana (fal)
NVIDIA Sana text-to-image, built to hit 4K fast
- IMAGE
Sana is NVIDIA's efficiency play in text-to-image - a model built around aggressive latent compression and linear attention so it can push out very high resolutions without the compute bill a normal diffusion transformer racks up. The tell is right there in this node's defaults: width 3840, height 2160. It ships pointed at 4K. This node runs Sana through fal.ai from a ComfyUI graph.
It's a hosted call - no weights on disk, no local GPU, billed per image on fal. (Sana's weights are actually open, so you could run it locally, but the fal route skips the download and setup entirely if you just want the output.)
How it works
Prompt in, image out, same as any text-to-image node - the interesting part is under the hood. Sana leans on a deep-compression autoencoder to work in a much smaller latent space than usual, which is what lets it reach 4K in a handful of steps instead of dozens. In practice that means the default 18 steps is genuinely enough; you're not starving it by not cranking to 50.
The inputs and outputs that matter
prompt(required, multiline) - Sana follows natural-language prompts well; describe the scene plainly.image_size- presets (square_hd,landscape_16_9, etc.) orcustom. Oncustom, thewidth/heightfields take over, and here they go all the way to 4096, which is the point of using Sana.num_inference_steps(default 18) - the sweet spot for this model. More steps rarely buys much; fewer is a fine speed/cost trade.guidance_scale(default 5) - prompt adherence vs. freedom. Around 4–6 is the usable band; push it high and you get that over-saturated, over-baked look.
Optional but useful: negative_prompt, seed (default -1 = random), enable_safety_checker, num_images (1–4), and output_format (png/jpeg). Set a real seed if you want to reproduce or iterate on a specific result.
Output is a native IMAGE, so it flows straight into Preview/Save or a downstream node - no URL round-trip.
How to install it
Ships in gokayfem's ComfyUI-fal-API pack. ComfyUI Manager: search ComfyUI-fal-API, install, restart. Manual:
cd ComfyUI/custom_nodes
git clone https://github.com/gokayfem/ComfyUI-fal-API.git
pip install -r ComfyUI-fal-API/requirements.txt
Add your fal key (copy config.ini.example → config.ini and paste from fal.ai/dashboard/keys, or export FAL_KEY=your_key), then restart. No model download needed for the fal route.
Common issues & troubleshooting
4K is slow and pricey. The default 3840×2160 is a real 4K render every time you press queue, and you're billed for it. If you're just testing a prompt, drop to a smaller preset first and only go 4K once you like the composition.
Output looks over-cooked. Ease guidance_scale down toward 4–5. Sana doesn't need a high value, and high guidance is the usual cause of that fried, over-contrasty look.
Steps aren't helping. Sana is designed for few-step sampling. Bumping num_inference_steps toward 50 mostly costs time without a matching quality gain - leave it near the default.
Insufficient funds / late credits. fal is pay-per-call and legit, though top-ups have sometimes been slow to post. Wait for credits to settle rather than repaying. Any fal error (validation, policy, quota) prints as readable text in ComfyUI.
Inputs (11)
| Name | Type | Default | Description |
|---|---|---|---|
| prompt | STRING | — | |
| image_size | COMBO | square_hd | 7 options: square_hd, square, portrait_4_3, portrait_16_9, landscape_4_3, landscape_16_9, +1 |
| width | INT | 3840512–4096 | — |
| height | INT | 2160512–4096 | — |
| num_inference_steps | INT | 181–50 | — |
| guidance_scale | FLOAT | 5.01–20 | — |
| num_images | INT | 11–4 | — |
| negative_promptopt | STRING | — | |
| seedopt | INT | -1 | — |
| enable_safety_checkeropt | BOOLEAN | true | — |
| output_formatopt | COMBO | png | 2 options: png, jpeg |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| IMAGE | IMAGE | — |