System of Equations Calculator – Two or Three Equations, Solved Step by Step

One equation with two unknowns has endless answers — it takes a second equation, saying something different, to pin the values down. Type your system, two equations or three, and this calculator works it the way a careful student would: elimination, one honest move at a time, with every step written out, the solution given as an exact fraction (3/4 stays 3/4, never a rounded-off 0.75), and a straight verdict when the system turns out to have no solution — or infinitely many.

100% FreeNo sign-up neededInstant results

Your equations

x+ y +z =
x+ y +z =
Type whole numbers, decimals like 2.5, fractions like 3/4, or mixed numbers like 1 1/2 in any box. One simple rule for blanks: an empty box counts as 0 — so to drop the y term from an equation, just clear its box. Minus signs are welcome anywhere.

🔒 Everything is calculated in your browser — your numbers never leave your device.

The solution

Unique solution
x = 3, y = 2
One pair of values satisfies both equations at once.

The values, exactly

x3
y2

What this means

The two equations agree on exactly one point: x = 3 and y = 2. Put those values back into either original equation and it balances — 2(3) + 3(2) = 12 in the first, and 3 − 2 = 1 in the second. Drawn as lines, the two equations cross at the single point (3, 2).

Why fractions? A decimal like 0.333 is a rounded shadow of 1/3, and rounding early poisons every step after it. This calculator carries exact fractions from the first move to the last, and only shows a decimal at the very end, as a reading aid beside the exact answer.

Copied ✓
Key Takeaways
  • One equation with two unknowns has endless solutions — a system pins them down, and this page solves two or three equations step by step.
  • On the default, the solution is x = 3, y = 2 — worked in exact fractions, never rounded mid-solve.
  • Every step is shown in the open, so the answer can be checked, not just believed.

Watch it solve — every step, in the open

This is the part most calculators hide. The elimination below is live: change any number above and the whole trail rebuilds — each move named, and the system redrawn after it, until each variable stands alone in its own row and the answer can simply be read off.

Outcome
Unique solution
of the three endings a system can have
Equations that bite
2 of 2
rows still saying something new after elimination
Elimination moves
4
swaps, scalings and clearances, all shown below
  1. 1Your system, written as rows — coefficients on the left, the constant on the right of each equals sign.
    2x + 3y = 12
    x – y = 1
  2. 2Divide row 1 by 2 so the x coefficient becomes 1.
    x + 3/2y = 6
    x – y = 1
  3. 3Subtract row 1 from row 2 — this clears x from row 2.
    x + 3/2y = 6
    -5/2y = -5
  4. 4Divide row 2 by -5/2 so the y coefficient becomes 1.
    x + 3/2y = 6
    y = 2
  5. 5Subtract 3/2 × row 2 from row 1 — this clears y from row 1.
    x = 3
    y = 2
  6. 6Every variable now stands alone in its own row — the solution reads straight off: x = 3, y = 2.
    x = 3
    y = 2
  7. 7Now check the answers in the original equations:
    2(3) + 3(2) = 12 ✓
    (3) – (2) = 1 ✓

How it works, in 3 steps

1

Type the system

Choose two equations or three, then fill in the coefficients — the numbers in front of x, y and z — and the constant each equation equals. Fractions and decimals both work, and clearing a box drops that term entirely, because a blank counts as zero.

2

Elimination tidies the rows

The calculator swaps rows, scales them and subtracts multiples of one row from another — the three moves that never change what a system means — until each variable is isolated in its own row. Every move is written out underneath, with exact fractions throughout.

3

Read the ending

If every variable ends up alone, that is the unique solution, and it is checked against your original equations before you trust it. If a row collapses to something impossible like 0 = 5, there is no solution; if a variable is never pinned down, there are infinitely many — and the page says which, and why.

How the solving is worked out

a1x + b1y = c1  ·  a2x + b2y = c2 → tidy the rows until x and y stand alone

The default, worked through. Start with 2x + 3y = 12 and x − y = 1. Halve the first row so x leads politely: x + 3/2y = 6. Subtract that row from the second and x vanishes from it, leaving −5/2y = −5, which scales down to y = 2. Now clear y from the first row by subtracting 3/2 of the second row: x = 3, standing alone. That orderly version of elimination — finish every variable, not just one — is called Gauss–Jordan elimination, and it is why the answer can be read straight off the final rows instead of being untangled at the end.

