
As of November 2026, ChatGPT can make STL files for simple parts: it can write a basic STL directly, but the dependable route is asking it for OpenSCAD code that you render and export as STL or 3MF in the free OpenSCAD app. If you'd rather skip the code, we'd use GrandpaCAD: it connects to ChatGPT and Claude, so you keep the chat you already know, and builds the part with a slider for each dimension, as 3MF, STL or STEP.
Try GrandpaCAD free 3 free generations · downloads from $12
Here's how the OpenSCAD route works, what to put in the prompt, what usually breaks, and when a dedicated tool saves you the loop.
YesPartlyNoNot listed
| ChatGPT, Claude or Gemini + OpenSCAD6.5 / 14 | Criterion | GrandpaCADour pick13 / 14 |
|---|---|---|
| Exact mm×3 | ||
| Edit after×2 | ||
| Sculpts×2 | ||
| STL/3MF×2 | ||
| No CAD skills×2 | ||
| Multi-colour×1 | ||
| STEP×1 | ||
| Free files×1 |
Made by the GrandpaCAD team. We set the criteria and score every tool ourselves, GrandpaCAD included. No sponsors or affiliate links. How we score
The short answer
A chatbot can write a cube or a wedge straight into an STL (more on that below), but past simple shapes it's far more reliable at writing OpenSCAD code, and OpenSCAD exports STL and 3MF. So the route is: prompt, copy code, render, export, slice. For a box, a bracket or a spacer, that takes a few minutes. For a hinge or an enclosure with snap fits, expect to go back and forth.
What you need: a ChatGPT, Claude or Gemini account (free tiers work), OpenSCAD installed (free, Windows, macOS and Linux), and your slicer.
Step by step
Ask for OpenSCAD code, with numbers
Name the language, give every size in millimetres, and ask for the sizes as variables at the top. Variables are what let you change the part later without asking again.
prompt: Write OpenSCAD code for an open...Write OpenSCAD code for an open box 60 mm wide, 40 mm deep and 25 mm tall with 2 mm walls and a 2 mm floor. Put every dimension in a named variable at the top of the file. Use only built-in OpenSCAD modules (no libraries). Reply with the code only.
Check the code looks like this
Good output is short and readable: variables first, then geometry built from them. This is the kind of file you should get back.
OpenSCAD code// Parametric box: change these numbers, press F6, export STL width = 60; // mm depth = 40; // mm height = 25; // mm wall = 2; // mm difference() { cube([width, depth, height]); translate([wall, wall, wall]) cube([width - 2 * wall, depth - 2 * wall, height]); }Paste it into OpenSCAD and render
Open OpenSCAD, paste the code into the editor, press F5 for a quick preview, then F6 to render the final solid. If the console shows an error, copy the error back to the chatbot word for word.
Export STL or 3MF
Use File, then Export, then STL (or 3MF). OpenSCAD has no units of its own, and slicers read STL numbers as millimetres, so a 60 in the code is 60 mm on the bed.
Check it in your slicer before printing
Read the size the slicer reports, look at it from below and the sides, and note any repair warning. For a part that has to fit something, print a thin test slice of the critical feature first.
Iterate by describing what's wrong
Say exactly what's off ("the hole is on the wrong face, it should go through the 40 mm side"). Commenters in a Hacker News thread on AI CAD suggest feeding a screenshot of the render back to the chatbot, and checking it from several angles.
Need a starting point? Our 25 copy-ready AI CAD prompts work as OpenSCAD requests too: add "Write OpenSCAD code for" in front.
Can ChatGPT write an STL file directly?
Yes, for very simple shapes, in two ways.
- As ASCII STL. STL has a plain-text variant: a list of triangles, each written as a "facet normal" with three "vertex" lines, between
solidandendsolid. A chatbot can type that out for a cube (12 triangles) and you save it ascube.stl. Source: Wikipedia: STL file format, checked - Through Python. On ChatGPT plans where it can run Python, it can build the mesh in code and hand you the file as a download link. OpenAI documents the Python environment; users on OpenAI's forum report that those links sometimes fail or expire, so download the file straight away. Source: OpenAI help: data analysis with ChatGPT (runs Python; search snippet, page blocked our fetcher), checked Source: OpenAI community: downloads of files created by ChatGPT, checked
solid cube
facet normal 0 0 -1
outer loop
vertex 0 0 0
vertex 20 20 0
vertex 20 0 0
endloop
endfacet
...11 more facets for the other faces...
endsolid cubeBoth break down quickly. A cube is 12 triangles; a bracket with a fillet and two holes is thousands, and every one has to face outward and meet its neighbours exactly or the slicer reports a broken mesh. There are also no variables, so changing one size means generating the whole file again. Use the direct route for a test cube or a wedge, and OpenSCAD for anything you'll measure.
Can ChatGPT make G-code?
It can write or edit G-code text, and it's handy for explaining a line you don't understand or drafting a start script for your printer profile. Don't ask it to turn a model into G-code, though. G-code for a print is the toolpath for every layer, which depends on your printer, nozzle, filament and slicer settings, and a slicer computes it exactly. Make the STL or 3MF (with OpenSCAD or a CAD tool), slice it in Bambu Studio, PrusaSlicer, OrcaSlicer or Cura, and check the preview before you print. Treat any G-code a chatbot writes as untested: read it before it moves your printer's axes or heats the nozzle.
What goes wrong
These are reports from makers, not our own tests. They're anecdotal, from the threads and articles we could read.
- Spatial mistakes: "LLMs are still very weak at spatial reasoning", with objects rotated 90 degrees and through-holes that don't go through. Source: Hacker News thread on LLM CAD (May 2026), checked
- Code that fails to compile on a
union, and a print that "looked nothing like" the preview. Source: MRH forum: ChatGPT to OpenSCAD to print, checked - From-scratch models that didn't work well, while editing an existing model worked better. Source: MakeUseOf: designing parts with Claude, checked
Two habits help: keep parts simple and dimensioned, and start from code that already works instead of asking for everything at once.

