STL to G-code converter

Convert an STL to G-code for your 3D printer, in the browser

An STL is only a shape; a 3D printer needs G-code, the layer-by-layer moves, temperatures and extrusion for one particular machine. The conversion is called slicing. Upload the STL or 3MF, pick your printer among 380+, and SpeakCAD's online slicer converts it with OrcaSlicer and that printer's own profile: a .gcode file, or a sliced .gcode.3mf for Bambu Lab.
How it works

STL to G-code in four steps

Besides the file, the conversion needs the printer, the material and a few print settings. Everything else comes from the printer's profile.
1

Upload the STL or 3MF

Up to 50 MB, after a sign-up with no card. The model shows in 3D in the browser, so you can check its size and orientation before converting.
2

Pick the printer

Its profile sets the bed size, the nozzle, the firmware flavour and the start and end G-code. The preview warns when the model does not fit the bed.
3

Choose the material and quality

Layer height from the printer's presets, a filament preset (PLA, PETG, ABS, ASA, TPU and more), infill, supports, speed, walls and bed adhesion.
4

Download the G-code

A .gcode file, or a .gcode.3mf for Bambu Lab, with the print time, the filament in grams and metres, the layer count and the printed height.

STL to G-code: formats, output and limits

SettingValue
InputSTL or 3MF, up to 50 MB
Output for Bambu Lab (A1, A1 mini, P1S, P2S, X1 Carbon, H2D…)A sliced .gcode.3mf
Output for Prusa, Creality, Elegoo, Anycubic, Voron, Qidi, Sovol and the restA plain .gcode file
Printers380+ models from 60+ brands, with OrcaSlicer's bundled profiles
Slicing engineOrcaSlicer 2.4.2, unmodified, on SpeakCAD's slicer service
Reported with the filePrint time, filament in grams and metres, layer count, printed height, supports added and their weight
Free1 free slice with a free account, no card.
After the free sliceSlicer pack: 20 slices for $3, once, never expire; or 5 credits per slice; included in Pro and Unlimited
Same file, other settingsSpends nothing within 10 minutes of the slice
Starter credits$5 once = 50 credits = 10 slices, no subscription
Daily limit60 slices per account per day, on every plan
Your fileSliced in a temporary folder deleted when the job ends; not kept
DevicesAny current browser: computer, Chromebook, iPad, phone

Why an STL has to be sliced first

An STL file describes the surface of a part as triangles and nothing else: no layers, no nozzle, no temperature, not even a unit (slicers read it as millimetres). A 3D printer cannot print triangles. It runs G-code, a list of commands that move the nozzle, push filament and set temperatures, one layer after another. Slicing is the conversion from one to the other, and it depends on the printer: the same STL gives a different G-code for a Bambu Lab A1 and for a Creality Ender-3.

A 3MF holds the same kind of triangles plus the unit and other details about the model, and it is sliced the same way. STL vs 3MF compares the two.

What a G-code file contains

Open a .gcode in a text editor and you find:

  • A header with the settings it was sliced with and, when the printer's profile asks for them, preview images for the printer's screen.
  • The start G-code from the printer's profile: home the axes, heat the bed and the nozzle, prime a line.
  • Thousands of moves, each a line such as G1 X112.4 Y98.2 E0.0421: go to this point and push this much filament.
  • Temperature, fan and retraction commands from the filament and process presets.
  • The end G-code: heaters off, the nozzle lifted and parked.

Why the G-code must match your printer

G-code is not portable. It carries the printer's bed size and origin, its nozzle diameter, its firmware flavour (Marlin, Klipper, RepRapFirmware and others) and its start sequence. A file sliced for another machine can print outside the bed or at the wrong temperatures, and some printers warn that the file was made for another model. That is why the conversion starts with the printer: each of the 380+ models has the profile OrcaSlicer bundles for it, and the file is sliced with exactly that profile. The online slicer lists the brands and model counts.

The settings that change the print

Most of what a slicer decides comes from the printer's profile. These are the settings you choose, and what each one changes:

SettingWhat it changesWhere to start
Layer heightFinish against time: thinner layers look smoother and take longerThe printer's standard preset
FilamentTemperatures, cooling, flow and speed limitsThe material on the spool
InfillStrength and weight inside the partLow for decorative parts, higher for parts that carry a load
WallsStrength of the outer shell and around screw holesThe profile's count; one or two more for loaded parts
SupportsMaterial printed under overhangsAuto: only where an overhang needs them
Bed adhesionA brim or a skirt around the first layerAuto; a brim for small feet or warping materials such as ABS
SpeedQuiet (0.6 x), Normal or Fast (1.3 x), capped by the printer's and the filament's limitsNormal
OrientationWhich face sits on the bedAuto-orientation: the flattest base and the fewest overhangs

