Free · runs in your browser · files stay on your device

Temperature Tower Generator

Make a temperature tower for any filament. Choose the temperature range, step and block height, and download an STL with each block labelled and an overhang and a bridge on every block. Slice it, drop the G-code back here, and the tool adds the temperature change at the start of each block. Everything stays on your device.

Loading the temperature tower generator...

How to make a temperature tower

  1. 1

    Set up the tower

    Pick your filament, or Custom, then the bottom and top temperature, the step, the block height and the base. Check the preview.

  2. 2

    Download and slice the STL

    Download the STL and slice it in Cura, PrusaSlicer, OrcaSlicer or Bambu Studio with your normal profile, the nozzle set to the bottom block temperature. No supports.

  3. 3

    Add the temperature changes

    Drop the sliced .gcode into step 2. The tool adds one M104 line where each block starts and gives you the new file. Or use your slicer's own method below.

  4. 4

    Print and compare

    Print it, then compare the blocks: stringing, the bridge, the overhang, the label and how hard the layers are to snap. Use the best block's temperature.

How to read your tower

Every block has the same features, so the only difference between them is the temperature. Compare them in good light, block by block.

StringingThin hairs across the bridge gap and around the pin. More hairs usually means too hot.
BridgeThe flat span across the gap at the top of each block. Sagging or broken lines: too hot, or not enough cooling.
OverhangThe 45° slope on the left. Curled or droopy edges: too hot. Rough, gappy lines: too cold.
LabelThe raised or engraved number. Sharp digits mean clean, controlled flow.
Layer strengthTry to snap a block off with pliers. Blocks that split easily between layers are printed too cold.
SurfaceHotter blocks are often glossier, cooler blocks more matte. Pick the look you want inside the good range.

Have a photo or idea? Make a printable model with AI

Once your filament is tuned, turn a photo or a sentence into a 3D model with an STL download, ready to slice. The AI generators use credits; this tower generator does not.

More free 3D printing tools

Temperature tower FAQ

A test print made of stacked blocks, each printed at a different nozzle temperature. By comparing the blocks you can see which temperature gives the least stringing, the cleanest bridges and overhangs and the strongest layers for one spool of filament.
An STL only holds the shape. The temperature changes have to be in the G-code. Slice the tower, then drop the .gcode into step 2 on this page, or add the changes in your slicer (see the slicer methods). Also check that your printer host, such as OctoPrint, is not overriding the temperature.
The presets are starting points: PLA 230 to 190 °C, PETG 250 to 220 °C, ABS 260 to 220 °C, ASA 270 to 230 °C and TPU 240 to 210 °C, in 5 °C steps. Your spool label lists the maker's range: cover it, and use Custom for other materials.
Look at each block for stringing, bridge sag, the overhang and the label, then try to snap blocks off to test layer strength. If several blocks look good, the middle of that range is a safe pick; print fast or with high flow at the hotter end.
It reads the layer markers from Cura, PrusaSlicer, SuperSlicer, OrcaSlicer, Bambu Studio, Simplify3D and ideaMaker, and plain Z moves from any other slicer. It needs a plain .gcode file: binary .bgcode and sliced .gcode.3mf files are not supported, so export plain G-code first.
No. It only adds one line per block, M104 S followed by the temperature, at the first layer of that block. Nothing else in the file is edited or removed, so your start G-code, M109 heat-and-wait and end G-code stay as they were.
M104 sets the new temperature without stopping the print, so the nozzle changes over the first few layers of a block. That is why the overhang and bridge are in the top half of every block: they print once the temperature has settled. M109 would pause at each block and can leave blobs.
No. The STL is made and the G-code is changed in your own browser. Nothing is sent to our servers, and there is no signup.

Cura and UltiMaker, PrusaSlicer, SuperSlicer and Prusa, OrcaSlicer, Bambu Studio and Bambu Lab, Simplify3D, ideaMaker and OctoPrint are named only to describe compatibility; The3DAI is not affiliated with or endorsed by them.