How to Add a Soft Table Reflection Under a Product Shot
A 12-minute image skill to add a soft table reflection under a product shot. Keep the object. Fade the floor. Midjourney, Flux, or ChatGPT image. One side-by-side check.
Anyone shipping a catalog still can add a soft table reflection under a product shot in 12 minutes: lock the object, fade a faint floor bounce that dies in 20 to 30 percent of the object height, keep that bounce dimmer than the product. Run it in Midjourney, Flux, or ChatGPT image before a wet puddle or a second bottle sits under the SKU.
A product shot table reflection is gravity with a short fade, not a mirror. If you still read a second logo standing on its head, you never faded the floor. One faint contact that is dimmer than the object beats a chrome puddle that looks like a spa ad.
This is not a product shot on a white background. White-on-white is a new set. This skill is a faint floor bounce under the same object. It is not replace a product background and keep the shadow. That skill swaps the ground and holds the contact. This adds a reflection on a table that already exists. It is not a three-pass image revision loop. A revision loop rewrites the whole prompt. This freezes the product and touches only the table. It is not color-match two product photos for a shop grid. Shop grids match products to each other. This matches a reflection to one bottle.
What you need
One product still you will not restyle. The table surface named in the paste (white laminate, matte gray, glass, or wood) or UNKNOWN if none is named. Midjourney, Flux, or ChatGPT image. Twelve minutes and a side-by-side of the original and the edit.
Banned before you start: cinematic wet floor, infinite mirror, chrome puddle, luxury marble unless that marble is already in the paste, extra bottle, full relight, new background, shadow clone of a different product, make it look premium, and a studio bounce that reads as a second SKU.
Add a soft table reflection under a product shot
1. Lock the product. Name the table or write UNKNOWN
Instruct Midjourney, Flux, or ChatGPT image: "Do not generate yet. Paste back five facts from the still I attach: object noun, light side, table surface, whether the current floor is matte or glossy, and the one thing that must not change (label, silhouette, or highlight). If the table surface is not named, write UNKNOWN. Do not invent marble."
Write those five facts on paper. Object noun is "matte ceramic bottle," not "the product." If you cannot name a table, UNKNOWN is the lock. Inventing a glossy slab is a spa floor.
If the model upgrades UNKNOWN into luxury marble, stop. That marble is a new set, not a product shot table reflection.
2. Instruct a faint reflection, not a clone
Instruct: "Keep the exact object, label, lighting, and silhouette. Add a soft table reflection under the base only. The reflection must fade within 20 to 30 percent of the object height. Opacity must stay lower than the object. Do not add a second bottle. Do not relight. Do not change the background."
Good prompt fragment: "same SKU, faint floor bounce under the base, short fade, dimmer than the object, no puddle, no extra product." Bad: "add a cinematic wet floor and a luxury marble reflection so it feels premium." Premium is a spa.
Work from the attached still. Generate-from-memory is how Flux invents a cousin bottle with a chrome puddle.
3. Cap the fade. Kill the second SKU
Open the result next to the original. The reflection should die by about a quarter of the object height. If it runs to the bottom of the frame, you asked for a mirror, not a table.
Hard fail if any of these appear: a mirrored logo that is readable upside down, a wet floor puddle, an extra product clone sitting in the bounce, a hard studio bounce that looks like a second bottle, or a reflection brighter than the object.
Instruct once: "Shorten the reflection to 20 to 30 percent of object height. Lower opacity below the object. Remove any second bottle, puddle, or upside-down logo. Do not restyle the product." If the model restyles the label while shortening the bounce, discard and rerun from the original still.
ChatGPT image will turn the table into a wet plate. Midjourney will grow an infinite mirror. Flux will sometimes clone a second bottle into the bounce. Cut all three gifts.
4. Side-by-side at 200 percent on the base
Crop both frames at about 200 percent on the contact. Mute the rest of the shop grid. Look only at object identity and the fade.
Pass: same bottle, same label, a faint bounce that is dimmer than the object and gone by 20 to 30 percent of height. Fail: a prettier puddle that "looks expensive" in the thumbnail. Expensive is how catalog stills rot.
If the original had no named table, keep UNKNOWN as the existing floor. Do not accept a marble upgrade.
5. One human pass as the shopper who never met the prompt
Lay original and edit in one row. Read them as if you will publish the still on a shop grid in the next hour.
Check five traps: a mirrored logo upside down, a wet floor puddle, an extra product clone, a hard studio bounce that looks like a second bottle, and a reflection brighter than the object. Fix by regenerating the floor bounce only. Do not paint a fake oval and call it a table.
One pass. Export. If you still need to "nudge the luxury" without a side-by-side, you never added a soft table reflection. Stop.
What good looks like
Trigger: You are about to type "add a reflection under the product" or "make the table look glossy and premium."
Input: Product still, object noun, table surface or UNKNOWN, Midjourney/Flux/ChatGPT image, side-by-side.
Output: The same object with a faint table reflection that falls off in 20 to 30 percent of object height and stays dimmer than the product. No puddle. No second bottle. No new background.
Stop: After one side-by-side at 200 percent on the base. No cinematic wet floor. No infinite mirror. No marble you did not paste.
Takeaways
- Lock the product. Name the table or write UNKNOWN. Then add a faint bounce only.
- Fade in 20 to 30 percent of object height. Opacity lower than the object.
- Kill upside-down logos, puddles, extra bottles, and a bounce brighter than the SKU.
- One side-by-side at 200 percent. Thumbnails lie. Premium is a spa floor you ban.
Frequently Asked Questions
Can I add a wet floor so the reflection reads more clearly?
No. A wet floor puddle is a spa ad, not a catalog still. A product shot table reflection is a faint bounce that dies in 20 to 30 percent of object height and stays dimmer than the object.
What if the source still never names a table surface?
Write UNKNOWN and keep the existing floor. Do not invent luxury marble, glass, or a chrome slab. UNKNOWN is safer than a new set you did not paste.
Should I use Midjourney, Flux, or ChatGPT image?
Any of the three works if you attach the still. Flux is steady for object lock. Midjourney needs tight "same SKU, short fade" language. ChatGPT image is fine for a quick bounce if you ban puddles and scene rewrites.
How is this different from replacing a product background and keeping the shadow?
Background replace swaps the floor and holds the contact shadow. This skill keeps the table and adds a faint reflection under the same object. Do not merge the jobs. Do not treat a drop-shadow clone as a reflection.
The bounce looks better if it is as bright as the bottle. Can I ship it?
No. A reflection brighter than the object is a second bottle. Dim it below the product or discard the frame. Pretty is how SKUs clone themselves.