Temperatures, retraction, accelerations, seams, and top and bottom layers come from the printer, process and filament presets as OrcaSlicer ships them. The guides go further: which settings matter for a functional part and print settings by material.

Bambu Lab: a .gcode.3mf, not a .gcode

Bambu Lab printers print a sliced .gcode.3mf, which packs the G-code with its preview images and settings. That is what the converter gives for every Bambu Lab model in the list (A1, A1 mini, H2D, H2D Pro, H2S, P1P, P1S, P2S, X1, X1 Carbon, X1E, X2D): copy it to the printer's microSD card, or open it in Bambu Studio to send it over the network. Every other brand gets a plain .gcode.

After the conversion

  • SD card or USB stick: copy the .gcode (or .gcode.3mf) to it and start the print from the printer's screen.
  • Over the network: upload it through the printer's web page or app (Mainsail or Fluidd on Klipper printers, OctoPrint, PrusaLink).
  • From a phone or a tablet: the file lands in Files or Downloads, and the printer's app or web page takes it from there. From a phone to the slicer covers each route; the iPhone, iPad, Android and Chromebook pages go device by device.

What a conversion costs

The online slicer gives every account 1 free slice, its first (a free account, no card). After that, a slice uses one slice from a Slicer pack (20 slices for $3, once, never expire) or 5 credits, and slicing is included in Pro and Unlimited. Re-slicing the same file with other settings within 10 minutes is free. Slicer pack slices work only in the online slicer. Starter credits ($5 once, 50 credits, no subscription) also pay for 10 slices. Pro ($14.99 a month) and Unlimited ($39.99 a month) include slicing. On every plan, an account can start up to 60 slices a day.

Your file

The file goes from your browser straight to the slicer service, never through SpeakCAD's web servers. It is sliced in a temporary folder that is deleted when the job ends, and it is not kept. The one exception is a file dropped on SpeakCAD's slicer page before signing up: it waits, as a compressed 3MF, in private storage until you open it in the slicer and for 24 hours at most, then it is deleted.

Need to change the model first?

Converting keeps the model exactly as it is. To change a size, widen a hole or add a mount before slicing, edit the STL: SpeakCAD's AI rebuilds it as an editable model with exact millimetres. To make a part from scratch, describe it. Both download G-code for the same printers.

Questions

Slice it: a slicer turns the STL's triangles into G-code for one printer. Online, upload the STL or 3MF to SpeakCAD's online slicer, pick your printer among 380+, choose the layer height, filament, infill and supports, and download the .gcode (a .gcode.3mf for Bambu Lab). On a computer, a desktop slicer such as OrcaSlicer, PrusaSlicer or Cura does the same.

Yes. SpeakCAD's online slicer runs in the browser on a computer, a Chromebook, an iPad or a phone, with OrcaSlicer 2.4.2 and your printer's profile doing the slicing. The online slicer gives every account 1 free slice, its first (a free account, no card). After that, a slice uses one slice from a Slicer pack (20 slices for $3, once, never expire) or 5 credits, and slicing is included in Pro and Unlimited. Re-slicing the same file with other settings within 10 minutes is free.

An STL is the shape of a part, as triangles; G-code is the list of instructions one printer follows to build it, layer by layer: moves, extrusion, temperatures and fan speeds. An STL works with any slicer and any printer; a G-code file is made for one printer, one nozzle and one material.

Yes. The converter takes 3MF as well as STL, up to 50 MB, and slices it the same way with your printer's profile.

Upload the STL, pick your Bambu Lab printer (A1, A1 mini, P1S, P2S, X1 Carbon, H2D or another Bambu model) and slice: the download is a sliced .gcode.3mf. Copy it to the printer's microSD card, or open it in Bambu Studio to send it over the network.

SpeakCAD's online converter is partly free and needs no install: 1 free slice with a free account, no card. It does not renew. After that, a slice uses one slice from a Slicer pack (20 slices for $3, once, never expire) or 5 credits, and slicing is included in Pro ($14.99 a month) and Unlimited ($39.99 a month). Re-slicing the same file with other settings within 10 minutes spends nothing. It is not unlimited: an account can start up to 60 slices a day. Desktop slicers are free: OrcaSlicer, PrusaSlicer and Cura are apps you install on a computer.

Layer height, filament, infill, walls and supports. The rest (temperatures, accelerations, retraction, start and end G-code) comes from the printer's and the filament's OrcaSlicer presets.

Yes. With the file you get the estimated print time, the filament in grams and metres, the layer count, the printed height, and whether supports were added and how much they weigh. The print time and cost calculator gives the same numbers, with the cost, without an account and without the G-code.

Not with this converter: it goes one way, from STL or 3MF to G-code. Keep the STL; it is the file to slice again for another printer or other settings.

STL in, G-code out, for your printer.

Upload the STL or 3MF, pick the printer and the material, download the G-code.