A printable planter built from your own model or from the shape controls: a pot with a real drainage hole, an optional drip tray, and feet so the base is not sitting in a puddle. Sizes are true millimetres, so it fits the plant you actually have.
Nearly every dead houseplant in a printed pot died of root rot, not neglect. A sealed pot has nowhere for water to go, so the roots sit wet.
FDM prints are not watertight by default. Water finds the gaps between layers and weeps out through the wall, which is slow enough that people blame the plant rather than the pot.
| Approach | Effort | Result |
|---|---|---|
| Nursery pot inside, planter as a cachepot | None | Completely reliable, and the usual answer |
| 4+ perimeters, 0.16 mm layers | Low | Much better, not guaranteed |
| Brush-on epoxy or pond sealer inside | Medium | Genuinely watertight |
| Plastic liner or a bin bag offcut | Low | Works, looks less good |
| Setting | Use | Why |
|---|---|---|
| Material | PETG for anything watered | PLA slowly degrades in constant damp, and warps in a sunny window |
| Walls | 4 perimeters | Watertightness comes from perimeters, not infill |
| Layer height | 0.16 to 0.2 mm | Finer layers leave fewer paths for water |
| Infill | 10 to 15% | The walls carry the load |
| Supports | None | A pot prints base-down with no overhangs |
| Outdoors | PETG or ASA | PLA fails quickly in UV and heat |
Normal for an FDM print. Add perimeters and print finer, seal the inside with brush-on epoxy, or use the pot as a cachepot with a nursery pot inside it. The last option is free and never fails.
Usually root rot from no drainage. If the pot has no hole, water pools at the bottom out of sight. Print the hole, add feet so it can drain, and let the compost dry between waterings.
PLA in direct sun. A sunny windowsill gets hot enough to soften it. Reprint in PETG or ASA.
Measure the nursery pot, not the plant, and add a couple of millimetres of clearance. The on-screen dimensions are real millimetres, so check them before printing rather than judging from the preview.