For readers evaluating a 3d ai maker for printable models, this comparison shows how Tripo and SupaVoxel handle mesh structure, repairs, and print preparation from the same source image.

Independent review: both products were tested on my own accounts — free where offered and paid where not — with no vendor-provided access.
My verdict in 60 seconds — Tripo 65/100, SupaVoxel 88/100
One photograph of a cable-knit decorative tray, put through Tripo and through SupaVoxel, both GLB files downloaded, welded by position, measured with one script I wrote. This is the case where the print-prep sheet goes to Tripo. Tripo welds into a single watertight shell — 1 component, 0 boundary edges, 0 non-manifold edges — and the only thing wrong with it is inconsistent face winding. SupaVoxel's mesh has consistent winding and is not watertight: 225 components and 336 non-manifold edges, the highest component count of the ten objects I ran. Tripo's repair is one click. SupaVoxel's is a merge, a cleanup and a patch.
- Watertight after welding — Tripo yes · SupaVoxel no · Tripo wins, and it is not close
- Connected components — Tripo 1 · SupaVoxel 225 · 224 detached islands buried in the knit relief
- Non-manifold edges — Tripo 0 · SupaVoxel 336 · Tripo wins
- Boundary edges (open holes) — Tripo 0 · SupaVoxel 0 · tie, neither has a gaping hole
- Winding consistent (normals) — Tripo false · SupaVoxel true · one recalculate pass owed on every Tripo model
- Sliver faces — Tripo 189 · SupaVoxel 31 · SupaVoxel 6.1× better, on half the triangle budget
- Degenerate faces — Tripo 0 · SupaVoxel 0 · tie
- Support area at 45° — Tripo 3,612.0 mm² (9.04%) · SupaVoxel 4,549.7 mm² (11.77%) · +937.7 mm² of sanding on the SupaVoxel print
Five things that decide this case:
- SupaVoxel's mesh is not a solid. 225 shells means the body plus roughly two hundred islands inside the knit, invisible in every render; print prep starts with merge-by-distance, delete-loose and a non-manifold patch.
- Tripo's mesh is a solid with its faces half-inverted, and Tripo's viewer has no normals mode and no wireframe mode, so you cannot find that out until the file is on your disk.
- The SupaVoxel tray asks for 937.7 mm² more support contact — 11.77% of the surface against Tripo's 9.04% — because it renders the cables as fatter tubes, and the underside of a fat tube is downward-facing area.
- Triangle hygiene goes the other way, once and loudly: 31 slivers against Tripo's 189, 0 degenerate faces on both sides, on 971,646 triangles against Tripo's 1,905,766. Do not over-read it — the solid row costs more than this row saves.
- All of Tripo's geometry advantage here costs 55 credits against 3 and 63.61 MB against 5.71 MB, and it still arrives needing a normals fix.
If the job is "slice this tray tonight as a closed solid," Tripo has the better starting file and I will not pretend otherwise. If the job is a hundred trays, a product page, or a budget, SupaVoxel is the one — the trade ratio is at the end: 52 credits and 57.90 MB per model.
The test: one photo, one tray, two tools

The single input: a 1,794,081-byte PNG, sha256 ae8f6d6a…, one off-white round tray, low rim, two punched-through handles, cable-knit relief over the whole surface. A three-quarter top view, so neither tool ever saw the underside or the back of the rim.
Same file, same defaults, one run each. Every number below was parsed out of the downloaded GLB, not read off a panel, and every print metric was computed after welding vertices by position — both exports split vertices along UV seams, so measuring before welding measures seams, not topology.
Where Tripo wins outright: one watertight shell

Tripo's tray at the reference camera. What matters here is invisible: welded, this is a single closed solid.
- Watertight — Tripo yes · SupaVoxel no
- Connected components — Tripo 1 · SupaVoxel 225
- Non-manifold edges — Tripo 0 · SupaVoxel 336
- Boundary edges — Tripo 0 · SupaVoxel 0
Tripo passes the checklist most people run before slicing. SupaVoxel passes three of four and fails the one that matters most for boolean work, shelling and hollowing. On this tray Tripo hands you a solid and SupaVoxel hands you a body with debris in it.
SupaVoxel's loss, first and plainly: 225 shells and 336 non-manifold edges

