How it works
Try it first, pay when it is good enough

empty-living-room.jpg
1/4Open a model on Replicate and give it a photograph.
Start to finish
Four steps, and only the last one costs you anything
- Stage 1
Pick the model that matches the job
Each of the seven does one thing. Empty room to furnished is virtual staging; furnished to empty is furniture removal; a specific object going away is object removal.No install, no sign-up with us - Stage 2
Run it on Replicate
Upload a photograph, set the options that model exposes, and run it. You need a Replicate account, and Replicate bills the compute to your own token.Full-quality resultPlaygroundHTTP APIPythonNode - Stage 3
Judge the watermarked output
The result carries a watermark. Everything else about it is final, so this is a real test of whether the model is good enough for your work. Re-run it as often as you like.Free from us - Stage 4
Add a token for clean images
Ask us through the form, we issue a token, and you pass it in the optional watermark_remove_token field. The same output comes back without the watermark.$100 a month for 1,000 images
From your own code
The same thing, as an API call
The playground is convenient for one image. For a shoot, or for anything inside your own product, call the model through Replicate’s API with your own token.
curl -s -X POST \
https://api.replicate.com/v1/models/proplabs/virtual-staging/predictions \
-H "Authorization: Bearer $REPLICATE_API_TOKEN" \
-H "Content-Type: application/json" \
-H "Prefer: wait" \
-d '{
"input": {
"image": "https://example.com/empty-living-room.jpg",
"replicate_api_key": "'"$REPLICATE_API_TOKEN"'",
"room": "Living Room",
"furniture_style": "Scandinavian"
}
}'Combining models
Two models are often better than one
The models are deliberately narrow, which means the interesting results come from running them in sequence.
Occupied room to staged
Furniture removal clears the occupant’s belongings, then virtual staging furnishes the empty space in whatever style you want.
- furniture-removal
- virtual-staging
Grey exterior to hero shot
Object removal takes out the cars and bins, sky replacement relights the scene, and lawn enhancement fixes the grass.
- object-removal
- sky-replacement
- lawn-enhancement
Phone capture to listing image
Photo enhancement corrects the exposure and colour first, so anything you run afterwards is working from a clean input.
- photo-enhancement
- virtual-staging
Being clear about money
Two separate bills
Replicate charges you for compute on every run, watermarked or not, at their published rates and on your own account. We charge only for watermark-removal tokens. “Free to try” means free of any charge from us.
- Replicate: compute, per run, billed by them
- PropLabs: $100 a month for 1,000 images, only for clean output
- Nothing to pay us until you want the watermark gone
- Volume pricing quoted on request
FAQ
Questions, answered
No. The models are published publicly on Replicate. You need a Replicate account to run them, and you pay Replicate for the compute. You only need to contact us if you want the watermark removed, volume pricing, or a custom model.
Output is watermarked by default and free to try — you pay only Replicate for the generation, on your own API token. Replicate bills compute per run at their published rates, so what a run costs is between you and Replicate.
The watermark is what makes the models free to try. You can run any of them as many times as you like, see exactly what they produce, and decide whether the quality is good enough for your work before paying us anything.
Every model takes an optional watermark_remove_token input. Supply a token and the output comes back clean. A token is $100 USD a month and covers 1,000 images in that month. Ask through the contact form and we will issue one.
Run furniture removal first to clear it, then virtual staging to furnish it in the style you want. The two models are designed to chain in that order.
No. Object removal takes a plain description of what you want removed rather than a mask, so there is nothing to paint or trace.