Why the moves are legal. Swapping two equations changes nothing; they are both still true. Multiplying every term of one equation by the same non-zero number keeps it balanced. And adding a multiple of one true equation to another produces a new statement that is true exactly when the original pair is — so the solution set survives every move untouched. The system on the last line means precisely the system on the first; it is just wearing tidier clothes.

Three equations, same dance. With x, y and z, elimination works down the columns: clear x from rows two and three, then y from row three, then sweep back up. The default three-equation system here — x + y + z = 6, 2x − y + z = 3, x + 2y − z = 2 — reduces to x = 1, y = 2, z = 3, and the step list shows every row on the way. Switch to “3 equations” above and watch it happen.

Deep dives

Unique solution — the equations genuinely disagree. Each equation rules out different possibilities, and what survives is a single point. In two variables the picture is two lines crossing once; in three, three planes meeting at one point. This is the only ending where “the answer” is a list of numbers, and it happens exactly when elimination pins down every variable — when the system’s rank equals its number of unknowns.

No solution — the equations contradict each other. Elimination eventually produces a row claiming 0 = 5, or some other impossibility, and no values can rescue it. Two lines that never meet are the classic portrait: 2x + 2y = 4 and x + y = 5 describe parallel lines, forever the same distance apart, agreeing on nothing. Nothing is broken — the system is simply asking for something that cannot be, and saying so plainly is the honest answer.

Infinitely many solutions — an equation repeats another. If one equation is a multiple of another, like x + y = 3 and 2x + 2y = 6, it adds no new information, and a whole line of points survives. The calculator describes the family rather than pretending there is one answer: it tells you which variables are free, and writes each pinned variable in terms of them, so choosing any value for the free variable hands you a complete solution.

Decimals leak accuracy at every step. Solve 3x + 2y = 5 with x + 4y = 3 by decimals and you meet 0.4 early — except it is really 2/5, and any further arithmetic on the rounded version drifts. Carrying fractions keeps every intermediate value exact, which is why this calculator’s answers can be checked against the original equations and balance to the last digit, not merely to six decimal places.

Substitution vs elimination. For a small system where one variable is already nearly alone — y = 2x + 1, say — substitution is quicker by hand: pour the expression into the other equation and solve the single unknown. Elimination earns its keep as systems grow, because it is mechanical: the same three moves, column by column, with no cleverness required. The calculator uses elimination for the same reason a spreadsheet would — it scales, and it never has an off day.

A word on bigger systems. Four or more unknowns follow exactly the same rules; this page stops at three because that is where school and everyday problems live, and because the step-by-step trail — the honest heart of the tool — stays readable. The matrix calculator takes over from there, where row reduction is presented in its compact grid form.

Three verdicts, one method: what elimination reports

Elimination does not always hand back numbers. It reports one of three verdicts, and this page’s calculator states each one plainly. The table below runs all three through the page’s own engine in two-equation mode, starting from the default system, so the difference between the verdicts is visible in the same format.

SystemVerdictWhat elimination shows
2x + 3y = 12; x − y = 1 (default)Unique solution: x = 3, y = 2Lines cross at the single point (3, 2); back-substitution balances both equations exactly
x + y = 2; x + y = 2Infinitely manyRow 2 subtracts to 0 = 0; one variable pinned, the other free; every choice on the line is a solution
x + 2y = 3; 2x + 4y = 6Infinitely manyRow 2 is row 1 doubled, so it subtracts to 0 = 0; the second equation adds no information
x + y = 1; 2x + 2y = 3No solutionRow 2 subtracts to 0 = 1; parallel lines that never meet; any tool returning numbers here is inventing them

The two “infinitely many” rows are the same verdict reached by two different routes, and the distinction matters when you check your own work. In the first, the two equations are literally identical, so the second row vanishes to 0 = 0 immediately. In the second, the equations look different — x + 2y = 3 against 2x + 4y = 6 — but the second is the first multiplied by 2, so elimination still ends at 0 = 0. The test is not whether the equations look the same but whether one is a multiple of the other (in two variables) or, more generally, whether any row is a combination of the rows above it. The no-solution row is the mirror image: x + y = 1 against 2x + 2y = 3 looks like the same pattern — the second row is almost the first doubled — but the constants break the pattern (2 × 1 = 2, not 3), so elimination ends at 0 = 1, a contradiction. Parallel lines in two variables, planes that never share a point in three: the geometry and the algebra report the same fact, and the calculator’s verdict names it rather than forcing numbers out of it.

