How to Use Linear Advance in Cura? (In-Depth Explanation)

3D printing is a technically complex process, where even printing a very simple test cube can have glaring imperfections if you don’t configure your printer and your slicer correctly.

Fortunately, the technology in 3D printing is rapidly advancing every day, with engineers working on new features and fixes that allow the process to go smoother without requiring too much effort from the end-user.

Today, we will be talking about one such feature in Marlin firmware called Linear Advance and how you can activate it in Cura in particular.

So, how to use linear advance in Cura?

You can use linear advance in Cura by either downloading the Linear Advance Settings plugin from Ultimaker Marketplace or adding its G-code (M900) to the G-code Start Scripts section in Machine Settings.

In the next section, we will be laying out the steps for both methods of activating Linear Advance in Cura, alongside the advantages and disadvantages of using them.

How to Use Linear Advance in Cura?

As there are two different methods to choose from for activating Linear Advance in Cura, we will be going over each of these methods individually in detail in this section.

Using the Linear Advance Settings Plugin

The first method of activating Linear Advance in Cura is with the Linear Advance Settings plugin, which is an extension that enables the necessary fields for configuring Linear Advance in the Print Settings menu of Cura.

Here are the steps we recommend taking for installing the Linear Advance Settings plugin in Cura:

  1. Add the Linear Advance Settings plugin to Cura. You will need to log in to your Ultimaker account if you haven’t already.
  2. Restart Cura if you already have it open.
  3. Cura will ask you to sync the settings in a pop-up, which you will need to confirm. After a few more pop-ups, the plugin will be in effect.
  4. Go to the Print Settings menu and click the three lines icon next to the search box, which will bring up the Setting Visibility dialog.
  5. Click “All” from the dropdown to enable visibility for all settings, and close the dialog.
  6. Type “linear advance” into the search box, and enter the K-factor value into the Linear Advance Factor input.

For any value other than 0 for the Linear Advance Factor parameter, Linear Advance will be active.

If you don’t know where to find the K-factor value, we will be covering it in the upcoming section.


  • The plugin makes it extremely easy to enable and disable Linear Advance.
  • The plugin adds additional inputs for defining individual K-factor values for different parts of the object, such as walls, infill, skirts, brims, and more.


  • Installing the plugin requires you to have an Ultimaker account.
  • It’s a third-party plugin that may not always be up-to-date with new versions of Cura.

Using the G-code Start Scripts

Using the G-code Start Scripts is another way of activating Linear Advance in Cura, which practically causes the slicer to issue the G-code for Linear Advance to the printer before starting the printing process.

Here are the steps we recommend taking for using the G-Code Start Scripts:

  1. Click Settings on the top menu of Cura.
  2. Bring your mouse over the Printer option, and click Manage Printers from the dropdown.
  3. Choose the printer you would like to configure, and click the Machine Settings button.
  4. Add the Linear Advance G-code (M900) alongside the K-factor as the last line of the Start G-code input. For instance, M900 K0.25 would enable Linear Advance with a K-factor of 0.25.
  5. Close the dialog.

Since the G-codes in the Start G-Code input run before every print, Cura will activate Linear Advance whenever you start the printing process without you having to activate it manually every time you print.

To disable Linear Advance with this method, you can either remove the line from the box or set the K-factor to 0.

If you don’t know where to find the K-factor value, we will be covering it in the upcoming section.


  • The method does not require you to install additional plugins as you can use it through Cura’s core functionality.
  • As this method directly issues a G-code to the printer, it will work as long as the firmware itself does not change.


  • The method does not offer as much flexibility as the plugin (using individual K-factor values for different parts).
  • It’s not the most user-friendly way of activating Linear Advance if you aren’t too familiar with G-codes and the G-code Start Scripts area in Cura.

Calculating the K-Factor for Linear Advance

The Linear Advance feature requires a variable called the K-factor to operate.

As this variable varies among different printers, you will need to calculate the K-factor for your printer before you can activate Linear Advance.

Here are the steps we recommend taking to calculate the K-factor for Linear Advance:

  1. Follow this link to Marlin firmware’s K-factor calibration calculator, which produces a calibration pattern you will be printing.
  2. Fill out the Printer and Print Bed sections of the calculator according to the specifications of your printer.
  3. Fill out the Speed section according to your slicer settings.
  4. Click the Download as File button, and save the G-code file to an SD card that you use for printing.
  5. Insert the SD card into your 3D printer, and print the calibration pattern.
  6. When the printing process is over, you will see a pattern with lines and numbers next to them, with each number corresponding to a K-factor value.
  7. Pick the line that looks best to you in terms of consistency, and note the number next to it, which will be your K-factor value.

If you are having a hard time picking a line, using the process of elimination by finding the lines that look the most uneven to you and discarding them can be helpful.

If none of the lines look good to you, you can increase the calibration range by increasing the Ending Value for K value in the calculator and obtain more precise values by reducing the K-factor Stepping value to 0.1.

After obtaining the K-factor value, all you have to do is inputting it into Cura, depending on the method you have chosen to enable Linear Advance.

Wrapping Up

Activating Linear Advance in Cura shouldn’t take too much of your time, as most of the effort related to using this feature comes down to calculating the K-Factor correctly, which the calculator does for you.

As a result, we highly recommend enabling Linear Advance if you’re on the Marlin firmware as the benefits it brings in terms of print quality are too good to ignore, especially considering that the process for activating it is pretty straightforward.

We hope that this has been an informative read, and we will see you next time!