Isn't using the Extrusion Multiplier like cheating? One thing I never understood is the so-called Extrusion Multiplier (EM) or Flow setting in slicers like Simplify3D (S3D) or CURA.

The description for this setting reads...


S3D: Multiplier for all extrusion movements (...)
CURA: The amount of material extruded is multiplied by this value. (...)


I always believed that this parameter is just an ugly way to fix an underlying miscalculation or misconfiguration, because using it feels like doing a calculation, getting the wrong result and "correcting" it afterwards by a multiplier - isn't that cheating?



But, recently I thought a bit harder about this setting, now I am not sure anymore. One of the main reasons is, that S3D suggests different values for the EM, depending on the type of plastics used, 0.9 for PLA and 1.0 for ABS.

This somehow implies that there is a physical property that justifies the EM, but I cannot think of one because 1 m feeded would lead to 1 m extruded - no matter what kind of platics used, right?
No, the Flow rate or Extrusion multiplier is to compensate for different materials and temperature ranges.
Where does the factor come from?
Let's say we calibrated our nozzle for work at 200°C with PLA, so 100 mm extrusion are correct and want to print ABS. ABS behaves differently and we get bad prints. What is wrong? Well, they do behave differently in the heat, and print at different temperatures. One easily noticeable difference between the two is the heat expansion coefficient.
Now, I had to scrounge through research papers and Material/Technical Data Sheets for PLA, so take that one with a grain of salt. But we can clearly compare the various plastics heat expansion coefficients:

PLA: $41 \frac{\text{µm}}{\text{m K}}$ a TDS
ABS: $72 \to 108 \frac{\text{µm}}{\text{m K}}$
Polycarbonate: $65 \to 70 \frac{\text{µm}}{\text{m K}}$
Polyamides (Nylons): $80 \to 110 \frac{\text{µm}}{\text{m K}}$

Those are just three randomly picked plastics that clearly are printable. If we heat one meter of them by one Kelvin, they'd expand by that length (a couple micrometer). We heat the later three printing materials to about 200-240 K over the room temperature (~220-260 °C), so we'd expect these the materials to expand by the following ranges:

PLA: 6.97 to 7.79 mm (1)
ABS: 14.4 to 25.92 mm (2)
Polycarbonate: 13 to 16.8 mm (2)
Polyamides (Nylons): 16 to 26.4 mm (2)

1 - using 170 K and 190 K temperature difference for its normal print temperature range of ca 190 to 200 °C2 - first: low expansion at 200 K increase, then high expansion at 240 K
You have calibrated your printer for one of these values somewhere in there. And now you get a different filament that has a different color and a different blend or even you swap from PLA to ABS or switch from one brand to another - the result is: you get a different heat expansion coefficient somewhere in that range and you have almost no chance to know it. The heat expansion coefficient, in the end, has an effect on the pressure in the nozzle and this the speed the material leaves the nozzle, which impacts die swell and so the overall printing behavior.
Remember that heat expansion is not the only thing that is happening in the nozzle. Other big factors are for example the viscosity of the polymer at its printing temperature, its compressibility (which depends for example on chain length or embedded fillers), the geometry of the nozzle, the length of the melt zone... they all play a role in how exactly the print gets to come out.
We can sum all those up under a general &quot;behavior in the nozzle&quot; tag, and as a result one gets vastly different flow/extrusion multipliers, like the 0.9 for PLA/1 for ABS in Simplify3D.
Other Factors?
There are also other factors that play a role.
The distance between the extruder and the melt zone and how the filament behaves there are somewhat obvious: A ductile filament can bunch up some in a Bowden tube while in a direct drive there is much less space for that.
The extruder can have an influence depending on the geometry of the drive gear and how much it bites into the filament. The depth of the deformation is again dependant on the hardness of the filament and the geometry of the teeth. Tollo has a great explanation how this has an effect on the need to alter the extrusion multiplier.
gaining the factors
Most of these are determined by trial and error using a factor of 1 and dialing up manually until proper printing is achieved on the machine, then putting that factor back into the software.
As a side note: Ultimaker Cura has (in its filament database) the ability to save flow rates into each different filament, but does initialize all with 100 % default.
TL;DR
It is a way to adjust to the relative difference between the behavior of filaments (using one of your filaments as the calibration) and not cheating.