Two more properties of this engine are worth using deliberately. First, it works in exact fractions throughout and never rounds mid-solve: enter 1/2 as a coefficient and the steps keep it as 1/2, so the system 1/2x + y = 1 with x + y = 2 solves to exactly x = 2, y = 0, with the step list dividing the first row by 1/2 rather than by a rounded 0.5. A decimal solver that rounded mid-solve could drift on systems whose coefficients are awkward fractions; this one cannot, because every intermediate value is a reduced fraction. Second, the three-equation mode uses the same method on the same three rows: switch the default system to three equations and the calculator gives x = 1/7, y = 19/7, z = 25/7, the single point (0.142857, 2.714286, 3.571429) where the three planes meet, with the step list ending in back-substitution into every original equation. The default two-equation answer (3, 2) and the three-equation answer are answers to different systems — the third row (x + 2y − z = 2) is ignored in two-equation mode and active in three-equation mode — so switching modes changes the question, not just the display. Check the mode before comparing answers, and check the verdict before trusting numbers: a unique solution, an infinite family, and a contradiction are three different kinds of truth, and this page reports which kind you have.

Reading the step list on the default system

The step list is the proof, not decoration: every elimination move is written out, and the default two-equation system shows the whole method in four moves. Start with 2x + 3y = 12 and x − y = 1. First, divide row 1 by 2 so the x coefficient becomes 1: x + 3/2y = 6. Second, subtract row 1 from row 2 to clear x from row 2: −5/2y = −5. Third, divide row 2 by −5/2 so the y coefficient becomes 1: y = 2. Fourth, substitute back into the first row: x + 3 = 6, so x = 3. The calculator then verifies by substituting (3, 2) into every original equation — 2 × 3 + 3 × 2 = 12, and 3 − 2 = 1 — and reports the lines crossing at the single point (3, 2). That final substitution is the step most hand solutions skip and the one that catches most errors: if the back-substitution does not balance, an earlier move went wrong, and the step list lets you find which one, because each move rewrites the whole system and the faulty move is the first row that no longer matches your own working.

The same reading skill applies to the verdict systems. When a row subtracts to 0 = 0, the step list shows exactly which combination vanished — for x + 2y = 3 with 2x + 4y = 6, the step reads “subtract 2 × row 1 from row 2” and the second row becomes 0 = 0, which is the visible signature of a dependent row. When a row collapses to 0 = 1, the step list shows the contradiction forming: for x + y = 1 with 2x + 2y = 3, subtracting 2 × row 1 from row 2 leaves 0 = 1, and the calculator stops there rather than continuing into nonsense. In three-equation mode the step list is longer but the grammar is identical — divide a row so a leading coefficient becomes 1, subtract multiples of it to clear that variable from the rows below, repeat for the next variable, then substitute backwards — and the rank it reports (“1 of 2 variables pinned down” in the infinite case) tells you how many variables the elimination actually managed to fix. Read the steps as a proof, not as output, and a system you do not yet trust becomes a system you have checked.

Fractions in, fractions out: why the engine never rounds mid-solve

A solver that converts fractions to decimals at the first step can drift, and the drift is worst exactly where the coefficients are awkward. This engine parses fraction inputs as fractions — 1/2 stays 1/2, not 0.5 — and every elimination move multiplies, adds and divides reduced fractions, so the only rounding in the whole solve is the final decimal display of an exact fraction. The probed case makes the difference concrete: 1/2x + y = 1 with x + y = 2 solves to exactly x = 2, y = 0, with the step list dividing the first row by 1/2 (giving x + 2y = 2) and then subtracting to reach −y = 0. A decimal solver doing the same steps would divide by 0.5 — harmless here — but on a system whose coefficients are thirds or sevenths, each decimal step would inject a rounding error that the next step multiplies, and the back-substitution at the end would fail to balance exactly. Here the back-substitution balances fraction-perfect by construction: the numbers substituted are the exact fractions the elimination produced, not decimal approximations of them.

