Nodes/PopNow/Background Remover · Edit
ComfyUI Node

Background Remover · Edit

One socket, 0.7 credits, and a black background you didn't ask for

By popnow-ai·Created 24 days ago·Updated about 20 hours ago· 0
Background Remover · Edit
  • image_url
  • images
  • alpha
  • task id

Background removal is the most commoditized operation in this whole ecosystem - BiRefNet ships in ComfyUI core now, rembg has had the job since 2020, and the open models are free and fast. So why would you pay for it?

At 0.72 credits a picture - under a cent - the honest answer is that you wouldn't, most of the time. The answer that actually holds is: you're already in this pack, the edges are somebody else's problem, and you don't want another 1.2 GB download plus a node pack to cut out a product shot. It's the cheapest node in PopNow for a reason.

What it is

Background Remover · Edit wraps popnow/background-remover-v1/edit, one of the handful of utility models PopNow runs on its own servers rather than reselling from Google or ByteDance. Unlike the other edit tools in the pack it takes no prompt, no aspect ratio, no seed. One input: image_url. That's the whole node.

Which is the point. Every local background-removal workflow I've seen breaks in the same place - people feed a 4000px image into a model that was trained at 1024, or they use the general weights on hair, or they use u2net because it was the default in an old workflow. The KB's background-removal essay spends thousands of words on exactly that: the frontier moved years ago from "can it find the subject" to "can it survive hair, fur and semi-transparency", and nobody has won it. You're paying a cent to skip the weight-selection argument.

The outputs, and the part that confuses people

Three outputs: images (IMAGE), alpha (MASK) and task id.

The alpha mask is what you expect - 1 is opaque, 0 is transparent, per pixel.

The images output is the one that looks broken. ComfyUI's IMAGE type is a three-channel RGB tensor with no alpha, so the pack does the only sensible thing and premultiplies: transparent areas come out black. You run a background removal, look at the result and think the node failed, because your subject is sitting on a black rectangle. It didn't fail - the transparency is in alpha. This behaviour is deliberate in the source, for a good reason: a PNG keeps whatever colours were hiding behind its transparent pixels, and showing those would make it look like the removal did nothing at all.

So what do you wire into what? If you're compositing, use the mask directly with an image composite or mask-composite node - the alpha output is exactly the shape those want. If you need an actual transparent PNG on disk, Save Image on a 3-channel tensor won't give you one; combine images and alpha into RGBA first (core's JoinImageWithAlpha does it) and save that.

Install

Manager → search PopNow → Install → restart, or:

cd ComfyUI/custom_nodes
git clone https://github.com/popnow-ai/popnow-comfyui

Then a key from popnow.ai/api/console/keys - Settings > PopNow if you're on a desktop build, or:

POPNOW_API_KEY=sk-popnow-... python main.py

Nothing else to install; the pack declares no dependencies at all. Delete the old standalone custom_nodes/popnow_api.py if you have it, and restart a second time after setting the key - the node list comes from your account's catalog at startup.

Where people get burned

The upload ceiling nibbles your precision. Input images are re-encoded as PNG before upload, and if the PNG is over 10 MiB the pack falls back to a JPEG at quality 95, 90, then 85. A big, busy 6000px photo will hit that. For a clean cut-out on a high-res product shot, downscale first - you're feeding a segmentation model, not printing the input.

Batch means first image only. The socket takes one image. Connect a batch and the pack uploads the first and logs that it dropped the rest. For a folder of product shots, loop the queue.

Half the cost of the local version is the upload. The KB's API-node writeup makes the honest point: the mechanism is that your input leaves the machine. If the image is a client's unpublished product photo, decide whether a cent is worth that before you queue.

40201 means you're out of credits, not that the image was rejected. Failed runs are refunded; a run you cancelled keeps going on PopNow and is charged if it succeeds, so cancel with that in mind.

CategoryPopNow/Image/Tools

Inputs (1)

NameTypeDefaultDescription
image_urlIMAGEPhoto whose background is removed. The main subject is kept and everything else becomes transparent.

Outputs (3)

NameTypeDescription
imagesIMAGE—
alphaMASKTransparency of each image: 1 is opaque.
task idSTRINGThe PopNow task id, for the API console logs or support.