Turn any photo into a custom soap dish
The soap dish generator cuts any picture you upload into the drainage pattern of a two-part soap dish: a solid tray and a thin insert that drops into it. Soap sits on the insert, water drains through your picture's cut shape into the tray below. Print both parts flat, no supports, and set the insert in loose.
What the generator does, and what it doesn't
Handled for you
- Traces any uploaded photo, logo or drawing into a clean silhouette, the same tracer behind Meshcast's cookie cutter and stencil tools
- Cuts the picture clean through the insert as drainage slots, sized and centred automatically to fit
- Adds tie bars automatically so anything the cut encloses, like the middle of a letter O or a ring in a logo, stays attached instead of falling out as a loose chip
- Builds a tray with a genuine internal shoulder and drainage well, not just a flat plate with holes in it
- Sizes the insert with a loose drop-in clearance, never a forced press fit
- Exports both parts together: a 3MF with the tray and insert already coloured, or a zip of two STL files
Still your call
- How bold the source picture is. A busy photo with soft edges traces into more, smaller pieces than a clean logo or line drawing does
- The tray's footprint, so it actually fits the bar of soap you have
Why two parts
A one-piece soap dish with holes in the bottom looks right and fails the same way every time: the bar sits directly in the water it just shed, because there's nowhere for that water to go but sideways under the soap. Splitting the dish into a tray and a raised insert fixes it structurally rather than cosmetically. The insert holds the bar up on a shoulder, and whatever pattern is cut into it becomes the only path water has off the bar and down into a real reservoir underneath, where it can evaporate or get tipped out.
The pattern is not decorative filler on top of that idea, it is the drainage. A denser picture with more open area between shapes drains faster; a single small silhouette in the middle of a mostly-solid insert drains slower. Both work, but it is worth knowing which you are choosing.
Make one in 3 steps
Design the dish
Upload a bold, high-contrast picture: a logo, a line drawing, initials, or a photo with one clear subject against a plain background. Pick rounded rectangle or oval, then set the width, length and height to fit the bar of soap you actually have, plus a little room. Watch the preview: the cream insert should show your picture as clean open slots, seated inside the terracotta tray.
If the cutoff slider auto-picked a threshold that misses part of the picture, drag it until the traced shape matches what you expect, or turn on Invert if the tool cut the background instead of the subject.
Print both parts
Both the tray and the insert print flat on the bed, no supports. 0.16-0.2 mm layers work for the tray; if the insert's pattern is fine detail, a slower 0.12 mm layer shows it off better. Use PETG or ABS rather than PLA, since a soap dish lives in standing water for years and PLA softens under that kind of repeated wet exposure.
Assemble and use
Drop the insert into the tray's opening. It rests loose on an internal shoulder a little below the rim, nothing to glue or snap in. Set your bar of soap on the insert. Water sheds off the bar, runs through your picture's cut shape, and collects in the tray below instead of pooling under the soap.
Which options matter
| Option | What it changes |
|---|---|
| Height | Tray wall height. Taller leaves a bigger drainage reservoir below the insert; the sidebar shows the resulting well depth once a picture is loaded. |
| Wall / Insert thickness | Print strength and rigidity. 3 mm on both is a good default for a dish that gets picked up wet and set down daily. |
| Border (pattern margin) | Solid margin kept around the cut pattern. Wider keeps the insert's own rim strong; narrower lets a small picture fill more of the available space. |
| Fit (clearance) | Gap between the insert and the tray's opening. Raise it if a printed insert feels tight; the fit is meant to be loose, never forced. |
| Bridges | Width of the tie bars holding enclosed pattern pieces in place. Widen it if the sidebar reports a piece was dropped. |
| Cutoff / Invert | How the picture is read into a black-and-white silhouette before tracing. Adjust if the preview cuts the wrong side of your picture. |
Troubleshooting
My picture traced into a mess of tiny disconnected shapes
Cause Almost always a low-contrast photo or very fine linework, where the tracer can't decide cleanly which pixels are "shape" and which are "background".
Fix Use a bolder image, raise the contrast before uploading, or nudge the cutoff slider until the preview shows one clean pattern instead of scattered specks.
Part of my pattern is missing from the preview
A piece the cut fully enclosed, like the counter of a letter or a small isolated detail, may have had nothing solid nearby to bridge it to, so it was dropped rather than shipped as a chip that would fall off mid-print.
Fix Try a bolder version of the image, or widen Bridges under Advanced settings.
The insert doesn't sit flush with the rim
That's by design. The insert rests on an internal shoulder a little below the rim, not flush with the top edge, which is what leaves the tray's own rim visible as a frame around it.
If it feels tight raise the Fit slider under Advanced settings by about 0.2 mm. Printed parts usually come out a hair oversize.
What filament should I print a soap dish in?
PETG or ABS rather than PLA. A soap dish sits in standing water and steam for years, and PLA absorbs moisture and softens under that kind of repeated wet exposure. PETG is the easier of the two to print and handles a bathroom fine.
Can I skip the pattern and just print a plain tray?
Download waits for an uploaded image, since the cut pattern is the whole point of this generator. For a plain dish with no drainage cut, this specific tool is not the right one; any simple printable tray design works fine for that.
Does it actually drain, or does water just sit under the insert?
It drains into a real reservoir. The tray is built with a genuine well below the insert, deep enough that water collects there rather than touching the bar, and empties out or evaporates between uses like any soap dish basin.
Made by meshcast.app. Got stuck? Email a photo and I'll help you debug.