Skip to content

System of linear equations solver

Solve 2 to 6 linear equations in as many unknowns, with exact fractions and every Gauss–Jordan step, including systems with no solution or infinitely many.

  • Free, no limits
  • No sign-up
Everything happens in your browser; nothing is uploaded to a server.
  • ✓ Free
  • ✓ No sign-up
  • ✓ Nothing uploaded

Next step

What to do next

How to use it

  1. Choose the number of unknowns (2 to 6).
  2. Enter each equation's coefficients in a row and the right-hand side after the bar.
  3. Check the equations shown below the grid.
  4. Read the solution and the elimination steps.
Try it now

How to enter a system

Each row is one equation. The columns hold the coefficients of x, y, z, u, v, w in order, and the column after the bar is the right-hand side. If a variable doesn't appear in an equation, enter 0. Entries can be whole numbers, decimals (2.5) or fractions (3/4).

The default example is

2x + y − z = 8 −3x − y + 2z = −11 −2x + y + 2z = −3

which the page shows as readable equations under the grid, so you can check what you typed.

How it's solved

The solver builds the augmented matrix [A | b] and applies Gauss–Jordan elimination: swap rows to get a nonzero pivot, scale the pivot row so the pivot is 1, and subtract multiples of it from every other row until each pivot column has zeros elsewhere. Every step is listed with its row operation and the resulting matrix.

For the example, the result is x = 2, y = 3, z = −1. The solver substitutes the solution back into every equation and confirms that they hold. All arithmetic uses exact fractions, so there's no rounding.

Unique, none or infinitely many solutions

CaseConditionWhat you see
Unique solutionrank(A) = number of unknownsThe value of each variable
No solution (inconsistent)rank(A) < rank([A | b])The row that became 0 = c, with c ≠ 0
Infinitely many solutionsrank(A) = rank([A | b]) < number of unknownsA general solution with free parameters

In the infinite case, free variables are written as parameters t, s, r…, and the other variables are expressed in terms of them, for example x = 4 − 2t, y = t, z = 1. Any real values of the parameters give a solution.

Other methods

For two equations you may have learned substitution or elimination (adding equations); for 2×2 and 3×3 systems, Cramer's rule uses determinants. Gauss–Jordan elimination is what all of these amount to in matrix form, and it works for any size and for singular systems where Cramer's rule fails.

For other matrix operations, such as determinants, inverses or rank on their own, use the matrix calculator.

Frequently asked questions

How do I solve a system of 3 equations with 3 unknowns?

Choose 3 unknowns, enter the coefficients of x, y and z and the right-hand side for each equation, and read the solution with the steps.

What if a variable is missing from an equation?

Enter 0 as its coefficient.

How do I know if a system has no solution?

Elimination produces a row 0 = c with c ≠ 0. The solver reports this and the ranks of the coefficient and augmented matrices.

Can it solve systems with infinitely many solutions?

Yes. It gives the general solution with free parameters.

Does it use fractions?

Yes, exact fractions throughout, with decimal approximations next to non-integer answers.

Last updated: November 12, 2026

Recommended

Similar tools

If System of equations solver helped, you may need these too.

See all in category →

People also use