Stable Diffusion Face Swap with ReActor: Guide for ComfyUI, Forge and img2img
-
Daniel Böhmel -
July 30, 2024 at 2:13 PM -
- Recommended
-
11,114 Views -
0 Comments -
- What has changed since 2024
- ComfyUI or Forge: which interface should you use in 2026?
- What you need for a face swap
- How to set up ReActor in ComfyUI
- ReActor in Forge or A1111: the Extras tab is the fastest way
- inswapper, ReSwapper or HyperSwap: which swap model?
- Why your result looks mushy and how to fix it
- Where ReActor hits its limits
- What is legally allowed with face swaps?
- Frequently asked questions about ReActor and face swapping
- Editing models are catching up, ReActor stays the fast option
Last updated: September 27, 2026
ReActor swaps one face for another in a finished image, locally on your machine and without a subscription. We first published this guide in German in July 2024, and it has been read more than 10,500 times since. Parts of the old instructions simply don't work anymore, so we rewrote it from scratch.
What has changed since 2024
AUTOMATIC1111, which the old guide was built on, received its last update on February 9, 2025. Version 1.10.1 still runs, but bugs no longer get fixed, and newer models like Flux or Qwen-Image aren't supported. The community has moved on to ComfyUI and the Forge forks.
ReActor is still alive. It has split in two, though: the extension for A1111 and Forge now lives on Codeberg and is at version 0.7.1 beta 2. The ComfyUI version stayed on GitHub, has reached 0.6.2 and has shipped with an NSFW detector since 0.5.2, because GitHub doesn't tolerate synthetic media tools without one.
And our old method was a detour. We had recommended img2img with a denoising strength of 0 so Stable Diffusion wouldn't alter the image. That makes the pipeline run 30 sampling steps that do nothing. Since version 0.5.0, ReActor swaps faces directly in the Extras tab, with no diffusion at all.
ComfyUI or Forge: which interface should you use in 2026?
If you're starting fresh, use ComfyUI. That's where ReActor is maintained most actively, and every new feature since early 2025 landed there only: HyperSwap models, swap weighting in 12.5 percent steps and a dedicated node for targeted face restoration. The node interface feels clunky at first. For a face swap you need exactly four nodes.
Forge makes sense if you know the A1111 interface or already have models and settings there. The original Forge is barely maintained anymore; the active forks are Forge Classic and Forge Neo by Haoming02. Classic focuses on compatibility with older extensions, Neo on new models like Qwen-Image, and users report ReActor 0.7.1 running in Neo as well.
We wouldn't recommend A1111 for a new install. If you still use it, ReActor keeps working there, and the steps are the same as in Forge.
What you need for a face swap
- GPU: the swap itself runs fine on the CPU. If you generate with SDXL or Flux before or after, plan for 8 GB of VRAM or more.
- AMD and Mac: ComfyUI-ReActor has supported ROCm and CoreML since 0.5.2 via the matching onnxruntime version.
- Windows: the Visual Studio C++ Build Tools with “Desktop development with C++”, because Insightface needs to be compiled. Alternatively, there's a prebuilt Insightface package for Python 3.10.
- Models: the swap model inswapper_128.onnx and the detection model buffalo_l. ReActor usually downloads both on its own.
- Images: a source image with the face you want to transfer, frontal, sharp, no sunglasses or hands in the way. Plus a target image; whether that's a photo or comes from Midjourney, Flux or Stable Diffusion makes no difference to ReActor.
How to set up ReActor in ComfyUI
- Install ComfyUI, ideally as the desktop app or the portable version for Windows.
- Open ComfyUI Manager, search for “ReActor” and install ComfyUI-ReActor by Gourieff. Without the Manager, use the console: run git clone https://github.com/Gourieff/ComfyUI-ReActor in ComfyUI\custom_nodes, then start install.bat in the new folder.
- Restart ComfyUI. If the swap model is missing, download inswapper_128.onnx from the ReActor dataset on Hugging Face and put it in ComfyUI\models\insightface.
- Build the workflow: two “Load Image” nodes, one for the target image, one for the source image. The target goes into the input_image input of the “ReActor Fast Face Swap” node, the source into source_image. Connect its output to “Save Image”.
- Click Queue. [Own measurement: the swap takes about X seconds on an RTX xxxx.]
These are the values we start with in the node:
If the face looks too soft, the FaceBoost node helps. It restores and upscales the swapped face before ReActor pastes it into the target image, instead of afterwards.
ReActor in Forge or A1111: the Extras tab is the fastest way
- On Windows, install the Build Tools first, see requirements.
- In the WebUI, open the Extensions tab, then “Install from URL”, enter https://codeberg.org/Gourieff/sd-webui-reactor and click Install. Installation takes a few minutes, don't interrupt it.
- If the console says “PLEASE, RESTART the Server!”, restart the WebUI. If it says “Done!”, reloading the page is enough.
- Switch to the Extras tab, load the target image under “Single Image”, expand the ReActor panel and load the source image there.
- Tick “Enable”, choose “CodeFormer” under Restore Face and click Generate.
The GitHub version, sd-webui-reactor-sfw, works the same way but has the NSFW filter built in.
When img2img still makes sense
In the Extras tab, the new face is simply pasted in. If lighting or style don't match the rest of the image, a pass through img2img helps. In the ReActor options you choose whether the swap happens on the source image before diffusion or on the result afterwards.
If you swap first and let Stable Diffusion run over it with a low denoising strength, the face blends into its surroundings. We start at 0.25. From around 0.5, the model noticeably changes the face again, and the swap was for nothing.
Inpainting works too; ReActor then swaps only inside the masked area. If the upscaler is active, set “Inpaint area” to “Only masked”.
inswapper, ReSwapper or HyperSwap: which swap model?
inswapper_128 by InsightFace is still the default. According to ReActor developer Gourieff, in early 2025 it still beat the open alternative ReSwapper on likeness. The 128 in the name is the resolution the model works at, which is why swapped faces look soft without restoration.
HyperSwap by FaceFusion Labs works at 256 pixels and has been usable in ComfyUI since ReActor 0.6.2. It comes in three variants, 1a, 1b and 1c; providers describe 1a as the fastest and 1c as the highest quality. The files go into ComfyUI\models\hyperswap, ReSwapper models into models\reswapper.
The default models are not cleared for commercial projects. The InsightFace models, including inswapper_128 and buffalo_l, are licensed for non-commercial research only. If you swap faces for clients or advertising, you need other models and have to check their license first.
Why your result looks mushy and how to fix it
Usually it's the 128 pixels. CodeFormer or GFPGAN reconstruct the missing detail. With CodeFormer, the weight slider controls the trade-off: low values smooth more, high values stay closer to the swapped face. For large portraits, the ReActor dataset on Hugging Face has GPEN models at 1024 and 2048 pixels.
Order matters. ReActor restores first and upscales afterwards; the other way round leaves visible differences in skin texture. Pixelated edges around the face are fixed in Forge and A1111 with the “Face Mask Correction” option.
If the wrong face gets swapped, set the indexes. ReActor counts left to right and top to bottom, starting at 0. With “0,1” for source and “1,0” for input, you swap two people crosswise. In group photos, gender detection narrows it down further.
If the likeness still isn't good enough, build a face model from several photos of the same person. ReActor saves it as a small safetensors file you can load again and again. Several photos from different angles help more than a single perfect one.
Where ReActor hits its limits
ReActor only replaces the face. Head shape, hair, ears and neck stay from the target image, so with very different face shapes the result quickly looks like a mask. Gourieff himself recommends running IP-Adapter FaceID or Plus Face first, so Stable Diffusion already adjusts the basic shape.
Profile shots, covered faces and extreme expressions are the second weakness. No slider fixes that. A different source image does.
For a full head swap including hair, the community now uses image editing models; a popular setup is Qwen-Image-Edit 2511 with the “BFS Best Face Swap” LoRA. It needs far more VRAM and time, but delivers transitions at hairline and neck that ReActor can't. For video, FaceFusion is the specialised tool, currently at version 3.6. ReActor in ComfyUI can process video frame by frame, but FaceFusion adds reference-based face selection and dedicated masks for moving scenes.
What is legally allowed with face swaps?
Your own face, or faces of people who agreed: no problem. Publishing images of identifiable people generally requires their consent; in Germany, where Aivor is based, that's § 22 of the Kunsturhebergesetz, and most countries have comparable personality or privacy rights. A deepfake that puts words or situations in someone's mouth can also violate their personality rights.
Since August 2, 2026, Article 50(4) of the EU AI Act applies as well. Anyone using AI professionally to create or alter images that resemble real people and could be mistaken for real must label them as AI-generated. Purely private use is exempt; for clearly artistic or satirical works, a discreet notice is enough. Violations can cost up to 15 million euros or 3 % of worldwide annual turnover.
From December 2, 2026, the AI Act, amended by the so-called Digital Omnibus, also bans AI systems that generate non-consensual intimate content. Germany is still debating a dedicated criminal offence for deepfakes. That doesn't mean everything is allowed until then: civil claims for injunctions and damages apply, and existing criminal law can apply depending on the content. Outside the EU, check your local law. This section is not legal advice.
Frequently asked questions about ReActor and face swapping
Can I face swap without installing anything?
Yes, if you don't want to edit an existing photo but create new images with a specific face. In our tool Aivor Visuals you upload up to four reference images or set a face once, and every following image shows the same person. It runs in the browser, without Python, build tools or model downloads.
An image costs 5 credits, and the free plan includes 10 credits per month, so two images. It doesn't replace a pixel-precise swap into an existing photo; ReActor remains the right tool for that. And the same rule applies: other people's faces only with their consent.
Is ReActor free?
Yes, ReActor is open source. The bundled InsightFace models, however, may only be used non-commercially.
Does ReActor work with SDXL, Flux or Qwen-Image?
Yes. ReActor works on the finished image and is therefore independent of the checkpoint. Whether the image comes from SD 1.5, SDXL, Flux or a camera doesn't matter.
Does ReActor run without an Nvidia GPU?
Yes, even on the CPU, because the swap model is small. In ComfyUI you can also use AMD cards via ROCm and Macs via CoreML.
Why doesn't ReActor swap anything in some images?
Most of the time face detection finds nothing, for example in profile views or with very small faces. In Forge, lower the threshold in the “Detection” tab. In the GitHub versions, the NSFW detector also blocks the swap for such images.
What happened to Roop?
ReActor grew out of the Roop extension for Stable Diffusion. Roop itself is no longer developed; its idea lives on in ReActor and FaceFusion.
Can ReActor handle videos?
In ComfyUI, yes, combined with nodes for loading and saving video. For longer clips, FaceFusion is more convenient.
Are the results protected by copyright?
In Germany, the prevailing view is that purely AI-generated images are not protected by copyright because they lack a human creative contribution; other jurisdictions, such as the US, take a similar line. The photos you use as source or target can very well be protected, though, and the people shown keep their rights to their own image.
Editing models are catching up, ReActor stays the fast option
With Qwen-Image-Edit and Flux Kontext, the line between face swapping and prompt-based image editing is blurring. These models swap entire heads and match the lighting along the way, but need a large GPU and many times the compute. For a pure face swap, ReActor remains the fastest route, and HyperSwap added a swap model with twice the resolution in April 2026.
What the labelling obligation will do to the tools themselves is still open. Providers of generative AI must mark their output as machine-readable by December 2, 2026 at the latest, and whether that also covers open-source extensions like ReActor hasn't been settled.
Written by
Daniel Böhmel has been developing software for over 20 years and has been self-employed since 2007. He started out with interactive web design back in the Flash era; later, he built his own online projects, such as a fitness forum and a supplement store, including the editorial content. Today, his…
View the profile of Daniel BöhmelParticipate now!
Don’t have an account yet? Register yourself now and be a part of our community!