PixelPanda: Remove Background
It removes the background — but here's the catch about transparency
- image
- IMAGE
PixelPanda: Remove Background is the flagship of the ComfyUI-PixelPanda pack, and for good reason - background removal is the most commoditized job in this whole space, and it's exactly the kind of thing you don't want eating VRAM or model downloads in the middle of a workflow. Drop an image in, it calls the PixelPanda API's /remove-background endpoint, and you get the subject back at 1 credit per image. The pack README's example pipeline - generate art, upscale, remove the background, ship it to your print-on-demand store - revolves around this node.
How it works
Under the hood it's the same thin client as its four siblings: your image is base64-encoded as PNG and posted to https://pixelpanda.ai/api/v2, the service runs its segmentation model in the cloud, and the finished image comes back as a URL that the node downloads and converts back to a ComfyUI IMAGE tensor. No local model, no VRAM, no mask node needed. The segmentation quality is whatever the hosted service ships - you're renting the current best-effort matting, which is a real trade you should make consciously.
The catch about transparency
Here's the part the marketing glosses over, and it's right there in the source. ComfyUI's IMAGE type has no alpha channel, so when this node converts the cutout back, it composites the transparent areas over white before returning it. Read that again: you get the subject on a clean white background, not a transparent PNG. Visually the background is "removed" - which is exactly what you want if you're saving for white merchandise or compositing over light scenes - but if you need a genuine cutout with alpha to drop onto anything (dark t-shirts, complex backplates, LayerDiffusion-style compositing), this node alone won't hand it to you. The workaround is easy since white is a perfect key: convert the output to a mask with a color-key or luminance threshold node and use that for your compositing. Just don't assume the alpha survived the round trip.
The KB's background-removal essay also warns that hair, fur and semi-transparent material are where every removal tool earns its keep - and where a black-box cloud call gives you no recourse. If your subject has flyaway hair and it comes back wrong, you can't swap the model or nudge a parameter; there aren't any.
The inputs
- image - what gets cut out.
- api_key -
pk_live_…key, or leave blank to use thePIXELPANDA_API_KEYenvironment variable.
One IMAGE comes out. That's the whole interface.
Install
cd ComfyUI/custom_nodes
git clone https://github.com/RyanKramer/ComfyUI-PixelPanda
Restart ComfyUI and find it under image/PixelPanda; ComfyUI Manager users can search "PixelPanda" instead. Zero extra dependencies - the pack uses only torch/numpy/Pillow that ComfyUI already ships. Get a key at https://pixelpanda.ai/profile (the $1.99 starter pack needs no subscription, credits never expire), paste it in the field or export it before launch.
When to reach for it - and when not to
Honest positioning: local background removal is solved, free, and runs on almost nothing - rembg with u2net handles solid subjects on contrasting backgrounds, and BiRefNet is the current quality ceiling for hard edges, both running in ComfyUI today. If you do this constantly, run one of those locally and skip the per-image meter entirely. This node makes sense when you want one less model in your life, you're on hardware that chokes on even the small stuff, or you're occasionally cutting out a handful of images and the 1-credit cost beats the setup. Same family gotchas apply: it processes only the first frame of a batch, needs the network, and a bad key (401) or empty balance (402) fails with a readable error rather than silently.
One more honest note: PixelPanda is a small commercial service with almost no independent community footprint yet - a couple of plugs on Reddit that look self-promotional. The wrapper code is clean and MIT, but a thin API node is only as alive as the service behind it. Don't build a business workflow on it without checking the service is still running.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| image | IMAGE | — | |
| api_key | STRING | pk_live_… key, or leave blank to use $PIXELPANDA_API_KEY |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| IMAGE | IMAGE | — |