The three-equation default shows the same exactness at a scale where decimals would visibly fail. The solution x = 1/7, y = 19/7, z = 25/7 displays as the point (0.142857, 2.714286, 3.571429) — six decimal places, rounded for reading — but the fractions are the answer and the decimals are only its display: substitute 1/7, 19/7 and 25/7 back into 2x + 3y + z = 12 and the left side is 2/7 + 57/7 + 25/7 = 84/7 = 12 exactly, with no rounding residue at all. Substitute the displayed decimals instead and the sum is 0.285714 + 8.142858 + 3.571429 = 12.000001 — one millionth out, the price of reading decimals as if they were the answer. That millionth is harmless for plotting but fatal for a proof, which is why the engine reports fractions first and decimals second. When you copy an answer from this page, copy the fraction; when you plot it, use the decimal; and never let the decimal stand in for the fraction in a check, because the check is exactly where the difference shows.

One last habit ties the three modes together. Before entering a system, set the mode — two equations or three — and glance at the rows on screen: in two-equation mode the third row is hidden, in three-equation mode it is shown, and the calculator solves exactly the rows it shows. A system typed in the wrong mode is not a wrong system, but it is a different question from the one intended, and its answer will be confidently, exactly, unhelpfully different.

No solution, one solution, infinitely many: what the three verdicts mean

The algebra and the geometry say the same thing in different words.

Every system of two linear equations in two unknowns ends in one of three places. One solution means the two lines cross at a single point — that point satisfies both equations, and it is the answer. No solution means the lines are parallel: same slope, different intercept, never meeting, so no pair of values satisfies both at once. Infinitely many solutions means the two equations describe the same line, so every point on it works and the system has no single answer to find.

Elimination shows the verdict without a graph. If the variables cancel and leave a true statement such as 0 = 0, the equations are the same line in disguise. If they cancel and leave a false statement such as 0 = 5, the lines are parallel and there is no solution. Either result is a complete answer, not a failure of the method — it tells you the system itself has no single point, or no point at all.

Substitution, elimination, or matrices: which method to reach for

All three are correct. The choice is about the shape of the problem in front of you.

Substitution is fastest when one equation already isolates a variable, or nearly does — for example x = 2y + 3. Solve for that variable, substitute into the other equation, and the system collapses to one unknown. Elimination is fastest when the coefficients line up, especially when adding or subtracting the equations removes a variable in one step, or after multiplying one equation by a single number. Matrices (Gaussian elimination, or Cramer’s rule for small systems) earn their keep at three or more unknowns, where keeping rows organised matters more than clever cancellations.

For word problems, the method matters less than the setup. Give each unknown a name and a unit, translate each sentence into one equation, and check that the number of independent equations matches the number of unknowns. Two unknowns with only one real equation will always leave a free choice — that is the algebra telling you a second condition is missing, not a hint to guess.

System questions, answered

What is a system of equations?

A system of equations is two or more equations that share the same unknowns and must all be true at the same time. One equation in x and y, like x + y = 10, is satisfied by endless pairs — (1, 9), (2, 8), (4.5, 5.5) and so on. Add a second equation that says something different, like x − y = 4, and only one pair survives: x = 7, y = 3. Solving the system means finding every set of values that satisfies all of its equations simultaneously — sometimes one set, sometimes none, sometimes infinitely many.

How does the elimination method work?

Elimination uses three moves that never change what a system means: swap two equations, multiply every term of one equation by the same non-zero number, and add a multiple of one equation to another. Applied in an orderly way — clear x from every row but the first, then y from every row but the second, and so on, then sweep back — the rows tidy themselves until each variable stands alone with its value beside it. That full version is called Gauss–Jordan elimination, and the step list under the calculator shows every move it makes on your numbers.

What does it mean when a system has no solution?

It means the equations contradict each other: no values of the unknowns can make all of them true at once. During elimination the tell-tale sign is a row that collapses to an impossibility like 0 = 5. With two equations in two unknowns, the picture is parallel lines — for instance 2x + 2y = 4 and x + y = 5 run side by side forever and never meet, because the second quietly demands that x + y be two different numbers at the same time. The system is not broken; “no solution” is its complete and correct answer.

