---
title: "Hotend, filament and flow: getting 3D-printing settings out of folklore"
locale: "en"
url: "https://irz.fr/en/articles/meltcalc-hotend-filament-flow-en"
markdown_url: "https://irz.fr/en/articles/meltcalc-hotend-filament-flow-en.md"
category: "tech"
tags: ["3d-printing", "hotend", "filament", "extrusion", "calibration"]
published_at: "2026-08-19T10:32:00.000Z"
author: "Léa Perrin"
translation: "https://irz.fr/fr/articles/meltcalc-hotend-filament-flow-fr.md"
---

# Hotend, filament and flow: getting 3D-printing settings out of folklore

“PLA at 210 °C” says very little about sustainable print speed. MeltCalc puts the missing variable back in view: volumetric flow and the conditions under which it was measured.

“My PLA prints at 210 °C” can be perfectly true and still tell us almost nothing about how far that material can be pushed through a particular hotend in practice.

At 40 mm/s with a small layer, a hotend may have plenty of time to transfer heat into the polymer, while at 250 mm/s with a thick, wide extrusion the same displayed temperature says far less about the state of material leaving the nozzle. The thermistor reports the temperature of part of the hotend, incoming filament still has only its residence time to absorb enough energy before extrusion.

That is the kind of folklore **MeltCalc** is trying to replace with data.[1](https://github.com/robertsamples/meltcalc)[2](https://hackaday.com/2026/08/18/a-hot-end-and-material-database-for-3d-printing/) The project brings hotend, nozzle and material choices around a variable much more useful than linear speed alone, **volumetric flow**, measured in mm³/s, which Prusa also uses in slicer profiles to describe the amount of filament a hotend can melt and push through per second.[3](https://help.prusa3d.com/article/max-volumetric-speed_127176) Once that quantity is visible, many 3D-printing arguments become much easier to describe without resorting to recipes.

## 200 mm/s means nothing without line width and layer height

Two prints both advertised at 200 mm/s can ask radically different things from the hotend because volumetric flow depends on the cross-section being deposited as well as movement speed. In simplified form, **flow = layer height × extrusion width × speed**.

At a 0.2 mm layer, 0.45 mm extrusion width and 200 mm/s, the request is about 18 mm³/s, while a 0.3 mm layer and 0.65 mm line width at the same speed already asks for 39 mm³/s, so the marketing number remains identical even though the hotend has to heat more than twice as much polymer every second.

> Volumetric flow
> **Linear speed is only one of three factors**
> - Layer height in the first example.: 0.20 mm
> - Extrusion width.: 0.45 mm
> - Requested linear speed.: 200 mm/s
> - Approximate material flow the hotend actually has to sustain.: 18 mm³/s
> At the same speed, increasing layer height or line width immediately increases thermal load.

This is why modern slicer profiles often limit **maximum volumetric speed** instead of treating one linear speed as universal.[3](https://help.prusa3d.com/article/max-volumetric-speed_127176) The slicer can move quickly on a thin extrusion and slow down automatically when a path asks for much more material.

The ceiling becomes a physical constraint shared across several movement types and belongs to the whole extrusion configuration rather than to the filament alone.

## A hotend does not own one universal maximum speed

Describing a hotend as “30 mm³/s” is tempting because the number looks like a property engraved into its copper, yet sustainable flow depends on heater power, melt-zone length, internal geometry, nozzle, temperature, polymer, real filament diameter and even the criterion used to decide when extrusion has become unacceptable.

A longer melt zone can provide more contact area and residence time. A specialised high-flow nozzle can divide or lengthen the melt path to improve heat transfer. Higher temperature often lowers viscosity and expands flow headroom, while also changing stringing, polymer degradation and other trade-offs.

In practice, maximum flow is better understood as **a test result for a configuration** than as a permanent property of one object. This is where a database like MeltCalc becomes useful. A result such as “25 mm³/s works” only becomes reusable once it travels with **which hotend, which nozzle, which material and which test conditions** produced the number.[1](https://github.com/robertsamples/meltcalc) Without that provenance, a local benchmark quickly becomes a universal rule by repetition.

## Filament has more properties than printing temperature

Consumer filament databases often look like temperature tables, with PLA around one range, PETG another and ABS higher again. Filament Cheat Sheet already goes further by separating brands, material families and recommended settings,[4](https://filamentcheatsheet.com/database/) but those values remain starting points rather than a complete description of extrusion behaviour.

Two PLA formulations can contain pigments, fillers and additives that change viscosity, crystallisation, adhesion or thermal behaviour, while fibre-filled filament can alter flow behaviour in addition to demanding an abrasion-resistant nozzle. A polymer that becomes relatively fluid at temperature does not impose the same pressure and heating constraints as a more viscous material pushed at the same rate, and even colour is likely to matter when the formulation changes enough.

So asking “what is the maximum flow of this hotend?” almost immediately raises a second question, “with which filament?”, and the reverse is equally true because a material sheet cannot give one maximum speed independently of the machine melting it.

> One result, four coordinates
> **Flow data is comparable only when context travels with it**
> - Thermal architecture, melt-zone length and heating power.: Hotend
> - Diameter, material and internal geometry.: Nozzle
> - Polymer, formulation, real diameter and material condition.: Filament
> - Temperature, method and criterion used to declare the limit.: Test
> An isolated number becomes folklore. A contextualised result can become reusable data.

## A flow limit is not the point where everything suddenly stops

Another trap is imagining a hard threshold, because there is rarely a clean cliff between 24.9 mm³/s and 25.1 mm³/s: real behaviour degrades progressively, often before obvious under-extrusion appears.

As flow increases, actual melt temperature may fall, nozzle pressure rises and the extruder motor works harder. Material can begin leaving the nozzle more slowly than commanded before spectacular under-extrusion appears on the part.

In practice, several definitions of “limit” are possible:

- the flow where extruded mass starts deviating from target,
- the flow where extrusion force becomes excessive,
- the point where melt temperature or strand appearance becomes unstable,
- the point where a printed specimen loses a chosen amount of strength or visual quality.

Those criteria will not necessarily return the same number, which is the general benchmark problem in miniature: before comparing results, compare the definition of what was measured. MeltCalc is useful to the extent that it keeps this context instead of producing one universal hotend leaderboard.[1](https://github.com/robertsamples/meltcalc)

## A larger nozzle can slow linear motion while finishing sooner

A 0.8 mm nozzle can lay much wider lines and thicker layers than a 0.4 mm nozzle, reducing the number of passes required to fill a part.

At the same linear speed, however, volumetric demand rises dramatically, so a larger nozzle can reach the hotend's thermal flow limit at a lower travel speed than a 0.4 mm nozzle while still finishing the part sooner because every millimetre travelled deposits far more material.

The distinction also matters when comparing printers: a machine is not necessarily “slower” because G-code shows 80 mm/s instead of 200 if it deposits two or three times the material per millimetre, and volumetric flow brings the benchmark closer to what manufacturing actually needs, namely a volume of polymer deposited correctly over time.

## A slicer profile becomes a thermal budget

Once a reasonable maximum flow is known, it can become a slicer constraint. Prusa describes exactly this use, with maximum volumetric speed capping tool motion when speed, line width and layer height would otherwise request more melted material than the defined limit.[3](https://help.prusa3d.com/article/max-volumetric-speed_127176) In a profile, the number behaves much like a thermal budget.

Every extrusion path spends part of the hotend's thermal budget, with thick layers and wide lines costing more than fine details, so the slicer changes linear speed to keep requested melt flow inside the configured ceiling.

In that sense, one physical ceiling is more stable than a collection of arbitrary speeds attached separately to every line type.

Other limits remain in force: acceleration, vibration, part cooling, surface quality, layer bonding and minimum layer time can all slow printing well before the thermal ceiling. Volumetric flow does not describe the whole speed of a printer. It simply gives the slicer one physical boundary from which a credible speed can be worked out.

## The same hotend can have several useful ceilings

A “fast” profile and a “strong” profile may have no reason to use the same maximum flow: for a decorative part, a modest drop in melt temperature might be acceptable while the surface remains good, whereas for a mechanical component, pushing material close to its melting limit can damage interlayer bonding before extrusion looks obviously broken. Different goals can reasonably produce different ceilings.

Temperature creates the same problem. Raising it by 10 or 15 °C may increase the flow a material can sustain, but the profile then has to examine stringing, overhangs, pigments and the chemical stability of the polymer at that temperature.

Good calibration should describe the flow that remains repeatable at the quality the part actually needs, rather than the highest number that happened to survive for five seconds.

## A community database should preserve failed tests too

Performance databases naturally attract record values, but a result of “42 mm³/s” says little without the curve before it: perhaps the system remained comfortable at 30 and collapsed suddenly near 42, or perhaps extrusion error had been increasing for a long time. Failed and intermediate tests can therefore be almost as valuable as the maximum.

Those intermediate points show a trend, let two nozzles be compared beyond their single best number, and reveal sensitivity to temperature or material.

MeltCalc is interesting precisely because it tries to turn scattered hotend/material experiments into contextualised data instead of copying isolated numbers from comments, videos and profiles whose protocols have disappeared.[1](https://github.com/robertsamples/meltcalc)[2](https://hackaday.com/2026/08/18/a-hot-end-and-material-database-for-3d-printing/)

There is a catch, of course. A community database cannot be better than its metadata, because omitting test method, nozzle diameter, temperature or exact material leaves us with the same folklore wearing a cleaner interface.

## The ideal setting remains local, the knowledge does not have to

No database can know your printer perfectly: in the machine on your bench, the thermistor may read slightly differently, filament may have absorbed moisture, extruder tension may differ, the nozzle may be worn and airflow may change hotend behaviour, while your quality target may have little in common with that of the contributor who made the measurement.

In other words, external benchmark data changes the starting point of local calibration instead of replacing it.

Instead of randomly testing between 5 and 50 mm³/s because a forum claims a hotend “can do 40”, a user can start from a documented range on a similar configuration, verify it locally, then preserve that result with its own context.

Hotend and filament choice starts to leave folklore behind once the stored context explains **why a number was true on that machine, with that material, on that day**. A database is useful here because it preserves the conditions, not because it claims one final answer.

## References

1. [robertsamples/meltcalc, hotend and material performance database](https://github.com/robertsamples/meltcalc)
2. [Hackaday, A Hot End And Material Database For 3D Printing](https://hackaday.com/2026/08/18/a-hot-end-and-material-database-for-3d-printing/)
3. [Prusa Knowledge Base, Max volumetric speed](https://help.prusa3d.com/article/max-volumetric-speed_127176)
4. [Filament Cheat Sheet, filament database](https://filamentcheatsheet.com/database/)