The SupaVoxel tray at the same camera. Nothing looks wrong. It is 225 connected components — one body plus 224 detached shells embedded in the knit relief, none visible at any camera angle.
This is the largest single defect in the case and it belongs at the top, not in a footnote. 225 components is the highest count of the ten objects I ran. In workshop terms: Tripo's model needs one Recalculate Normals; SupaVoxel's needs merge by distance, then delete loose geometry for the 224 islands, then a non-manifold pass over 336 edges. Minutes per model in Blender rather than seconds, and at a hundred models that is an afternoon against a morning.
What it is not is an open hole — boundary edges are 0 on both sides. It is debris and shared edges: annoying rather than fatal. Slicers with auto-repair usually get through it. Boolean operations will not.
Tripo's defect is the one its own viewer cannot show you

SupaVoxel's Normals view: every cable shaded as its own smooth band, teal through magenta as the surface turns, with no patch where neighbouring faces disagree. My script agrees — winding consistent on the welded SupaVoxel mesh, and inconsistent on Tripo's.
Tripo built a closed shell and left part of it inside out. Renderers tolerate it — which is why nothing looks wrong in Tripo's viewer — but booleans and shell operations do not. The repair is cheap, one recalculate-normals pass; the problem is you owe it on every Tripo model and Tripo gives you no way to notice. Its viewport has a textured model and a material strip: no wireframe, no mesh mode, no normals mode. A hundred trays through Tripo is a hundred unscheduled normals repairs on top of 5,500 credits.

SupaVoxel's Wire view, one click away on the same page: the cables and rim ribs are in the mesh itself. Textured / Mesh / Wire / Normals all sit one click apart; Tripo has none of them, so the winding check this article turns on is unavailable to a Tripo user at any price.
Triangle hygiene: 31 slivers against Tripo's 189

Tripo's finished result reports 1905766 faces and 980947 / 980947 vertices, matching the parsed GLB exactly — on self-reporting Tripo is straight. The left half of that line is covered by a "View Your Model" dialog you must dismiss first.
- Sliver faces — Tripo 189 · SupaVoxel 31 · 6.1× worse on Tripo
- Degenerate faces — Tripo 0 · SupaVoxel 0 · tie
- Triangles — Tripo 1,905,766 · SupaVoxel 971,646 · Tripo has 2.0× more, so "they just have more triangles" does not explain the slivers
This row goes to SupaVoxel, and it runs opposite to most objects in this batch, where Tripo's triangle population is the cleaner one. Here needle-thin triangles are 6.1× more common in Tripo's mesh even though Tripo spent twice the budget.
Do not over-read it. A clean triangle population inside a mesh that is not a solid is worth less than a scruffier one inside a mesh that is. SupaVoxel wins this row and still loses the print-prep sheet.
Support area: 937.7 mm² more sanding on the SupaVoxel tray

SupaVoxel, side view. Both handles are genuine through-holes — you can see sky through them. The rim cables are smooth fat tubes, and the underside of a fat tube is downward-facing area.

Tripo at the same camera. Same true through-holes, but the relief is organised into directional rib rows with clear separation, so less of the surface hangs below 45°.
- Overhang area at 120 mm — Tripo 3,612.0 mm² · SupaVoxel 4,549.7 mm² · +937.7 mm² on SupaVoxel
- Overhang as a share of surface — Tripo 9.04% · SupaVoxel 11.77% · Tripo wins
That extra 937.7 mm² is real support contact and real sanding, and the cause is visible above: SupaVoxel's cables are rounder and fatter, and fat round things hang. Second of three rows against SupaVoxel here.
Mean edge length against a 0.4 mm nozzle

SupaVoxel from above: a true circle, cable columns running parallel across the floor, both handle holes open. The separation bands between cables have gone soft.

