ComfyUI Flux NSFW Workflow - Local Setup (2026)
Flux in ComfyUI runs without content filters. You get node-level control over every generation parameter, and nothing phones home. The trade-off is setup - you're placing files in specific folders, wiring nodes, and managing VRAM.
Full-precision Flux Dev needs 24 GB VRAM. Most people don't have that. GGUF Q4_K_S drops it to 8 GB with a quality hit you won't notice at 1024x1024. Q5_K_S uses 10 GB and looks nearly identical to full precision. Pick your quant based on your GPU, not someone's forum post.
This guide covers six steps: install ComfyUI, add the GGUF node, place files, import a workflow, generate, and add LoRAs. If wiring nodes isn't your thing, Forge runs the same Flux models with a simpler UI. LocalForge AI packages Forge with a one-click installer if you want that route.
The Quick Answer
Six nodes. That's a working Flux graph in ComfyUI. GGUF loader, dual CLIP loader, two text encode nodes, KSampler, VAE decode, save image. Everything else is optional until this base workflow runs clean.
| Quantization | File Size | VRAM at 1024x1024 | Quality vs FP16 |
|---|---|---|---|
| FP16 | 23.8 GB | ~24 GB | 100% |
| FP8 | 11.9 GB | ~12 GB | ~99% |
| Q8_0 GGUF | 12.7 GB | ~13 GB | ~99% |
| Q5_K_S GGUF | 8.3 GB | ~10 GB | ~95% |
| Q4_K_S GGUF | 6.8 GB | ~8 GB | ~93% |
Q4_K_S is the sweet spot for 8 GB cards. Q5_K_S if you have 10-12 GB. Don't bother with Q2 or Q3 - the quality loss shows in fine details and skin textures.
What You Need
- GPU: NVIDIA with 8+ GB VRAM for GGUF. 12+ GB for FP8. 24 GB for FP16.
- Disk: 12-25 GB depending on quantization, plus 5-10 GB for text encoders and VAE.
- Python: 3.10 or 3.11.
- ComfyUI: v0.20.1 or later (current as of May 2026).
Four model files minimum:
- Flux Dev GGUF - Q4_K_S at 6.8 GB or Q5_K_S at 8.3 GB from city96's HuggingFace repo
- T5-XXL text encoder - FP16 at 9.8 GB, FP8 at 4.9 GB, or GGUF Q5 at 3.3 GB
- CLIP-L encoder - clip_l.safetensors, 246 MB
- VAE - ae.safetensors, 335 MB
Step 1 - Install ComfyUI
Clone the repo and install dependencies. Use a clean install - don't reuse an old checkout with stale custom nodes.
git clone https://github.com/comfyanonymous/ComfyUI.git
cd ComfyUI
pip install -r requirements.txt
Add ComfyUI-Manager for one-click custom node management:
cd custom_nodes
git clone https://github.com/ltdrdata/ComfyUI-Manager.git
Launch with python main.py. Open http://127.0.0.1:8188 in your browser. If the page loads, you're good.
Step 2 - Install the GGUF Node
ComfyUI-GGUF by city96 adds quantized model loading. It has 3,400+ GitHub stars and active maintenance as of 2026.
cd custom_nodes
git clone https://github.com/city96/ComfyUI-GGUF.git
pip install gguf
Restart ComfyUI. You'll see Unet Loader (GGUF) and DualCLIPLoader (GGUF) in the node menu. Skip this step only if you're running FP16 on a 24 GB card and using standard loader nodes instead.
Step 3 - Download and Place Files
Grab Flux Dev GGUF from city96/FLUX.1-dev-gguf on HuggingFace. Get T5-XXL and CLIP-L from the comfyanonymous mirrors or official Flux repos.
File placement for GGUF workflow:
| File | Folder |
|---|---|
| flux1-dev-Q4_K_S.gguf | ComfyUI/models/unet/ |
| t5xxl_fp16.safetensors | ComfyUI/models/clip/ |
| clip_l.safetensors | ComfyUI/models/clip/ |
| ae.safetensors | ComfyUI/models/vae/ |
For non-GGUF safetensors, use models/diffusion_models/ for the Flux model and models/text_encoders/ for encoders. ComfyUI v0.20+ searches both legacy and current paths automatically, but your files need to match the loader node you're using. Wrong folder means the model won't appear in the dropdown.
Step 4 - Import and Wire the Workflow
Download a working Flux GGUF workflow JSON and drag it into ComfyUI's canvas. Don't build from scratch on your first run.
Core nodes (6 total):
- Unet Loader (GGUF) - select your Flux GGUF file
- DualCLIPLoader (GGUF) - load T5-XXL and CLIP-L
- CLIP Text Encode (x2) - positive and negative prompts
- KSampler - connects model output and conditioning
- VAE Decode - connects VAE file and sampler output
- Save Image - final output node
KSampler settings:
- Sampler: euler
- Scheduler: simple
- Steps: 20
- CFG: 1.0
CFG 1.0 is correct. Flux handles guidance through a separate FluxGuidance node set to 3.5, not through KSampler's CFG parameter. Raising CFG above 1.0 produces oversaturated garbage. Set your resolution to 1024x1024 or 832x1216 for portrait orientation.
Step 5 - Generate and Verify
Queue one image at 1024x1024. Check for these specific failures:
- Pink/magenta output: VAE mismatch. Confirm ae.safetensors is in
models/vae/and wired to the VAE Decode node. - Blurry/mushy results: Wrong text encoder file. Verify your T5-XXL file matches the model variant you downloaded.
- OOM crash: Drop resolution to 832x832 or switch to a smaller GGUF quant level.
- Missing nodes error: Install required nodes through ComfyUI-Manager before loading the workflow JSON.
One clean image means your base workflow is solid. Save the workflow JSON immediately - this is your rollback point for everything that follows.
Step 6 - Add NSFW LoRAs
Place LoRA files in ComfyUI/models/loras/. Add a LoRA Loader node between the model loader and KSampler.
Tested Flux NSFW LoRAs from Civitai:
- aidmaNSFWunlock - 19 MB, 130k+ downloads. Content unlock baseline. Start at strength 0.7.
- NSFW Master Flux - 1.16 GB, broad coverage. Strength 0.8.
- Detail Enhancer FLUX - 19 MB, texture quality boost. Stack after an unlock LoRA.
- Realistic_Nudes Flux v2.1 - 172 MB, anatomy specialist for explicit detail.
LoRA rules for Flux:
- Start at 0.6-0.8 strength. Flux amplifies LoRA effects more than SD 1.5 does.
- One at a time. Get a clean result before adding a second.
- Watch VRAM. Two LoRAs on Q4 at 1024x1024 can push 8 GB cards to OOM.
- Same prompt, same seed when comparing before and after results.
Read the license on every LoRA you download. Creators' terms still apply on local hardware.
Verify It Works
Run through this checklist after your first successful generation:
- Clean output at 1024x1024 - no pink artifacts, no extreme blur, coherent anatomy
- VRAM stays within limits - check with
nvidia-smiduring generation - LoRA effect is visible at 0.7 strength without artifacts or color shifts
- Workflow JSON saved as your known-good baseline for rollback
Troubleshooting
Pink/magenta slabs: VAE file wrong or decode node wired to incorrect output. Re-check that ae.safetensors is in models/vae/ and the node connections are correct.
Noise that never resolves: Scheduler mismatch. Flux needs euler sampler + simple scheduler with CFG 1.0. Using SD 1.5 KSampler presets on Flux produces garbage.
OOM on queue: Resolution too high or too many LoRAs loaded. Render at 832x832 first, disable extras, and add features one at a time until you find the limit.
LoRA produces artifacts: Strength too high. Drop to 0.5, increase by 0.1 until the result is clean. Check the LoRA's Civitai page for its recommended Flux variant and strength range.
Bottom Line
Install ComfyUI. Add the GGUF node. Place four files in three folders. Import a workflow. Generate one image. That's five actions to uncensored Flux on your own hardware. Add LoRAs only after the base workflow runs clean. Measure VRAM at every change. Do less, do it right.