Claude, Gemini and other chatbots
The process is identical: they all write OpenSCAD. If you need a STEP file, ask for CadQuery or build123d (Python libraries) instead, which export STEP as well as STL; you'll need Python installed to run them. We haven't compared chatbots on CAD code, so we can't tell you which is best.
Plans cost money only if you outgrow the free tier. Claude Pro is $20 a month ($17 billed annually) and Google AI Pro is EUR 21.99 a month on the EU listing. Source: Claude pricing, checked
When a dedicated CAD tool is faster
The chatbot route means you run the loop: paste, render, describe errors, repeat. GrandpaCAD runs that loop for you. Below, the do-it-yourself route, CADAM and GrandpaCAD on the same criteria as our main ranking.
YesPartlyNoNot listed
What you keep by doing it yourself
The chatbot route is free or close to it, and you own and can read every line of code; GrandpaCAD doesn't hand you the code. If you enjoy the code, that's a real advantage.
Questions people ask
Can ChatGPT make STL files?
Yes, for simple parts. The dependable way is indirect: ask it for OpenSCAD code, paste the code into OpenSCAD (free), render it and export an STL or 3MF. It can also write a basic STL directly, but only for shapes like a cube. For anything complex expect several rounds of fixes.
Can ChatGPT write an STL file directly?
For very simple shapes, yes. It can type out an ASCII STL (a plain-text list of triangles) for a cube, or, on plans where it can run Python, build the mesh in code and give you a download link. Past a cube or a wedge both break down, because a real part has thousands of triangles and no variables to change, so ask for OpenSCAD code instead.
Can ChatGPT make G-code for my 3D printer?
It can write or explain G-code text, but don't use it to slice a model. Print G-code depends on your printer, nozzle, filament and settings, and a slicer such as Bambu Studio, PrusaSlicer, OrcaSlicer or Cura computes it exactly. Make the STL or 3MF, slice it, and read any chatbot-written G-code before it runs.
Can Claude make STL files?
The same way: Claude writes OpenSCAD, CadQuery or build123d code that you render yourself. CadQuery and build123d can also export STEP. We haven't compared ChatGPT and Claude on CAD code, so we won't tell you one is better.
Are STL files from ChatGPT printable?
If the OpenSCAD code renders, the result is usually a closed solid at the millimetres in the code, which slices fine. The common failures are code that doesn't compile and shapes that differ from what you asked for, such as holes in the wrong place. Check sizes and run your slicer's repair check before printing.
Can ChatGPT make a 3MF file?
Through OpenSCAD, yes: export the rendered model as 3MF instead of STL. Multi-colour 3MF from OpenSCAD takes extra work, because each colour has to be a separate part.
Is there a way to make 3D models inside ChatGPT or Claude without code?
Yes, through a connector (MCP server) that does the modelling. GrandpaCAD has one: in ChatGPT it currently connects through developer mode, and in Claude as a custom connector. Free accounts get 3 generations; downloading files needs a paid pack or plan. Setup steps are on GrandpaCAD's ChatGPT and Claude page.