Polynomial Factor & Expand
Split polynomials into integer factors with the steps shown — or multiply factored form back out.
Use ^ for powers, write 2x or 2*x, group with ( ). In Expand mode try (x+2)(x+3).
How to use the Polynomial Factor & Expand tool
- Pick a mode — Factor turns standard form into factors; Expand multiplies factored form back out.
- Type the polynomial with ^ for powers:
x^2+5x+6. Spaces don't matter;2xand2*xmean the same thing. - Press Enter and read the steps — each one names the technique used, so you can redo it by hand on homework.
Factoring by hand, the way the tool does it
Always work in this order. First pull out the greatest common factor: 6x^2+9x = 3x(2x+3). Then look for special patterns — difference of squares x^2-4 = (x-2)(x+2), perfect square trinomials x^2+6x+9 = (x+3)^2. For a general quadratic ax^2+bx+c, hunt integer pairs with a₁·a₂ = a, b₁·b₂ = c, a₁b₂+a₂b₁ = b — that's the systematic version of "what multiplies to c and adds to b". For cubics and up, the rational root theorem lists every possible rational root, and each one you find divides out a linear factor.
When a polynomial won't factor
x^2+x+1 is prime over the integers: no whole-number factor pair fits. That's a real answer, not a failure — its discriminant (1−4 = −3) is negative, so its roots are complex. If your homework asks for those, use the quadratic formula; this tool factors over ℤ, the integers, which is what "factor completely" usually means through Algebra 2.
- How do I type a polynomial?
- Type it the way you'd write it in a text message: x^2+5x+6 for x² + 5x + 6. Spaces are fine, multiplication can be implicit (2x, 3(x+2)), and parentheses group terms. In Expand mode, (x+2)(x+3) and (x+1)^2 work too.
- What does 'prime over the integers' mean?
- It means the polynomial can't be broken into factors with whole-number coefficients — like x^2+x+1, which has no integer factor pair that fits. It may still factor over the reals or complex numbers (the quadratic formula would find those), but not with integers.
- Why won't it factor my decimal polynomial?
- Factoring here means finding factors with integer coefficients, so the input needs integer coefficients too. Clear the decimals first (multiply 0.5x^2+x by 2 to get x^2+2x), or switch to Expand mode, which handles decimals fine.
- How does the factoring actually work?
- In order: it strips the greatest common factor of the coefficients, then any common power of x, then searches integer factor pairs for quadratics — exactly the (x+m)(x+n) guessing you'd do by hand, but exhaustive. Cubics and higher use the rational root theorem with exact integer arithmetic, and quartics with no linear factor are tried as a quadratic times a quadratic.
- What's the difference between Factor and Expand?
- Factor goes from standard form to factored form: x^2+5x+6 becomes (x+2)(x+3). Expand goes the other way: (x+2)(x+3) becomes x^2+5x+6. They're inverse operations — factoring then expanding (or vice versa) always returns the original.
- Is my input sent anywhere?
- No. The parser and all the algebra run in your browser with JavaScript. Nothing is uploaded, stored, or tracked.
Kept alive by readers like you
Every tool in the codex is free. If they save you time, a small donation inscribes new pages.
DonateNeed help with this tool?
Found a bug, or have a suggestion for the codex? Write to us — a real human reads every message.
[email protected]More from the codex
Polynomial Factor & Expand
Factor polynomials with steps, or expand products.
Quadratic Solver
Solve ax²+bx+c = 0 with the quadratic formula, steps shown.
Open tool → LiveScientific Calculator
Full scientific calculator for quick computations.
Open tool → LiveSystem of Equations Solver
Solve linear systems step by step.
Open tool → LiveSlope Calculator
Slope, intercepts, and line equations from two points.
Open tool → LivePrime Factorization
Break any number into its prime factors.
Open tool → LiveNumber Sequence Solver
Find the pattern and the next terms of any sequence.
Open tool → LiveStatistics Calculator
Mean, median, mode, standard deviation and more.
Open tool →