Tripo from above: the same circle and the same layout, but you can count the columns — cable, seed, rib, cable — and the outer rim is scalloped stitch by stitch.
- Mean triangle edge at 120 mm — Tripo 0.2384 mm · SupaVoxel 0.3333 mm · Tripo 1.68× finer than a 0.4 mm nozzle, SupaVoxel 1.20× finer
- Cable pitch on the subject — roughly 4 mm · both meshes resolve the cable itself with room to spare
Both are past the nozzle, so neither tool had any technical need to fake the relief with a texture, and neither did. The detail SupaVoxel lost is missing from the geometry, not from the printer.
Resin at 120 mm: $2.80 against $2.95
- Solid volume at target height — Tripo 84.41 cm³ · SupaVoxel 79.89 cm³
- Resin cost at $35/L — Tripo $2.95 · SupaVoxel $2.80 · SupaVoxel saves $0.15, 5.1%
- Bounding box at target — Tripo 120.0 × 24.01 × 119.97 mm · SupaVoxel 119.74 × 23.86 × 120.0 mm
SupaVoxel's tray is 4.52 cm³ lighter: $0.15 a print, $15 across a hundred. I do not bank that as a win — the missing volume is the seed field and fine ribs it did not model.
Tripo's triangle count is a house budget, not a response to this tray
Across the nine other objects I ran, Tripo emits 1,896,372 to 1,996,779 triangles whatever the subject — a 5.2% spread over an armoured vehicle, a skull, a candle holder and this tray alike. Tripo's 1,905,766 here is a house number, not a reaction to knit density. SupaVoxel's moves with the subject: 945,492 to 2,786,054 over the same batch, a 146% spread, and on that armoured vehicle SupaVoxel emitted 44% more than Tripo. There is no ceiling on the SupaVoxel side. So read the 971,646 as a choice about this tray, not a virtue and not a cap. Ten objects is a sample, not a law.
Getting the file out: two clicks and a 4k default

Tripo's export dialog. The file name auto-fills to "woven basket 3d model" — Tripo classified a knitted tray as a woven basket. Texture Resolution defaults to "4k Current", which is what turns this into a 63.61 MB download. No face count, no LOD, no warning about size.
Tripo's path from viewport to file is 2 steps. The trap is the default — leave Texture Resolution alone and you take three 4096×4096 maps with you, 9.35 MB, one of them a 4.72 MB PNG normal map no slicer reads. Nothing in Tripo's dialog says so, and there is no decimation option for the 1,905,766 faces either.
What I did not capture

This frame is byte-identical to the previous step — the SupaVoxel export panel was not captured this run. It is a recording gap, not a missing feature: the Export dropdown is visible in the result-page header two images down.
- SupaVoxel export click count — not captured. That screenshot is the same file as the one before it, so it reads "not captured" rather than an estimate. Tripo's is 2 steps, captured.
- Charge timing on the SupaVoxel side — not captured. On Tripo's it is on submit: the balance in the top bar fell 845 → 790 while the job was still generating.
- Wall thickness — not captured. No thickness field in my measurements, so I will not tell you which rim survives a drop better.
- Two wireframe zoom renders — discarded. At 971,646 and 1,905,766 triangles both render near-solid black at that focal length; I opened both to confirm real density rather than a blank frame, and neither is used as evidence.
- Orientation alignment — partial. My probe covered 0/90/180/270 on Tripo but crashed the headless browser after 0 and 90 on SupaVoxel. Verified: at yaw 90 both SupaVoxel handles sit left and right and are visible, matching Tripo's yaw-0 framing. "Fully aligned" is more than this run supports.
Final verdict: Tripo scores 65/100

The SupaVoxel result page: Triangles 971,646, millimetre dimensions toggleable to raw, a timestamped version in the dropdown, four inspection modes top-left. Panel and parsed GLB agree to the digit.
Tripo earned this score: the one watertight single-shell tray in the comparison, 0 non-manifold edges, 937.7 mm² less support area, and an honest face count. Then Tripo shipped that shell with inconsistent winding in a viewer that cannot show winding, 1,905,766 triangles with no decimation control, a 63.61 MB download driven by a default you have to find yourself, and a file name calling a knitted tray a woven basket — for 55 credits.
SupaVoxel's file needs no normals pass, has 6.1× fewer slivers, and costs 3 credits and 5.71 MB. It also arrives as 225 shells with 336 non-manifold edges and wants 937.7 mm² more support. Two real losses, stated at the top and again here. One run each, defaults — a sample of one per tool on this object, not a statistic.
Which one I would use for this job
If the tray is going onto a product page, into a batch, or anywhere 63.61 MB per asset and 55 credits per attempt bind, SupaVoxel is the one I would hand you: 3 credits, 5.71 MB, consistent winding, 31 slivers, four inspection modes before you download. Take Tripo if this tray must arrive as a closed solid you never open a mesh editor for — on this object that is worth the 52 extra credits and 57.90 MB, and I would rather say so than sell you a repair job as a feature.
Originally published on Medium: Tripo 3D Print Review 2026: Flipped Faces in a Watertight Tray.