What does infinitely many solutions mean?

It means the equations do not carry enough independent information to pin every variable down — usually because one equation is a multiple of another, like x + y = 3 and 2x + 2y = 6, which say the same thing twice. Whole families of values then work: pick any y you like, set x = 3 − y, and both equations balance. This calculator says which variables are free and writes the pinned ones in terms of them, so you can generate as many exact solutions as you need.

Can I enter fractions and decimals as coefficients?

Yes. Any box accepts a whole number (4), a decimal (2.5), a fraction (3/4) or a mixed number (1 1/2), with a minus sign wherever you need one. The solving itself is done with exact fractions the whole way through — a decimal you type is converted to its exact fraction, 2.5 becoming 5/2 — so answers never drift through rounding. Clearing a box entirely counts as 0, which is the quick way to remove a term from an equation.

How is the answer checked?

By substitution, the oldest audit in algebra: the values found are put back into every one of your original equations, and each side is totalled. For the default system the check reads 2(3) + 3(2) = 12 and (3) − (2) = 1 — both balance exactly, because the solving used fractions and lost nothing on the way. The check lines print at the end of the step list whenever there is a unique solution, so you can verify the answer with nothing but the arithmetic on the page.

Why does x + 2y = 3 with 2x + 4y = 6 have infinitely many solutions?

Because the second equation adds no information: it is the first equation multiplied by 2. Elimination subtracts 2 × row 1 from row 2 and reaches 0 = 0, leaving one variable pinned and the other free — every point on the line x + 2y = 3 is a solution. The test is not whether the equations look identical but whether one is a multiple (or combination) of the others. The same verdict appears for literally identical equations (x + y = 2 twice), by the shorter route to 0 = 0.

How is 0 = 1 different from 0 = 0?

They are opposite verdicts. 0 = 0 means a row vanished because it carried no new information, so solutions are infinite. 0 = 1 means a row collapsed into a contradiction, so no solution exists: x + y = 1 with 2x + 2y = 3 fails because doubling the first equation gives 2x + 2y = 2, not 3 — parallel lines that never meet. If a tool returns numbers for a 0 = 1 system, it is inventing them; this calculator reports the contradiction instead.

Why does switching to 3 equations change the answer?

Because it changes the system, not just the display. In two-equation mode the third row is ignored, and the default gives x = 3, y = 2. In three-equation mode the third row (x + 2y − z = 2) becomes active, and the same three rows give x = 1/7, y = 19/7, z = 25/7 — the single point where the three planes meet. Check the mode before comparing two answers: a two-equation answer and a three-equation answer answer different questions.

Why do fractions stay fractions instead of decimals?

Because rounding mid-solve can drift. This engine keeps every intermediate value as a reduced fraction, so 1/2x + y = 1 with x + y = 2 solves to exactly x = 2, y = 0, with the step list dividing by 1/2 rather than by a rounded 0.5. The decimal point (0.142857, 2.714286, 3.571429) appears only as the final display of the exact fractions 1/7, 19/7 and 25/7 in three-equation mode. Exactness is preserved where it matters — during the solve — and decimals are only a reading aid at the end.

Can a system have three equations and three unknowns?

Yes, and the same ideas apply in three dimensions. Each equation describes a plane, and the solution — if there is exactly one — is the single point where all three planes meet. Elimination works the same way: remove one variable from two pairs of equations, then solve the smaller system that remains. The verdicts are the same too: one point, no common point, or a whole line or plane of points when the equations overlap.

What if the equations are not linear?

Then the methods on this page do not apply directly, and the answer can look very different. A line and a circle, for example, can meet at zero, one or two points, and two curves can meet many times. Substitution still works — solve one equation for a variable and substitute — but the result is usually a quadratic or higher equation with several roots to check. Every candidate root must be put back into both original equations, because squaring and rearranging can create values that satisfy the rearranged equation but not the originals.

Related calculators

Exact algebra on the numbers you type — not a substitute for learning the moves.

The step list is here so the method stays visible: if you are studying, work one system by hand first, then compare your trail with the calculator’s. Results assume the equations are linear — no squared terms, no variables multiplied together — and that the numbers were typed as intended; a coefficient in the wrong box is solved just as faithfully as the right one.

↑