Determining the dimensional accuracy / shrinkage ratio of a printer requires a large object that prints fast. Here is a thin 200mm test strip with hexagon ends. This avoids errors that might be introduced by over / under extrusion on a 20mm calibration cube.
I should credit Thomas Sanladerer with the idea. He makes calibration sticks in various sizes, however, he uses round holes, and is somewhat more pessimistic about the accuracy of consumer 3d printers. https://www.youmagine.com/designs/calibration-sticks
Simply print a strip, let it cool, and measure from the pointy parts of the hole. It should measure 200mm exactly. Turn the strip to align with the Y axis in your slicer software and repeat.
The math isn't that hard.
If you ask for 200mm and it prints smaller, like 190mm, you will want to increase the size of the print or the steps per mm setting. Simply create a ratio > 1, like (200 / 190).
- If it measures long, like 210mm, then you want to shrink the print or steps per mm, so that would be a ratio < 1, like (200 / 210).
Then multiply the current setting by your ratio (making it larger or smaller as desired) to get the new setting.
In Cura 4.3.0 the Shrinkage Ratio seems to have been "locked" in the FLSun QQ-S Profile. Don't know if that's a repetier thing or a delta thing or what. If dimensions are critical to the print, you can still "Scale" each axis of a model upon preparation.